java - XML parsing and display in JTabbedPane -


i newbie java have parsed xml have display in respective jtabbedpane. have error on attribute object on start element method.

where going wrong?

import javax.swing.jscrollpane; import javax.swing.jtabbedpane;   import javax.swing.imageicon; import javax.swing.jlabel; import javax.swing.jpanel; import javax.swing.jframe; import javax.swing.jtable; import javax.xml.parsers.saxparser; import javax.xml.parsers.saxparserfactory; import org.xml.sax.saxexception; import org.xml.sax.helpers.defaulthandler; import java.awt.*; import java.awt.event.*; import java.io.file;  public class jtabbedpanedemo extends jpanel {       /*static string[] nameatt= {" sv_machinedata "," mould_data "," core_1 "," core_2 "};*/       public jtabbedpanedemo() {     //  imageicon icon = new imageicon("java-swing-tutorial.jpg");          jtabbedpane jtbexample = new jtabbedpane();          // create first tab.         jpanel jplinnerpanel1 = createinnerpanel();         jtbexample.addtab(" sv_machine_data ", jplinnerpanel1);         jplinnerpanel1.setlayout(new borderlayout());         jtable table1 = new jtable(5,3);         jscrollpane tablecontainer = new jscrollpane(table1);         jplinnerpanel1.add(tablecontainer,borderlayout.center);          //jtbexample.setselectedindex(0);          // create second tab.         jpanel jplinnerpanel2 = createinnerpanel();         jtbexample.addtab(" mould_data ", jplinnerpanel2);         jplinnerpanel2.setlayout(new borderlayout());         jtable table2 = new jtable(5,3);         jscrollpane tablecontainer1 = new jscrollpane(table2);         jplinnerpanel2.add(tablecontainer1,borderlayout.center);          // create third tab.         jpanel jplinnerpanel3 = createinnerpanel();         jtbexample.addtab(" core_1 ", jplinnerpanel3);         jplinnerpanel3.setlayout(new borderlayout());         jtable table3 = new jtable(5,3);         jscrollpane tablecontainer3 = new jscrollpane(table3);         jplinnerpanel3.add(tablecontainer3,borderlayout.center);          // create fourth tab.         jpanel jplinnerpanel4 = createinnerpanel();         jtbexample.addtab(" core_2 ", jplinnerpanel4);         jplinnerpanel4.setlayout(new borderlayout());         jtable table4 = new jtable(5,3);         jscrollpane tablecontainer4 = new jscrollpane(table4);         jplinnerpanel4.add(tablecontainer4,borderlayout.center);           // add tabbed pane panel.         setlayout(new gridlayout(1, 1));         add(jtbexample);     }      protected jpanel createinnerpanel() {         jpanel jplpanel = new jpanel();         jlabel jlbdisplay = new jlabel();         jlbdisplay.sethorizontalalignment(jlabel.center);         jplpanel.setlayout(new gridlayout(1, 1));         jplpanel.add(jlbdisplay);         return jplpanel;     }     public static void main(string[] args) {         jframe frame = new jframe("tabbedpane source demo");         frame.addwindowlistener(new windowadapter() {              public void windowclosing(windowevent e) {                 system.exit(0);             }         });          /*final jtabbedpanedemo xm = new jtabbedpanedemo();*/          try {             saxparserfactory factory = saxparserfactory.newinstance();             saxparser saxparser = factory.newsaxparser();          defaulthandler handler = new defaulthandler() {          boolean bfname = false;         boolean blname = false;         string nameattribute;          public void startelement(string uri, string localname,string qname, attributes attributes)         throws saxexception {              if (qname.equalsignorecase("typ")) {                 bfname = true;                 }              nameattribute = attributes.getvalue("name");              if (qname.equalsignorecase("value")){                 blname = true;                 }         }         public void characters(char ch[], int start, int length)         throws saxexception {              if (bfname) {                 system.out.println("type : "+ new string(ch, start, length));                 string vtype = new string(ch, start, length);                 /*xm.textarea.append(vtype+"\n");*/                 bfname = false;                 }              if (nameattribute != null && !nameattribute.equals("")) {                 system.out.println("name : " + nameattribute);                 /*vname+=nameattribute+ ", " +"\n";                 xm.textarea_3.settext(vname);                 */}              if (blname) {                    string vvalue = new string(ch, start, length);                 system.out.println("value:" + double.valueof(vvalue));                 /*xm.textarea_1.append(double.valueof(vvalue)+"\n");*/                 blname = false;                 }         }         };          saxparser.parse(new file("c:"path of xml file".xml"), handler);         }         catch (exception e) {         e.printstacktrace();         }         frame.getcontentpane().add(new jtabbedpanedemo(),borderlayout.center);         frame.setsize(400, 500);         frame.setvisible(true);     } } 

below sample xml

<?xml version="1.0" encoding="utf-8"?> <hmi_data version="1.0" maschinennr.="xxxxxx" date="21-10-2009">    <vargroup name="vg_machinedata">       <variable name="mold1.sv_rmoldstroke">          <typ>real</typ>          <value>6.000000e+02</value>       </variable>       <variable name="core1.sv_rmaxspeedfwd">          <typ>real</typ>          <value>5.000000e+01</value>       </variable>       <variable name="core1.sv_rmaxspeedbwd">          <typ>real</typ>          <value>5.000000e+01</value>       </variable>       <variable name="core1.sv_rmaxpressurefwd">          <typ>real</typ>          <value>1.450000e+02</value>       </variable>       <variable name="core1.sv_rmaxpressurebwd">          <typ>real</typ>          <value>1.450000e+02</value>       </variable> 

around 20 seconds javadcos suggests that:

import org.xml.sax.saxexception; import org.xml.sax.helpers.defaulthandler; 

should be:

import org.xml.sax.saxexception; import org.xml.sax.attributes;  // import it! import org.xml.sax.helpers.defaulthandler; 

Comments

Popular posts from this blog

Change php variable from jquery value using ajax (same page) -

Pull out data related to my apps from Android Play Store and iOS App Store -

How can I fetch data from a web server in an android application? -