Knoten-Attribute einer xsd-Datei in einem JTree auslesen

Status
Nicht offen für weitere Antworten.

Perplex

Mitglied
Hallo,

ich habe folgendes Problem:

ich habe ein JSplitPane in dem linkes eine geladene xsd-Datei als JTree angezeigt wird und rechts ein Panel in dem Eingabefelder erscheinen sollen wenn man die Knoten oder Blätter des JTrees anklickt!

Ein Knoten kann z.B. so aussehen:

<xsd:element name="description" type="xsd:string" minOccurs="0"/>

Nun will ich, daß das Attribu "name" ausgelesen wird und als JLabel im Panel erscheint. Dann soll im selbern Schritt das Attribut "type" ausgelesen werden um zu entscheiden wie das Eingabefeld aussehen soll, also z.B. ein Textfeld bei einem String oder eine Checkbox bei einem boolschen Wert. Dieses Eingabefeld soll rechts neben dem JLabel erscheinen. Mein Ansatz sieht jetzt so aus:

Code:
 public void valueChanged(TreeSelectionEvent event) {
    	
    	
    	TreePath tp = event.getPath();
    	
    	if (tp != null){
    		
    		System.out.println("  Selektiert: " + tp.toString());
    		
    		
    		
    		
    		JLabel lab1 = new JLabel(((JTree)event.getSource()).getSelectionPath().toString());
    		JTextField text = new JTextField("hallo", 10);
    		Box upper = new Box(BoxLayout.X_AXIS);
    		upper.add(lab1);
    		upper.add(text);
    		mainbox.add(upper);
    		
    		
    		
    	} else {
    		
    		System.out.println("  Kein Element selektiert");
    		
    	}
    }

Aber das führt leider nicht zum gewünschten Ergebnis!
Wäre dankbar wenn Jemand einen Vorschlag hat wie man Attribute in einem JTree auslesen kann!
 
R

Roar

Gast
ich hoffe du speicherst keine strings in deinem tree, sondern dom Elements. wenn nicht stell das um und implementiere einen entsprechenden renderer.
dann kannst du in der valueChanged dein selektiertes object in ein Element parsen, die attribute mittels DOM auslesen. ein paar if abfragen sollten den rest machen
 

Perplex

Mitglied
Ne, sind DOM Elements! Aber ich hab keine Ahnung von den Renderer-Sachen, hab mich ja vor kurzen erst in diese JTree-Sachen eingearbeitet! Vielleicht hast Du'n Code-Beispiel wie Du das gemeint hast? Danke übrigens für Deine Antwort!
 
R

Roar

Gast
Code:
tree.setRenderer(new XMLDocumentTreeRenderer());

...

class XMLDocumentTreeRenderer extends DefaultTreeRenderer {

	public Component getTreeCellRendererComponent(JTree tree, Object value, boolean sel,
			boolean expanded, boolean leaf, int row, boolean hasFocus) {
		super.getTreeCellRendererComponent(tree, value, sel, expanded, leaf, row, hasFocus);
		if(value instanceof Element) {
			setText(((Element) value).getNodeName());
			setIcon(buntesBildchen);
		]
		return this;
	}
}

...

	public void valueChanged(TreeSelectionEvent event) {
       
		DefaultMutableTreeNode node = (DefaultMutableTreeNode) ((JTree) event.getSource())
				.getLastSelectedPathComponent();
		if(node == null)
			return;

		Object user = node.getUserObject();
		if(user instanceof Element) {
			Element e = (Element) user;
			String name = e.getAttribute("name");
			String type = e.getAttribute("type");
			JLabel lab = new JLabel(name);
			irgendwohin.add(lab);
			JComponent comp = null;
			if(type.equals("xsd:string")) {
				comp = new JTextField();
			} else if(type.equals("xsd:boolean")) {
				comp = new JCheckBox();
			}
			irgendwoAnders.add(comp);
		}
	}

so ungefähr?
 

Perplex

Mitglied
Sieht super aus!! Ganz herzlichen Dank! Aber einige Sachen klappen so nicht! In bin noch am rumprobieren!
 

Perplex

Mitglied
Hab's jetzt so:
Code:
 public void valueChanged (TreeSelectionEvent event){
    	
    	DefaultMutableTreeNode node = (DefaultMutableTreeNode) ((JTree) event.getSource()) 
        .getLastSelectedPathComponent(); 
        
    	if(node == null) 
            return; 
        
    	Object user = node.getUserObject(); 
    	 if(user instanceof Element){
    	 	
    	 	Element e = (Element) user; 
    	 	//AttributeSet name =  e.getAttributes(); 
    	 	String name = (String) ((AttributeSet) e).getAttribute("name");
    	 	String type = (String) ((AttributeSet) e).getAttribute("type"); 
    	 	JLabel lab = new JLabel(name); 
    	 	Box upper = new Box(BoxLayout.X_AXIS);
    	 	upper.add(lab);
    	 	JComponent comp = null; 
    	 	
    	 	if(type.equals("xsd:element")){
    	 		
    	 		comp = new JTextField("hallo",20); 
    	 		upper.add(comp);
    	 		upper.add(lab);
    	 		mainbox.add(upper);
    	 	
    	 	}else if(type.equals("xsd:attribute")) {
    	 		
    	 		comp = new JCheckBox(); 
    	 		upper.add(comp);
    	 		upper.add(lab);
    	 		mainbox.add(upper);
    	 	}
    
    	 }
    }

Aber irgendwie klappt's nicht! Beim Anklicken der Knoten passiert gar nichts! Ich füge das Label und das Textfeld( oder Checkbox) in eine Box mit x-Ausrichtung und dann diese Box in eine andere mit y-Ausrichtung(mainbox). Hast Du ne Idee wo der Fehler ist? Vielleicht die umständlichen Cast-Ausdrücke? So wie Du das da hattest ging's jedenfalls nicht!
 

Perplex

Mitglied
Also es ist so, daß die Zeile
Code:
String name = (String) ((AttributeSet) e).getAttribute("name");
immer den kompletten Knoten-Inhalt ausgibt, völlig egal, was man in die Argument-Klammern von getAttribute() schreibt! Ich möchte ja, daß z.B. bei dem Attribut "name" einfach nur "name" als JLabel neben dem Eingabefeld erscheint und nicht z.B: "name=topic" . Die Zeilen
Code:
String name = (String) ((AttributeSet) e).getAttribute("name");
und
Code:
String type = (String) ((AttributeSet) e).getAttribute("type");
liefern übrignes genau das selbe, nämlich eben den kompletten Knoten-Inhalt! Aber selbst das klappt nicht, weil das Panel bei Anklicken der Tree-Elemente gar nichts anzeigt! Ich bekomme auch eine ClassCastException in der Zeile
Code:
	Element e = (Element) user;
Hast Du ne Idee was man da machen könnte?
 

Perplex

Mitglied
Ich hab's jetzt so:
Code:
Object user = node.getUserObject(); 
    	// if(user instanceof Element){
    	 System.out.println(user);	
    	 	Object e =  user; 
    	 	//AttributeSet name =  e.getAttributes(); 
    	 	String name = (String) ((AttributeSet) e).getAttribute("name");
    	 	System.out.println(name);
    	 	String type = (String) ((AttributeSet) e).getAttribute("type"); 
    	 	//System.out.println(type);
    	 	JLabel lab = new JLabel(name); 
    	 	Box upper = new Box(BoxLayout.X_AXIS);
    	 	upper.add(lab);
    	 	JComponent comp = null;
Dann ist zwar die Exception in der Zeile
Code:
Element e = (Element) user;
verschwunden, aber dann dafür wieder ne andere ClassCastException in der Zeile
Code:
String name = (String) ((AttributeSet) e).getAttribute("name");
Ich glaub, ich hab jetzt das totale Casting-Chaos!!! :)
 
R

Roar

Gast
hää?? wat soll denn das? ich ging davon aus dass du die w3c dom api verwendest. was is das fürn quatsch mti attribute sets?
 

Perplex

Mitglied
Das weiß ich auch nicht! Ich arbeite mit eclipse und das wurde mir als mögliche Fehlerbehebungs-Maßnahme angezeigt! Jedenfalls so wie Du's mir aufgeschrieben hattest, ging's nicht! Jedenfalls liefert das den Inhalt des Knotens! Aber der Rest klappt trotzdem nicht, das Panel bleibt immer leer! Hast Du keine Idde, wie man das richtig casten könnte?
 

Perplex

Mitglied
Hier ist der komplette Code! Vielleicht kannst Du's mal bei Dir laufen lassen:
Code:
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.File;

import javax.swing.Box;
import javax.swing.BoxLayout;
import javax.swing.JCheckBox;
import javax.swing.JComponent;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JSplitPane;
import javax.swing.JTextField;
import javax.swing.JTree;
import javax.swing.event.TreeSelectionEvent;
import javax.swing.event.TreeSelectionListener;
import javax.swing.text.AttributeSet;
import javax.swing.text.Element;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.DefaultTreeModel;
import javax.swing.tree.DefaultTreeSelectionModel;
import javax.swing.tree.TreeSelectionModel;

import org.apache.xerces.parsers.DOMParser;
import org.w3c.dom.Document;
import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;

/*
 * Created on 15.07.2005
 *
 * TODO To change the template for this generated file go to
 * Window - Preferences - Java - Code Style - Code Templates
 */

/**
 * @author Manuel
 *
 * TODO To change the template for this generated type comment go to
 * Window - Preferences - Java - Code Style - Code Templates
 */
public class Formular extends JFrame implements ActionListener, TreeSelectionListener{
    
    
    private static DefaultMutableTreeNode treeNode;
    private Box mainbox;
    
    private static JPanel contentPane = new JPanel();
    private static DefaultMutableTreeNode treeRoot = new DefaultMutableTreeNode("Click File -> New/Load");
    private static DefaultTreeModel model = new DefaultTreeModel(treeRoot);
    private static JTree tree = new JTree(model);
    
    private static JSplitPane splitPane;
    private static Node node;
    
    private static JPanel panel = new JPanel();
    
    private static JMenuBar menuBar = new JMenuBar();
    private JMenuItem makeNew = new JMenuItem ("New");
    private JMenuItem load = new JMenuItem ("Load");
    private JMenuItem save = new JMenuItem ("Save");
    private JMenuItem exit = new JMenuItem ("Exit");
    private JMenu file = new JMenu ("File");
    private File datei;
    
    
    public Formular() {
        
      setContentPane(contentPane);
      setJMenuBar(menuBar);
      setTitle( "Formular-Plugin" );
      setBackground( Color.blue );
      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    
      TreeSelectionModel tsm = new DefaultTreeSelectionModel();
      tsm.setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);   //Einfachselektion aktivieren
      tree.setSelectionModel(tsm);
      tree.setCellRenderer(new XMLDocumentTreeRenderer()); 
      mainbox = new Box(BoxLayout.Y_AXIS);
      panel.add(mainbox);
      
      load.setToolTipText("loading a new file");
      
      MouseListener ml = new MouseAdapter() {
      	public void mousePressed(MouseEvent e) {
      		//  int selRow = tree.getRowForLocation(e.getX(), e.getY());
      		//   TreePath selPath = tree.getPathForLocation(e.getX(), e.getY());
      		// if(selRow != -1) {
      		if(e.getClickCount() == 1) {
      			System.out.println("1 klicked");
      		}
      		else if(e.getClickCount() == 2) {
      			System.out.println("2 klicked");
      			
      			
      			//}
      		}
      	}
      };
      tree.addMouseListener(ml);
      
      
      
      
      
      
      
      tree.addTreeSelectionListener(this);
      
      
      
      
      
      splitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT);
      
      file.add(makeNew);
      file.add(load);
      file.add(save);
      file.add(exit);
      menuBar.add(file);
      
      exit.addActionListener(this);
      makeNew.addActionListener(this);
      save.addActionListener(this);
      load.addActionListener(this);
      
      try {
      	
      	JFrame frame = new JFrame ("Formular-Plugin");
      	frame.setContentPane(contentPane);
      	frame.setJMenuBar(menuBar);
      	frame.addWindowListener(new WindowAdapter(){
      		public void windowClosing (WindowEvent we){
      			System.exit(0);
      		}});
      	frame.getContentPane().setLayout(new FlowLayout());
      	frame.getContentPane().add(splitPane);
      	splitPane.setLeftComponent(new JScrollPane(tree));
      	splitPane.setRightComponent(new JScrollPane(panel));
      	//contentPane.setFocusable(false);
      	splitPane.setDividerLocation(350);
      	splitPane.setPreferredSize(new Dimension(685, 510));
      	
      	frame.pack();
      	frame.setSize(700, 600);
      	frame.setLocation(100, 100);
      	frame.setVisible(true);
      	
      } catch (Exception e){
      	
      }
      
    }
    
    
    public static void xmlToTree (Node node, DefaultMutableTreeNode treeNode){
        
        DefaultMutableTreeNode helperTreeNode;
        DefaultMutableTreeNode helperTreeNode2;
        DefaultMutableTreeNode helperTreeNode3;
        
        switch (node.getNodeType()){
        
        case Node.DOCUMENT_NODE:
            
            Document doc = (Document)node ;
            xmlToTree(doc.getDocumentElement() , treeNode);
           
            break;
            
        case Node.ELEMENT_NODE:
            
            String name = node.getNodeName();
            helperTreeNode = new DefaultMutableTreeNode(name);
            treeNode.add(helperTreeNode);
            
            NamedNodeMap attributes = node.getAttributes();
            
             for (int i = 0; i < attributes.getLength(); i++){
               
                Node current = attributes.item(i);
                helperTreeNode2 = new DefaultMutableTreeNode(current.getNodeName()+ "=" + "\"" + current.getNodeValue() + "\"" );
                helperTreeNode.add(helperTreeNode2);
                
            }
           
             NodeList children = node.getChildNodes();
             if (children.getLength() != 0){
                 
                 for (int i = 0; i < children.getLength(); i++){
                     
                     xmlToTree(children.item(i), helperTreeNode); //hier wird die Methode rekursiv aufgerufen
                 }
             }
           break;
        
        case Node.COMMENT_NODE:
        case Node.TEXT_NODE:
        case Node.CDATA_SECTION_NODE:
            
            String nodeValue = node.getNodeValue();
            nodeValue = nodeValue.trim();
            
            if (nodeValue.length() != 0){
                
                helperTreeNode3 = new DefaultMutableTreeNode(nodeValue);
                treeNode.add(helperTreeNode3);
            }
            
            break;
        
        
        }
    
       }
    
    public void performParsing(String uri){
        
        treeRoot = new DefaultMutableTreeNode("?xml version=\"1.0\" encoding=\"ISO-8859-1\"?");
        
        try {
            DOMParser parser = new DOMParser();
            parser.setFeature("http://xml.org/sax/features/validation", true);
            parser.setFeature("http://apache.org/xml/features/validation/schema", true);
            parser.parse(uri);
            Document doc = parser.getDocument();
            xmlToTree(doc, treeRoot);
        }
       
        catch (Exception e){
            System.out.println("Parsing Error: " + e.getMessage());
        }
        
        model = new DefaultTreeModel(treeRoot);
         tree = new JTree(model);
         tree.addTreeSelectionListener(this);
         tree.setRootVisible(true);
         TreeSelectionModel tsm = new DefaultTreeSelectionModel();
         tsm.setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);
         tree.setSelectionModel(tsm);
         splitPane.setLeftComponent(new JScrollPane(tree));
         splitPane.setDividerLocation(350);
         tree.setEditable(true);
    }
    
    

    
    
    
    public void loading (File datei){
        
        JFileChooser fileChooser = new JFileChooser();
        int returnVal = fileChooser.showOpenDialog(this);
        
        if(returnVal == JFileChooser.APPROVE_OPTION){
            
            datei = fileChooser.getSelectedFile();
            String pfad = datei.getAbsolutePath();
            
            //performParsing(pfad);
            int check = JOptionPane.showOptionDialog(tree, "File " + "\"" + datei.getName() + "\"" + " is not wellformed! Open anyway? "
                    , "File Exists", JOptionPane.DEFAULT_OPTION, JOptionPane.QUESTION_MESSAGE, null, new String[] {
                    "Yes", "Ignore", "Cancel"
                    },"");
            
            switch (check){
               
             case 0:  // Yes
                performParsing(pfad);
                break;
             case 1:  // Ignore
              return;
             default: // Cancel
              return;
            }
        
        
        
        }
    }
    
    
    
    
    
    
    
    
    
    public void actionPerformed(ActionEvent e) {
        
        
           if (e.getSource() == load)
               loading(datei);
        
    }

    
    public static void main(String [] args) {
        
        Formular formular = new Formular();
        
    
            
        }
    
    
    /* (non-Javadoc)
     * @see javax.swing.event.TreeSelectionListener#valueChanged(javax.swing.event.TreeSelectionEvent)
     */
  /*  public void valueChanged(TreeSelectionEvent event) {
    	
    	
    	TreePath tp = event.getPath();
    	
    	if (tp != null){
    		
    		System.out.println("  Selektiert: " + tp.toString());
    		
    		
    		
    		
    		JLabel lab1 = new JLabel(((JTree)event.getSource()).getSelectionPath().toString());
    		JTextField text = new JTextField("hallo", 10);
    		Box upper = new Box(BoxLayout.X_AXIS);
    		upper.add(lab1);
    		upper.add(text);
    		mainbox.add(upper);
    		
    		
    		
    	} else {
    		
    		System.out.println("  Kein Element selektiert");
    		
    	}
    }*/
    
    public void valueChanged (TreeSelectionEvent event){
    	
    	DefaultMutableTreeNode node = (DefaultMutableTreeNode) ((JTree) event.getSource()) 
        .getLastSelectedPathComponent(); 
        
    	if(node == null) 
            return; 
        
    try {
    	Object user = node.getUserObject(); 
    
    	// if(user instanceof Element){
    	 System.out.println(user);	
    	 	Object e =  user; 
    	 	//AttributeSet name =  e.getAttributes(); 
    	 	String name = (String) ((AttributeSet) e).getAttribute("name");
    	 	System.out.println(name);
    	 	String type = (String) ((AttributeSet) e).getAttribute("type"); 
    	 	//System.out.println(type);
    	 	JLabel lab = new JLabel(name); 
    	 	Box upper = new Box(BoxLayout.X_AXIS);
    	 	upper.add(lab);
    	 	JComponent comp = null; 
    	 	
    	 	if(type.equals("xsd:element")){
    	 		
    	 		comp = new JTextField("hallo",20); 
    	 		upper.add(comp);
    	 		upper.add(lab);
    	 		mainbox.add(upper);
    	 	
    	 	}else if(type.equals("xsd:attribute")) {
    	 		
    	 		comp = new JCheckBox(); 
    	 		upper.add(comp);
    	 		upper.add(lab);
    	 		mainbox.add(upper);
    	 	}
    } catch (Exception e){
    	System.out.println("da lief aber was gewaltig schief!");
    }
    	 }
  //  }
    
}
und die Klasse XMLDocumentTreeRenderer gehört auch noch dazu:
Code:
import java.awt.Component;

import javax.swing.JTree;
import javax.swing.text.Element;
import javax.swing.tree.DefaultTreeCellRenderer;

public class XMLDocumentTreeRenderer extends DefaultTreeCellRenderer {
	
	public Component getTreeCellRendererComponent(JTree tree, Object value, boolean sel, 
	         boolean expanded, boolean leaf, int row, boolean hasFocus){
				
				super.getTreeCellRendererComponent(tree, value, sel, expanded, leaf, row, hasFocus); 
		       
				   if(value instanceof Element) { 
			         setText(((Element) value).getName()); 
			         setIcon(leafIcon); 
				   }  
			      return this; 
			   } 
	}
Ich steig da echt nicht mehr durch!
 

Perplex

Mitglied
Ach Mist, hab eine Klammer der Code-Tags falsch gesetzt! Statt ner eckigen ne runde Klammer! Na ja, kannst es aber trotzdem erkennen, oder? :?
 
R

Roar

Gast
Perplex hat gesagt.:
Das weiß ich auch nicht! Ich arbeite mit eclipse und das wurde mir als mögliche Fehlerbehebungs-Maßnahme angezeigt

omg ey! ich werd nicht mehr, da sieht man mal was ein ctrl+shift+o alles anrichten kann. lern erstmal java, schmeiß eclipse weg und schreib deine imports selbst, is ja kei nwunder das das nicht geht bei dir. am besten wirfst du den code weg und schreibst's nochmal neu
 

Perplex

Mitglied
Hmm...ja, ist etwas chaotisch bei mir, aber ich denke der Ansatz ist nicht so schlecht! Ja, ich bin nicht so der java-Crack, aber wozu jetzt imports schreiben? Ist doch alles da was ich brauche! Es geht doch nur um die cast-Ausdrücke! Da liegt der Fehler! Hast Du wirklich keine Idee wie man den Kram richtig castet? Ich meine, so wie Du's vorgeschlagen hast, klappt's ja nicht! Ist wirklich wichtig, daß ich das noch zum laufen kriege!
 
R

Roar

Gast
Perplex hat gesagt.:
aber wozu jetzt imports schreiben? Ist doch alles da was ich brauche! Es geht doch nur um die cast-Ausdrücke! Da liegt der Fehler! Hast Du wirklich keine Idee wie man den Kram richtig castet? Ich meine, so wie Du's vorgeschlagen hast, klappt's ja nicht!

nein, totaler quatsch, du importierst da müll den du berhaupt nicht brauchst, wahrscheinlich standen diese imports an erster stelle beim "import type" dialog in eclipse, was?mein code soltle so wie er ist funktinoieren, aber natürlich nur, wenn man fähig ist die richtigen typen zu importieren. du vermischst hier zwei apis die nix miteinander zu tun haben, weil es da zwei typen gibt die beide Element heißen. denk nochmal drüber nach und drück NIE mehr ctrl+1 doer ctrl+shift+o, danke
 

Perplex

Mitglied
Ja stimmt, Du hattest Recht, ich hab den falschn Import benutzt! Ich hab jetzt den hier:
Code:
import org.w3c.dom.Element;
Mit dem klappt Dein Code! Aber trotzdem kann ich keine Eingabefelder im Panel anzeigen, weil dann wieder ne ClassCastException bekomme in der Zeile
Code:
 Element e = (Element) user;
Also wo liegt der Fehler????? Es gibt ja folgende Element-imports
Code:
import javax.swing.text.html.parser.Element;
import javax.swing.text.Element;
import org.w3c.dom.Element;
import com.sun.corba.se.internal.orbutil.Element;
Aber die wrc-Version sollte doch die Richtige sein!!! Wo also ist der import-Fehler)))))))))) ???:L
 
R

Roar

Gast
Perplex hat gesagt.:
weil dann wieder ne ClassCastException bekomme in der Zeile
Code:
 Element e = (Element) user;
Also wo liegt der Fehler?????

wenn du wirklich die elemente den treenodes als object gegeben hast kommt dieser fehler nicht (das hab ich doch am anfang direkt gefragt)
 

Perplex

Mitglied
verstehe ich jetzt nicht so ganz????Schreib das doch mal auf was genau Du jetzt meinst! Aber du hast ja meinen kompletten Code! Das sollte doch Deine Frage beantworten! Und noch ne Frage: was genau macht der Renderer eigentlich? Brauch man den überhaupt? Entschuldige die blöden Fragen aber ich hab bei java noch nicht so den wahnsinns Durchblick! Hoffe, Du beantwortest meine Fragen trotzdem! :wink:
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
Z DOM: Attribute in Knoten schreiben XML & JSON 2
I XPath Namensräume und auslesen einzelner Knoten XML & JSON 3
B XML und do while Schleife, Knoten falsch XML & JSON 5
K XML Tabs als Knoten gezählt XML & JSON 3
sylo Knoten mittels selbstgebasteltem TreePath öffnen XML & JSON 2
B im DOM anzahl der Knoten in tiefe 3 zählen XML & JSON 2
E XML Knoten mit rekursiver Methode auslesen XML & JSON 3
console xml knoten mit attribut löschen XML & JSON 3
D Anzahl der Knoten in einer XML XML & JSON 6
M neue Knoten erstellen ? XML & JSON 6
L SAXReader , auslesen bis zum bestimmten knoten! XML & JSON 3
C suche bestimmten Knoten mit bestimmten attribut XML & JSON 8
R Knoten einfügen und sofort CDATA-Sektion darunter XML & JSON 7
D Kann man neue Knoten löschen? XML & JSON 4
Z Erzeugung einer Referenz von Knoten in JTree auf DOMTree XML & JSON 3
iman XML Attribute mit JAVA einlesen mit Spring Batch XML & JSON 0
L Transformer verschluckt Attribute bei der Ausgabe XML & JSON 3
W XML einlesen und Attribute auslesen XML & JSON 1
D Attribute aus XML Auslesen XML & JSON 5
P Xpath zugriff auf Attribute XML & JSON 3
R cvc-complex-type.3.2.2: Attribute 'uuid' is not allowed to appear in element 'jasperReport'. XML & JSON 4
C JAXB: XML-Elemente einlesen und als XML-Attribute ausgeben XML & JSON 7
F EMF, XSD to ECore mapping, Attribute vs. Element XML & JSON 2
A XML-Attribute vergleichen XML & JSON 4
Helgon MalformedByteSequenceException und null JDOM Attribute XML & JSON 5
G JAXB XML-Attribute feststellen XML & JSON 4
2 wie komme ich an die Attribute XML & JSON 3
S Attribute von Elementen auslesen mit XPath XML & JSON 2
B 2 Attribute in einer xsl XML & JSON 2
M Gegenseitig ausschließende Attribute definieren in XSD XML & JSON 7
C DOM: Attribute nicht in alphabetischer Reihenfolge schreiben XML & JSON 3
eQuest XML Jaxen Attribute auslesen XML & JSON 2
C Mit SAX Parser XML Attribute auswerten XML & JSON 3
H XML Attribute auslesen XML & JSON 5
S JAXB und viele verschachtelte Attribute XML & JSON 1
G xquery - nodes unterscheiden sich nur durch attribute :-( XML & JSON 4
L Objekt Serialisierung: Schreiben aller Attribute erzwingen XML & JSON 5
E EMF Modell um alle möglichen Attribute auszulesen XML & JSON 12
S XSD: restriction und attribute gleichzeitig XML & JSON 4
V XMLEncoder: Attribute nicht serialisieren XML & JSON 2
D Wie kann ich Namespace Attribute in den Elementen entfernen? XML & JSON 2
M Attribute parsen XML & JSON 6
D JDOM erzeugt leere xmlns Attribute XML & JSON 4
B jdom outputter ohne attribute XML & JSON 2
G Wie Attribute aus XML in ein Model schreiben (StAX)? XML & JSON 7
M attribute funken nicht XML & JSON 3
R Jtree + Attribute XML & JSON 6
W Erzeugen einer openapi spec via swagger XML & JSON 1
W Erzeugen einer Handlerklasse zum Abfangen von SOAP-Requests XML & JSON 13
D Innerhalb einer Property auf eine andere verlinken? XML & JSON 3
J Auslesen der Länge einer XML-Datei in Android Studio XML & JSON 8
S Validierung einer XML-Datei - Führende Leerzeichen und Tabs XML & JSON 10
M Layout + Inhalt einer JTable speichern XML & JSON 30
J Welche Gründe führen zu einer endlos tiefen XML? XML & JSON 4
T Pfad in einer Variablen speichern XML & JSON 1
E Wie kann ich ein XSD-Schema in einer JSP-Seite verwenden? XML & JSON 7
T Visualisierung von XML Dateien in einer Java SwingGui XML & JSON 11
R XSD in einer choice mehrmals das selbe element möglich XML & JSON 5
S Xml File für den Aufbau einer anderen Xml Datei XML & JSON 6
C XPath: Alle Kinder in einer Schleife auslesen XML & JSON 2
K Beim Parsen einer XML-Datei Connection timed out XML & JSON 4
F Parsen von Daten aus einer Homepage XML & JSON 6
B XML aus einer URL im Internet lesen (JDOM) XML & JSON 4
D Aus lesen einer XML-Datei ( 1 root, 3 childs) XML & JSON 7
B SAX-Parser - Dokumente einlesen und in einer Map ablegen XML & JSON 2
T Inhalt einer .xml Datei auf Javaoberfläche wiedergeben XML & JSON 4
T Schreiben einer XML XML & JSON 8
B XML auf Basis einer DTD erstellen XML & JSON 2
hdi Probleme beim Erstellen einer XML XML & JSON 7
O Parsen einer XML mit JDOM ohne Doctype Declaration XML & JSON 2
T XPath Problem: finden einer Node nach Attributswert XML & JSON 2
sylo Mehrere XSDs und mehrere Namensräume in einer XML unterbringen? XML & JSON 2
Nicer Bestimmten Wert aus einer XML Auslesen XML & JSON 34
sylo Beim Erzeugen einer XML Datei auch die XML Struktur erzeugen? XML & JSON 11
J xmlencoder Zustände einer Bean schreiben XML & JSON 3
N value Wert einer XML Datei mit JAVA bearbeiten XML & JSON 21
S Probleme beim erstellen einer Jar XML & JSON 12
J Problem mit compile einer XSD XML & JSON 3
S Einlesen einer xml Datei XML & JSON 4
F hilfe bei einer aufgabe XML & JSON 3
R Parsen einer XML ohne Validierung XML & JSON 2
D XML Datei innerhalb einer JAR Datei parsen XML & JSON 2
M Xerces -Parsen mit einer externen Schemadatei geht nicht XML & JSON 2
cybermat Ergebnis einer XSLT-Tansformation als Rückgabewert erhalten XML & JSON 4
J Fehler beim laden einer .xml XML & JSON 3
ven000m Übungsaufgabe: Valide und gültige XML Datei zu einer DTD XML & JSON 7
A Auslesen einer XML Datei XML & JSON 58
P OutOfMemoryError beim Einlesen einer XML-Datei XML & JSON 7
T Einfach nur die Elemente einer XML Datei auslesen :( XML & JSON 10
A Element an einer bestimmten Stelle einfügen (nicht am Ende) XML & JSON 4

Ähnliche Java Themen

Neue Themen


Oben