XML est l’un des formats d’échange de données le plus utilisé sur le Web. Avec la prolifération des smartphones, l'analyse et l'affichage de documents XML sur des appareils mobiles sont devenus une exigence courante. Dans cet article, je vais vous apprendre à analyser un document XML sur BlackBerry et à afficher un document XML sur BlackBerry..
Tout d’abord, nous devons installer BlackBerry Java Plug-in pour Eclipse, qui peut être installé avec l’une des deux méthodes suivantes..
Nous allons discuter de chacune de ces méthodes dans cette section. Pour installer à partir du site de mise à jour, sélectionnez Aide> Installer un nouveau logiciel dans Eclipse Java IDE. Dans la fenêtre d'installation, cliquez sur Ajouter sous Logiciel disponible. dans le Ajouter un référentiel fenêtre, spécifiez le prénom comme Site de mise à jour du plug-in BlackBerry Java et l'emplacement comme http://www.blackberry.com/go/eclipseUpdate/3.6/java comme indiqué dans l'illustration suivante.
Le site Web de mise à jour est ajouté à Logiciel disponible et le logiciel disponible pour le site Web est répertorié, y compris les différentes versions. Sélectionner Catégorie de plug-in BlackBerry Java version 7.0.0.28. Cliquer sur Suivant.
dans le Détails d'installation section, la liste de BlackBerry Java SD 7.0.0.28 est répertoriée. Cliquer sur Suivant.
Acceptez le contrat de licence et cliquez sur terminer. le Installation du logiciel dialogue s’affiche. Une fois le logiciel installé, une boîte de dialogue indiquant que la condition de redémarrage s’affiche. Cliquer sur Redémarrer maintenant. Le plug-in BlackBerry Java Plug-in pour Eclipse est installé.
Dans la seconde méthode, cliquez sur le bouton BlackBerry_JDE_PluginFull_1.5.0_helios.exe ou un fichier exe de version antérieure. L'assistant BlackBerry Java Plug-in pour Eclipse est lancé. Cliquer sur Suivant dans introduction.
Acceptez les termes de la licence et cliquez sur Suivant. Dans Choisissez le dossier d'installation spécifiez le répertoire dans lequel installer le plug-in, y compris l'IDE Eclipse. Cliquer sur Suivant.
Dans Select Des tâches supplémentaires sélectionnez les tâches de raccourci par défaut et cliquez sur Suivant. Dans Résumé de pré-installation cliquer sur Installer.
Le plug-in BlackBerry Java Plug-in pour Eclipse est installé. Cliquer sur Terminé. Ensuite, nous devons ouvrir la perspective BlackBerry. Sélectionner Fenêtre> Perspective ouverte> Autre. Dans Perspective ouverte, sélectionner Développement d'applications BlackBerry et cliquez sur D'accord.
Dans cette section, nous allons créer un projet BlackBerry dans Eclipse en utilisant les fonctionnalités de perspective de BlackBerry Application Development. Sélectionner Fichier> Nouveau. Dans Nouveau sélection de la fenêtre BlackBerry> Projet BlackBerry et cliquez sur Suivant.
dans le Nouveau projet BlackBerry fenêtre, spécifiez nom du projet (AnalyseXML
par exemple). Sélectionner JRE comme BlackBerry JRE 7.0.0. Cliquer sur Suivant.
Dans Paramètres Java sélectionnez les paramètres de construction par défaut, qui incluent src
et res
dossiers pour le code source du projet et la poubelle
dossier pour la sortie. Cliquer sur Suivant.
dans le Modèles section, sélectionnez la Application BlackBerry modèle et cliquez sur Suivant.
dans le Application d'interface utilisateur fenêtre, spécifiez le Détails de la demande. Spécifiez un Nom du paquet (blackberry.xml
), Nom de la classe d'application (AnalyseXML
), Nom de la classe d'écran (Analyse_XML
) et un Titre de l'écran. Cliquer sur terminer.
Un projet BlackBerry est créé. Le projet BlackBerry comprend les éléments suivants
artefacts:
AnalyseXML
) qui étend la classe UiApplication.Analyse_XML
) qui étend la Écran principal
classe. BlackBerry_App_Descriptor.xml
. La structure de répertoires du projet BlackBerry est indiquée ci-dessous..
Les propriétés d’un projet BlackBerry sont spécifiées dans BlackBerry_App_Descriptor.xml
fichier, montré ci-dessous en mode graphique.
Les informations générales comprennent les champs de propriété / cases à cocher suivants.
Champ | La description | Valeur |
---|---|---|
Titre | Le titre de l'application | Analyser XML |
Version | La version de l'application | 1.0.0 |
Vendeur | Le nom du vendeur | Développeur BlackBerry |
Type d'application | "Application BlackBerry" pour une application BlackBerry | Application BlackBerry |
Application BlackBerry | Arguments d'exécution à l'application | |
Exécution automatique au démarrage | Cochez la case pour exécuter automatiquement l'application au démarrage | vrai |
Niveau de démarrage | La priorité de démarrage | 7 (par défaut) est la priorité la plus basse |
Ne pas afficher l'icône de l'application | Cochez la case pour ne pas afficher l'icône de l'application |
Le descripteur d’application peut également inclure des ressources locales et des icônes d’application. D'autres points d'entrée peuvent être utilisés pour exécuter une application en arrière-plan ou à l'avant-plan. le BlackBerry_App_Descriptor.xml
est énuméré ci-dessous.
Dans cette section, nous allons créer un écran pour l'application BlackBerry. Au minimum, un écran devrait avoir un titre. Un écran est un Écran principal
classe et fournit des fonctionnalités communes aux applications de périphériques RIM. Créez une classe qui étend la Écran principal
la classe et dans le constructeur de la classe définir le titre de l'écran en utilisant le setTitle
méthode. La classe d'écran Analyse_XML
est énuméré ci-dessous.
package blackberry.xml; importer net.rim.device.api.ui.container.MainScreen; / ** * Une classe qui étend la classe MainScreen, qui fournit le comportement * standard par défaut pour les applications d'interface graphique BlackBerry. * / public final class Parsing_XML étend MainScreen / ** * Crée un nouvel objet Parsing_XML * / public Parsing_XML () // Définit le titre affiché de l'écran setTitle ("Parsing XML");
dans le AnalyseXML
classe nous allons analyser un document XML. le catalogue.xml
le document a un catalogue pour un journal.
Septembre-octobre 2005 Création de pages de recherche Steve Muench Novembre - décembre 2010 Architecture d'entreprise agile Bob Rhubart
Copiez le document XML dans le res
dossier dans le src
dossier, ou directement dans le src
dossier. Ensuite, nous développerons le AnalyseXML
classe, qui étend la UiApplication
classe, la classe de base pour toutes les applications de périphérique fournissant une interface utilisateur. Créer une variable d'instance pour le Écran principal
. Créer un Chaîne
variable pour les valeurs d'élément. Nous allons utiliser un Fil
analyser le document XML. Créer une variable d'instance pour la classe de thread.
Parsing_XML screen = new Parsing_XML (); Élément de chaîne; Connexion de connexion;
Dans le constructeur de la classe, définissez le titre de l'écran et ajoutez le Écran principal
écran sur la pile d'interface utilisateur pour le rendu. Créer un Fil
par exemple et commencer le fil avec le début()
méthode.
screen.setTitle ("Analyse de XML"); pushScreen (écran); connexion = nouvelle connexion (); connection.start ();
dans le principale
méthode, créer une instance du AnalyseXML
classe et invoquez le fil du dispatcher d’événement en utilisant le enterEventDispatcher
méthode.
Toutes les applications BlackBerry Framework UI contiennent un seul thread de distributeur d'événements. Une fois qu'un écran a été placé sur la pile d'affichage, toutes les modifications doivent être effectuées sur le thread de répartition d'événements ou sur un thread d'arrière-plan. Nous allons utiliser un thread d'arrière-plan Connection pour analyser le document XML catalogue.xml
.
ParsingXML theApp = new ParsingXML (); theApp.enterEventDispatcher ();
Créer un DocumentBuilderFactory
instance d'usine utilisant la méthode statique newInstance ()
créer un analyseur DOM à partir de, puis créer une arborescence DOM à partir du document XML.
DocumentBuilderFactory docBuilderFactory = DocumentBuilderFactory.newInstance ();
Créer un DocumentBuilder
instance de l'analyseur utilisant le nouveauDocumentBuilder
méthode pour analyser ultérieurement le document XML et créer un objet de document DOM.
DocumentBuilder docBuilder = docBuilderFactory.newDocumentBuilder ();
Définissez l’analyseur pour qu’il valide en utilisant la touche isValidating ()
méthode.
docBuilder.isValidating ();
Créé un Flux d'entrée
objet de la catalogue.xml
document. Inclure le '/' dans le catalogue.xml
chemin.
InputStream inputStream = getClass (). GetResourceAsStream ("/ catalog.xml");
Alternativement, le Flux d'entrée
peut être créé en utilisant un Chaîne
littéral pour le XML, et un ByteArrayInputStream
.
/ ** str = ""+""+" "; // convertit une chaîne en InputStream InputStream inputStream = new ByteArrayInputStream (str.getBytes ()); **"+" "+"Septembre-octobre 2005 "+"Création de pages de recherche "+"Steve Muench "+""+" "+"Novembre - décembre 2010 "+"Architecture d'entreprise agile "+"Bob Rhubart "+"
Ensuite, obtenir un DOM Document
objet de la Flux d'entrée
en utilisant le parse (InputStream)
méthode.
Document document = docBuilder.parse (inputStream);
Obtenir le Document
élément, qui est le noeud enfant du document XML, ainsi que l’élément racine, en utilisant le getDocumentElement ()
méthode. Normaliser le document XML en utilisant le normaliser()
méthode, qui supprime les nœuds de texte adjacents et vides.
document.getDocumentElement (). normalize ();
Nous allons sortir le
NodeList
des éléments de titre en utilisant le getElementsByTagName ()
méthode. NodeList list = document.getElementsByTagName ("titre");
Le premier nœud enfant d'un élément est le nœud de texte de l'élément. La valeur du texte dans un Texte
le noeud est obtenu en utilisant le getNodeValue ()
méthode. Itérer sur le NodeList
et obtenez les valeurs de nœud de texte pour les éléments de titre. Pour afficher d’abord les valeurs de titre à l’écran, nous devons obtenir le verrouillage d’événement à l’aide du bouton getEventLock ()
méthode.
synchronized (UiApplication.getEventLock ())
Le verrouillage d'événement est requis pour les problèmes de performances et d'accès simultané. Afficher les valeurs de titre à l’écran à l’aide des touches ajouter()
méthode.
screen.add (new RichTextField ("Title:" + element)); screen.add (new SeparatorField ());
Si vous utilisez le Chaîne
littéral pour le document XML, la sortie Chaîne
à l'écran.
screen.add (nouveau RichTextField (str));
Dans le message d’exception de sortie du bloc catch, le cas échéant.
screen.add (new RichTextField ("Erreur:" + e.toString ()));
le AnalyseXML.java
la classe est listée ci-dessous.
package blackberry.xml; import java.io.ByteArrayInputStream; importer java.io.InputStream; importer javax.microedition.io. *; import net.rim.device.api.ui. *; importer net.rim.device.api.ui.component. *; import net.rim.device.api.ui.container. *; import net.rim.device.api.system. *; import net.rim.device.api.xml.parsers. *; importer org.w3c.dom. *; import org.xml.sax. *; Classe publique ParsingXML étend UiApplication // créant une variable membre pour MainScreen Parsing_XML screen = new Parsing_XML (); // variable de chaîne pour stocker la valeur de l'élément de document XML / s Élément de chaîne; Connexion de connexion; public static void main (String arg []) ParsingXML theApp = new ParsingXML (); theApp.enterEventDispatcher (); public ParsingXML () screen.setTitle ("Parsing XML"); // paramètre title screen.add (new RichTextField ("Demande de titres de catalogue…")); screen.add (new SeparatorField ()); // Pousse un écran sur la pile d'interface utilisateur pour le rendu. pushScreen (écran); connexion = nouvelle connexion (); connection.start (); // classe privée Connection s étend Thread public Connection () super (); public void run () StreamConnection conn; String str = null; try DocumentBuilderFactory docBuilderFactory = DocumentBuilderFactory .newInstance (); DocumentBuilder docBuilder = docBuilderFactory .newDocumentBuilder (); docBuilder.isValidating (); InputStream inputStream = getClass (). GetResourceAsStream ("/ catalog.xml"); / ** str = ""+""+" "; // convertir une chaîne en InputStream InputStream inputStream = new ByteArrayInputStream (str.getBytes ()); ** / Document document = docBuilder.parse (inputStream); document.getDocumentElement (). normalize (); liste NodeList = document.getElementsByTagName ("title"); element = new String (); // la boucle "for" est utilisée pour analyser le document // XML et extraire tous les éléments et leur // valeur afin qu'ils puissent être affichés sur le périphérique pendant ( int i = 0; i < list.getLength(); i++) Node value = list.item(i).getChildNodes().item(0); element = value.getNodeValue(); synchronized (UiApplication.getEventLock()) screen.add(new RichTextField("Title : " + element)); screen.add(new SeparatorField()); // end for // screen.add(new RichTextField(str)); // end try // will catch any exception thrown by the XML parser catch (Exception e) screen.add(new RichTextField("Error : " + e.toString())); // end connection function // end connection class"+" "+"Septembre-octobre 2005 "+"Création de pages de recherche "+"Steve Muench "+""+" "+"Novembre - décembre 2010 "+"Architecture d'entreprise agile "+"Bob Rhubart "+"
Ensuite, nous allons courir le AnalyseXML
application dans Eclipse IDE. Clic droit sur AnalyseXML et sélectionnez Exécuter en tant que> BlackBerry Simulator.
BlackBerry Simulator est lancé. L'application est installée sur BlackBerry Simulator..
Cliquez sur l'application pour exécuter l'application.
Les titres de la catalogue.xml
le document est affiché.
La structure de répertoire du AnalyseXML
l'application est indiquée ci-dessous.
Si le document XML est créé à partir d'un Chaîne
littéralement, le XML peut aussi être affiché à l'écran.
Dans cet article, nous avons appris comment analyser XML sur un BlackBerry à l'aide de BlackBerry JDE. Nous avons utilisé BlackBerry Java Plug-in pour Eclipse pour ajouter la perspective BlackBerry Application Development à Eclipse IDE. Nous avons utilisé le Écran principal
classe pour créer un écran pour le terminal BlackBerry. Nous avons utilisé le UiApplication
classe pour créer un thread de répartition d'événements qu'une application d'infrastructure BlackBerry doit obligatoirement avoir. Nous avons créé un fil d’arrière-plan pour analyser un document XML et obtenu un verrou d’événement permettant d’afficher les titres de catalogue analysés sur l’écran du BlackBerry. Nous produisons également le document XML à l'écran.