Digg StumbleUpon LinkedIn YouTube Flickr Facebook Twitter RSS Reset
Comments Off on Java: Créer un document DOM à l’exterieur d’une chaîne

Java: Créer un document DOM à l’exterieur d’une chaîne

Download /***** Code de MesExemples.com *******/   import java.io.StringReader;import javax.xml.parsers.DocumentBuilder;import javax.xml.parsers.DocumentBuilderFactory;import javax.xml.parsers.ParserConfigurationException;import org.w3c.dom.Document;import org.xml.sax.InputSource;public class Main {  public static Document load(String xml) throws Exception {    DocumentBuilder builder = getDocumentBuilder();             Document document = builder.parse(new InputSource(new StringReader(xml)));    return document;}  public static DocumentBuilder getDocumentBuilder() throws ParserConfigurationException {    DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance();    builderFactory.setNamespaceAware(true);    DocumentBuilder builder = builderFactory.newDocumentBuilder();    return builder;}}          ...
Comments Off on Java xerces: Exemple d’utilisation de DOM pour analyser un document XML

Java xerces: Exemple d’utilisation de DOM pour analyser un document XML

Download /***** Code de MesExemples.com *******/  import java.io.*;import org.w3c.dom.Document;import org.w3c.dom.DocumentType;import org.w3c.dom.NamedNodeMap;import org.w3c.dom.Node;import org.w3c.dom.NodeList;import org.apache.xerces.parsers.DOMParser;public class MainClass {  public void processNode(Node node, String spacer) throws IOException {    if (node == null)      return;    switch (node.getNodeType()) {    case Node.ELEMENT_NODE:      String name = node.getNodeName();      System.out.print(spacer + "<" + name);      NamedNodeMap nnm = node.getAttributes();      for (int i = 0; i < nnm.getLength(); i++) {        Node current = nnm.item(i);        System.out.print(" " + current.getNodeName() + "= " + current.getNodeValue());      }      System.out.print(">");      NodeList nl = node.getChildNodes();      if (nl != null) {        for (int i = 0; i < nl.getLength(); i++) {          processNode(nl.item(i), "");        }      }      System.out.println(spacer + "</" + name + ">");      break;    case Node.TEXT_NODE:      System.out.print(node.getNodeValue());      break;    case Node.CDATA_SECTION_NODE:      System.out.print("" + node.getNodeValue() + "");      break;    case Node.ENTITY_REFERENCE_NODE:      System.out.print("&#038;" + node.getNodeName() + ";");      break;    case Node.ENTITY_NODE:      System.out.print("<ENTITY: " + node.getNodeName() + "> </" + node.getNodeName() + "/>");      break;    case Node.DOCUMENT_NODE:      NodeList nodes = node.getChildNodes();      if (nodes != null) {        for (int i = 0; i < nodes.getLength(); i++) {          processNode(nodes.item(i), "");        }      }      break;    case Node.DOCUMENT_TYPE_NODE:      DocumentType docType = (DocumentType) node;      System.out.print("<!DOCTYPE " + docType.getName());      if (docType.getPublicId() != null) {        System.out.print(" PUBLIC " + docType.getPublicId() + " ");      } else {        System.out.print(" SYSTEM ");      }      System.out.println(" " + docType.getSystemId() + ">");      break;    default:      break;    }  }  public static void main(String[] args) {    String uri = "test.xml";    try {      bookDescDOM bd = new bookDescDOM();      System.out.println("Parsing XML File: " + uri + "...
Comments Off on Java: Construire un document XML

Java: Construire un document XML

Download /***** Code de MesExemples.com *******/ /** * @(#)BuiltXMLDocument.java * * * @author *sakoba(java.mesexemples.com) @version 1.00 2013/7/4 */     import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory;   import...
Comments Off on Java: Un utilitaire pour le déboguer XmlStreamReader

Java: Un utilitaire pour le déboguer XmlStreamReader

Download /***** Code de MesExemples.com *******/  /*   Copyright 2004 The Apache Software Foundation * *   Licensed under the Apache License, Version 2.0 (the "License"); *   you may not use this file except in compliance with the License. *   You may obtain a copy of the License at * *       http://www.apache.org/licenses/LICENSE-2.0 * *   Unless required by applicable law or agreed to in writing, software *   distributed under the License is distributed on an "AS IS" BASIS, *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. *   See the License for the specific language governing permissions and *  limitations under the License. */// Revised from xml beansimport javax.xml.stream.XMLStreamReader;/** * debugging utilities for XmlStreamReader */public final class XmlStreamUtils {  public static String printEvent(XMLStreamReader xmlr) {    StringBuffer b = new StringBuffer();    b.append("EVENT:[" + xmlr.getLocation().getLineNumber() + "]["        + xmlr.getLocation().getColumnNumber() + "] ");    b.append(getName(xmlr.getEventType()));    b.append(" [");    switch (xmlr.getEventType()) {    case XMLStreamReader.START_ELEMENT:      b.append("<");      printName(xmlr, b);      for (int i = 0; i < xmlr.getNamespaceCount(); i++) {        b.append(" ");        String n = xmlr.getNamespacePrefix(i);        if ("xmlns".equals(n)) {          b.append("xmlns="" + xmlr.getNamespaceURI(i) + """);        } else {          b.append("xmlns:" + n);          b.append("="");          b.append(xmlr.getNamespaceURI(i));          b.append(""");        }      }      for (int i = 0; i < xmlr.getAttributeCount(); i++) {        b.append(" ");        printName(xmlr.getAttributePrefix(i), xmlr.getAttributeNamespace(i), xmlr            .getAttributeLocalName(i), b);        b.append("="");        b.append(xmlr.getAttributeValue(i));        b.append(""");      }      b.append(">");      break;    case XMLStreamReader.END_ELEMENT:      b.append("</");      printName(xmlr, b);      for (int i = 0; i < xmlr.getNamespaceCount(); i++) {        b.append(" ");        String n = xmlr.getNamespacePrefix(i);        if ("xmlns".equals(n)) {          b.append("xmlns="" + xmlr.getNamespaceURI(i) + """);        } else {          b.append("xmlns:" + n);          b.append("="");          b.append(xmlr.getNamespaceURI(i));          b.append(""");        }      }      b.append(">");      break;    case XMLStreamReader.SPACE:    case XMLStreamReader.CHARACTERS:      // b.append(xmlr.getText());      int start = xmlr.getTextStart();      int length = xmlr.getTextLength();      b.append(new String(xmlr.getTextCharacters(), start, length));      break;    case XMLStreamReader.PROCESSING_INSTRUCTION:      String target = xmlr.getPITarget();      if (target == null)        target = "";      String data = xmlr.getPIData();      if (data == null)        data = "";      b.append("<?");      b.append(target + " " + data);      b.append("?>");      break;    case XMLStreamReader.CDATA:      b.append("<![CDATA[");      if (xmlr.hasText())        b.append(xmlr.getText());      b.append("]]&gt;");      break;    case XMLStreamReader.COMMENT:      b.append("<!--");      if (xmlr.hasText())        b.append(xmlr.getText());      b.append("-->");      break;    case XMLStreamReader.ENTITY_REFERENCE:      b.append(xmlr.getLocalName() + "=");      if (xmlr.hasText())        b.append("[" + xmlr.getText() + "]");      break;    case XMLStreamReader.START_DOCUMENT:      b.append("<?xml");      b.append(" version='" + xmlr.getVersion() + "'");      b.append(" encoding='" + xmlr.getCharacterEncodingScheme() + "'");      if (xmlr.isStandalone())        b.append(" standalone='yes'");      else        b.append(" standalone='no'");      b.append("?>");      break;    }    b.append("]");    return b.toString();  }  private static void printName(String prefix, String uri, String localName, StringBuffer b) {    if (uri != null &#038;& !("".equals(uri)))      b.append("['" + uri + "']:");    if (prefix != null &#038;& !("".equals(prefix)))      b.append(prefix + ":");    if (localName != null)      b.append(localName);  }  private static void printName(XMLStreamReader xmlr, StringBuffer b) {    if (xmlr.hasName()) {      String prefix = xmlr.getPrefix();      String uri = xmlr.getNamespaceURI();      String localName = xmlr.getLocalName();      printName(prefix, uri, localName, b);    }  }  public static String getName(int eventType) {    switch (eventType) {    case XMLStreamReader.START_ELEMENT:      return "START_ELEMENT";    case XMLStreamReader.END_ELEMENT:      return "END_ELEMENT";    case XMLStreamReader.PROCESSING_INSTRUCTION:      return "PROCESSING_INSTRUCTION";    case XMLStreamReader.CHARACTERS:      return "CHARACTERS";    case XMLStreamReader.SPACE:      return "SPACE";    case XMLStreamReader.COMMENT:      return "COMMENT";    case XMLStreamReader.START_DOCUMENT:      return "START_DOCUMENT";    case XMLStreamReader.END_DOCUMENT:      return "END_DOCUMENT";    case XMLStreamReader.ENTITY_REFERENCE:      return "ENTITY_REFERENCE";    case XMLStreamReader.ATTRIBUTE:      return "ATTRIBUTE";    case XMLStreamReader.DTD:      return "DTD";    case XMLStreamReader.CDATA:      return "CDATA";    case XMLStreamReader.NAMESPACE:      return "NAMESPACE";    }    return "UNKNOWN_EVENT_TYPE";  }  public static int getType(String val) {    if (val.equals("START_ELEMENT"))      return XMLStreamReader.START_ELEMENT;    if (val.equals("SPACE"))      return XMLStreamReader.SPACE;    if (val.equals("END_ELEMENT"))      return XMLStreamReader.END_ELEMENT;    if (val.equals("PROCESSING_INSTRUCTION"))      return XMLStreamReader.PROCESSING_INSTRUCTION;    if (val.equals("CHARACTERS"))      return XMLStreamReader.CHARACTERS;    if (val.equals("COMMENT"))      return XMLStreamReader.COMMENT;    if (val.equals("START_DOCUMENT"))      return XMLStreamReader.START_DOCUMENT;    if (val.equals("END_DOCUMENT"))      return XMLStreamReader.END_DOCUMENT;    if (val.equals("ATTRIBUTE"))      return XMLStreamReader.ATTRIBUTE;    if (val.equals("DTD"))      return XMLStreamReader.DTD;    if (val.equals("CDATA"))      return XMLStreamReader.CDATA;    if (val.equals("NAMESPACE"))      return XMLStreamReader.NAMESPACE;    return -1;  }}      ...
Comments Off on Java XML: Exemple d’utilisation de XMLInputFactory

Java XML: Exemple d’utilisation de XMLInputFactory

Download /***** Code de MesExemples.com *******/  import java.io.FileInputStream;import javax.xml.stream.XMLEventReader;import javax.xml.stream.XMLEventWriter;import javax.xml.stream.XMLInputFactory;import javax.xml.stream.XMLOutputFactory;import javax.xml.stream.XMLResolver;import javax.xml.stream.XMLStreamException;public class...
Comments Off on Java XML: Lire un fichier XML avec InputStream*

Java XML: Lire un fichier XML avec InputStream*

Download /***** Code de MesExemples.com *******/   /** * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information...
Comments Off on Java: Utiliser la classe ‘QName’ pour obtenir un attribut

Java: Utiliser la classe ‘QName’ pour obtenir un attribut

Download /***** Code de MesExemples.com *******/ /** * @(#)ExempleQName_Attribut.java * * * @author *sakoba(java.mesexemples.com) @version 1.00 2013/7/4 */   import javax.xml.namespace.QName;   import org.w3c.dom.Element; import...
Comments Off on Java: Retourner un document complet

Java: Retourner un document complet

Download /***** Code de MesExemples.com *******/  import java.util.Queue;import java.util.concurrent.ConcurrentLinkedQueue;import javax.xml.parsers.DocumentBuilder;import javax.xml.parsers.DocumentBuilderFactory;import javax.xml.parsers.ParserConfigurationException;import org.w3c.dom.Document;public class Utils {  private static DocumentBuilderFactory dbf;  private static Queue builders = new ConcurrentLinkedQueue();  public static DocumentBuilder getBuilder() throws ParserConfigurationException {    DocumentBuilder builder = (DocumentBuilder) builders.poll();    if (builder == null) {      if (dbf == null) {        dbf = DocumentBuilderFactory.newInstance();        dbf.setNamespaceAware(true);      }      builder = dbf.newDocumentBuilder();    }    return builder;  }  public static void releaseBuilder(DocumentBuilder builder) {    builders.add(builder);  }  /**   * Return a new document, ready to populate.   *    * @return   * @throws ParserConfigurationException   */  public static Document newDocument() throws ParserConfigurationException {    DocumentBuilder builder = getBuilder();    Document doc = builder.newDocument();    releaseBuilder(builder);    return doc;  }}      ...
Comments Off on Java XML: Construire un arbre à partir des événements SAX

Java XML: Construire un arbre à partir des événements SAX

Download /***** Code de MesExemples.com *******/  /*Java Swing, 2nd EditionBy Marc Loy, Robert Eckstein, Dave Wood, James Elliott, Brian ColeISBN: 0-596-00408-7Publisher: O'Reilly */// VSX.java//A simple XML parser that builds a tree from SAX events. //import java.io.File;import javax.swing.JFrame;import javax.swing.JScrollPane;import javax.swing.JTree;import javax.swing.tree.DefaultMutableTreeNode;import javax.swing.tree.DefaultTreeModel;import javax.swing.tree.TreeModel;import javax.xml.parsers.SAXParser;import javax.xml.parsers.SAXParserFactory;import org.xml.sax.Attributes;import org.xml.sax.SAXException;import org.xml.sax.helpers.DefaultHandler;public class VSX {  public TreeModel parse(String filename) {    SAXParserFactory factory = SAXParserFactory.newInstance();    XMLTreeHandler handler = new XMLTreeHandler();    try {      // Parse the input.      SAXParser saxParser = factory.newSAXParser();      saxParser.parse(new File(filename), handler);    } catch (Exception e) {      System.err.println("File Read Error: " + e);      e.printStackTrace();      return new DefaultTreeModel(new DefaultMutableTreeNode("error"));    }    return new DefaultTreeModel(handler.getRoot());  }  public static class XMLTreeHandler extends DefaultHandler {    private DefaultMutableTreeNode root, currentNode;    public DefaultMutableTreeNode getRoot() {      return root;    }    // SAX Parser Handler methods...    public void startElement(String namespaceURI, String lName,        String qName, Attributes attrs) throws SAXException {      String eName = lName; // Element name      if ("".equals(eName))        eName = qName;      Tag t = new Tag(eName, attrs);      DefaultMutableTreeNode newNode = new DefaultMutableTreeNode(t);      if (currentNode == null) {        root = newNode;      } else {        // Must not be the root node...        currentNode.add(newNode);      }      currentNode = newNode;    }    public void endElement(String namespaceURI, String sName, String qName)        throws SAXException {      currentNode = (DefaultMutableTreeNode) currentNode.getParent();    }    public void characters(char buf[], int offset, int len)        throws SAXException {      String s = new String(buf, offset, len).trim();      ((Tag) currentNode.getUserObject()).addData(s);    }  }  public static class Tag {    private String name;    private String data;    private Attributes attr;    public Tag(String n, Attributes a) {      name = n;      attr = a;    }    public String getName() {      return name;    }    public Attributes getAttributes() {      return attr;    }    public void setData(String d) {      data = d;    }    public String getData() {      return data;    }    public void addData(String d) {      if (data == null) {        setData(d);      } else {        data += d;      }    }    public String getAttributesAsString() {      StringBuffer buf = new StringBuffer(256);      for (int i = 0; i < attr.getLength(); i++) {        buf.append(attr.getQName(i));        buf.append("="");        buf.append(attr.getValue(i));        buf.append(""");      }      return buf.toString();    }    public String toString() {      String a = getAttributesAsString();      return name + ": " + a + (data == null ? "" : " (" + data + ")");    }  }  public static void main(String args[]) {    JFrame frame = new JFrame("VSX Test");    VSX parser = new VSX();    JTree tree = new JTree(parser.parse("build.xml"));    frame.getContentPane().add(new JScrollPane(tree));    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);    frame.setSize(300, 400);    frame.setVisible(true);  }}                       ...
Comments Off on Java: Créer une interface graphique basée sur un document XML*

Java: Créer une interface graphique basée sur un document XML*

Download /***** Code de MesExemples.com *******/ import java.awt.BorderLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.io.FileInputStream;import javax.swing.JButton;import javax.swing.JComponent;import javax.swing.JFrame;import javax.swing.JPanel;import org.xml.sax.Attributes;import org.xml.sax.InputSource;import org.xml.sax.helpers.DefaultHandler;import com.sun.org.apache.xerces.internal.parsers.SAXParser;public class SimpleApp3 implements ActionListener {  public static void main(String args[]) {    JFrame frame = new JFrame("SimpleApp Demo");    frame.setSize(400, 400);    frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);    new SimpleApp3(frame);  }  public SimpleApp3(JFrame frame) {    frame.getContentPane().setLayout(new BorderLayout());    XMLComponent xmlComponent = new XMLComponent();    frame.getContentPane().add("Center", xmlComponent.build("ui.xml"));    frame.setVisible(true);  }  public void actionPerformed(ActionEvent ev) {    System.out.println("You clicked " + ev.getActionCommand());  }}class XMLComponent extends DefaultHandler {  private boolean containerActive = false;  private JPanel primaryContainer = new JPanel();  private SAXParser parser = new SAXParser();  public XMLComponent() {    super();  }  public JComponent build(String xmlDocument) {    parser.setContentHandler(this);    try {      parser.parse(new InputSource(new FileInputStream(xmlDocument)));    } catch (Exception ex) {      System.out.println(ex);    }    return primaryContainer;  }  public void startElement(String namespaceURI, String name, String qName, Attributes atts) {    if (name.equals("button"))      primaryContainer.add(new JButton(atts.getValue("label")));  }}// ui.xml/* * <?xml version="1.0"?> <ui> <button label="XML"/> <button label="is"/> <button * label="great"/> </ui> *  *  */                   ...