Trying to embed gnu.xml.dom.DomDocumentBuilderFactory

Mohsen Saboorian mohsens@gmail.com
Sat Apr 21 14:35:00 GMT 2007


On 4/21/07, Andrew Haley <aph-gcc@littlepinkcloud.com> wrote:
> Mohsen Saboorian writes:
>  > I filled a bug report:
>  > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31647
>  >
>  > Andrew, newing DomDocumentBuilderFactory workaround didn't work for
>  > me. Do you know any other workaround ;)?
>
> Did you follow my suggestion?
>

Yes, and there was some entries for both
gnu.xml.dom.DomDocumentBuilderFactory and gnu.xml.dom.DomImpl.

Attached is the output for command
jcg-dump -v --classpath=zekr-olpc.jar net.sf.zekr.engine.xml.XmlReader

Thanks.
-------------- next part --------------
Reading .class from zekr-olpc.jar(net/sf/zekr/engine/xml/XmlReader.class).
Magic number: 0xcafebabe, minor_version: 0, major_version: 49.

Constant pool (count: 182):
#1: Class name: 2="net/sf/zekr/engine/xml/XmlReader"
#2: Utf8: "net/sf/zekr/engine/xml/XmlReader"
#3: Class name: 4="java/lang/Object"
#4: Utf8: "java/lang/Object"
#5: Utf8: "xmlDocument"
#6: Utf8: "Lorg/w3c/dom/Document;"
#7: Utf8: "parentNode"
#8: Utf8: "Lorg/w3c/dom/Node;"
#9: Utf8: "<init>"
#10: Utf8: "(Ljava/lang/String;)V"
#11: Utf8: "Exceptions"
#12: Class name: 13="net/sf/zekr/engine/xml/XmlReadException"
#13: Utf8: "net/sf/zekr/engine/xml/XmlReadException"
#14: Utf8: "Code"
#15: Class name: 16="java/io/File"
#16: Utf8: "java/io/File"
#17: Methodref class: 15=java.io.File name_and_type: 18=<<init> (java.lang.String)void>
#18: NameAndType name: 9=<init>, signature: 10=(java.lang.String)void
#19: Methodref class: 1=net.sf.zekr.engine.xml.XmlReader name_and_type: 20=<<init> (java.io.File)void>
#20: NameAndType name: 9=<init>, signature: 21=(java.io.File)void
#21: Utf8: "(Ljava/io/File;)V"
#22: Utf8: "LineNumberTable"
#23: Utf8: "LocalVariableTable"
#24: Utf8: "this"
#25: Utf8: "Lnet/sf/zekr/engine/xml/XmlReader;"
#26: Utf8: "filePath"
#27: Utf8: "Ljava/lang/String;"
#28: Methodref class: 3=java.lang.Object name_and_type: 29=<<init> ()void>
#29: NameAndType name: 9=<init>, signature: 30=()void
#30: Utf8: "()V"
#31: Class name: 32="gnu/xml/dom/DomDocumentBuilderFactory"
#32: Utf8: "gnu/xml/dom/DomDocumentBuilderFactory"
#33: Methodref class: 31=gnu.xml.dom.DomDocumentBuilderFactory name_and_type: 29=<<init> ()void>
#34: Class name: 35="gnu/xml/dom/DomImpl"
#35: Utf8: "gnu/xml/dom/DomImpl"
#36: Methodref class: 34=gnu.xml.dom.DomImpl name_and_type: 29=<<init> ()void>
#37: Methodref class: 38=javax.xml.parsers.DocumentBuilderFactory name_and_type: 40=<newDocumentBuilder ()javax.xml.parsers.DocumentBuilder>
#38: Class name: 39="javax/xml/parsers/DocumentBuilderFactory"
#39: Utf8: "javax/xml/parsers/DocumentBuilderFactory"
#40: NameAndType name: 41=newDocumentBuilder, signature: 42=()javax.xml.parsers.DocumentBuilder
#41: Utf8: "newDocumentBuilder"
#42: Utf8: "()Ljavax/xml/parsers/DocumentBuilder;"
#43: Methodref class: 44=javax.xml.parsers.DocumentBuilder name_and_type: 46=<parse (java.io.File)org.w3c.dom.Document>
#44: Class name: 45="javax/xml/parsers/DocumentBuilder"
#45: Utf8: "javax/xml/parsers/DocumentBuilder"
#46: NameAndType name: 47=parse, signature: 48=(java.io.File)org.w3c.dom.Document
#47: Utf8: "parse"
#48: Utf8: "(Ljava/io/File;)Lorg/w3c/dom/Document;"
#49: Fieldref class: 1=net.sf.zekr.engine.xml.XmlReader name_and_type: 50=<xmlDocument org.w3c.dom.Document>
#50: NameAndType name: 5=xmlDocument, signature: 6=org.w3c.dom.Document
#51: InterfaceMethodref class: 52=org.w3c.dom.Document name_and_type: 54=<getFirstChild ()org.w3c.dom.Node>
#52: Class name: 53="org/w3c/dom/Document"
#53: Utf8: "org/w3c/dom/Document"
#54: NameAndType name: 55=getFirstChild, signature: 56=()org.w3c.dom.Node
#55: Utf8: "getFirstChild"
#56: Utf8: "()Lorg/w3c/dom/Node;"
#57: Fieldref class: 1=net.sf.zekr.engine.xml.XmlReader name_and_type: 58=<parentNode org.w3c.dom.Node>
#58: NameAndType name: 7=parentNode, signature: 8=org.w3c.dom.Node
#59: InterfaceMethodref class: 60=org.w3c.dom.Node name_and_type: 62=<getNodeType ()short>
#60: Class name: 61="org/w3c/dom/Node"
#61: Utf8: "org/w3c/dom/Node"
#62: NameAndType name: 63=getNodeType, signature: 64=()short
#63: Utf8: "getNodeType"
#64: Utf8: "()S"
#65: InterfaceMethodref class: 60=org.w3c.dom.Node name_and_type: 66=<getNextSibling ()org.w3c.dom.Node>
#66: NameAndType name: 67=getNextSibling, signature: 56=()org.w3c.dom.Node
#67: Utf8: "getNextSibling"
#68: Class name: 69="java/lang/StringBuilder"
#69: Utf8: "java/lang/StringBuilder"
#70: String 71="Error while loading XML: "
#71: Utf8: "Error while loading XML: "
#72: Methodref class: 68=java.lang.StringBuilder name_and_type: 18=<<init> (java.lang.String)void>
#73: Methodref class: 68=java.lang.StringBuilder name_and_type: 74=<append (java.lang.Object)java.lang.StringBuilder>
#74: NameAndType name: 75=append, signature: 76=(java.lang.Object)java.lang.StringBuilder
#75: Utf8: "append"
#76: Utf8: "(Ljava/lang/Object;)Ljava/lang/StringBuilder;"
#77: String 78=": "
#78: Utf8: ": "
#79: Methodref class: 68=java.lang.StringBuilder name_and_type: 80=<append (java.lang.String)java.lang.StringBuilder>
#80: NameAndType name: 75=append, signature: 81=(java.lang.String)java.lang.StringBuilder
#81: Utf8: "(Ljava/lang/String;)Ljava/lang/StringBuilder;"
#82: Methodref class: 83=java.lang.Exception name_and_type: 85=<getMessage ()java.lang.String>
#83: Class name: 84="java/lang/Exception"
#84: Utf8: "java/lang/Exception"
#85: NameAndType name: 86=getMessage, signature: 87=()java.lang.String
#86: Utf8: "getMessage"
#87: Utf8: "()Ljava/lang/String;"
#88: Methodref class: 68=java.lang.StringBuilder name_and_type: 89=<toString ()java.lang.String>
#89: NameAndType name: 90=toString, signature: 87=()java.lang.String
#90: Utf8: "toString"
#91: Methodref class: 12=net.sf.zekr.engine.xml.XmlReadException name_and_type: 92=<<init> (java.lang.String,java.lang.Throwable)void>
#92: NameAndType name: 9=<init>, signature: 93=(java.lang.String,java.lang.Throwable)void
#93: Utf8: "(Ljava/lang/String;Ljava/lang/Throwable;)V"
#94: Utf8: "file"
#95: Utf8: "Ljava/io/File;"
#96: Utf8: "documentBuilderFactory"
#97: Utf8: "Ljavax/xml/parsers/DocumentBuilderFactory;"
#98: Utf8: "a"
#99: Utf8: "I"
#100: Utf8: "parser"
#101: Utf8: "Ljavax/xml/parsers/DocumentBuilder;"
#102: Utf8: "e"
#103: Utf8: "Ljava/lang/Exception;"
#104: Utf8: "getDocumentElement"
#105: Utf8: "()Lorg/w3c/dom/Element;"
#106: InterfaceMethodref class: 52=org.w3c.dom.Document name_and_type: 107=<getDocumentElement ()org.w3c.dom.Element>
#107: NameAndType name: 104=getDocumentElement, signature: 105=()org.w3c.dom.Element
#108: Utf8: "getNodes"
#109: Utf8: "(Ljava/lang/String;)Lnet/sf/zekr/engine/xml/NodeList;"
#110: Class name: 111="net/sf/zekr/engine/xml/NodeList"
#111: Utf8: "net/sf/zekr/engine/xml/NodeList"
#112: Methodref class: 110=net.sf.zekr.engine.xml.NodeList name_and_type: 29=<<init> ()void>
#113: Class name: 114="java/util/StringTokenizer"
#114: Utf8: "java/util/StringTokenizer"
#115: String 116="."
#116: Utf8: "."
#117: Methodref class: 113=java.util.StringTokenizer name_and_type: 118=<<init> (java.lang.String,java.lang.String)void>
#118: NameAndType name: 9=<init>, signature: 119=(java.lang.String,java.lang.String)void
#119: Utf8: "(Ljava/lang/String;Ljava/lang/String;)V"
#120: Methodref class: 113=java.util.StringTokenizer name_and_type: 121=<nextToken ()java.lang.String>
#121: NameAndType name: 122=nextToken, signature: 87=()java.lang.String
#122: Utf8: "nextToken"
#123: Methodref class: 124=net.sf.zekr.engine.xml.XmlUtils name_and_type: 126=<getNodes (org.w3c.dom.Node,java.lang.String)net.sf.zekr.engine.xml.NodeList>
#124: Class name: 125="net/sf/zekr/engine/xml/XmlUtils"
#125: Utf8: "net/sf/zekr/engine/xml/XmlUtils"
#126: NameAndType name: 108=getNodes, signature: 127=(org.w3c.dom.Node,java.lang.String)net.sf.zekr.engine.xml.NodeList
#127: Utf8: "(Lorg/w3c/dom/Node;Ljava/lang/String;)Lnet/sf/zekr/engine/xml/NodeList;"
#128: Methodref class: 124=net.sf.zekr.engine.xml.XmlUtils name_and_type: 129=<getNodes (net.sf.zekr.engine.xml.NodeList,java.lang.String)net.sf.zekr.engine.xml.NodeList>
#129: NameAndType name: 108=getNodes, signature: 130=(net.sf.zekr.engine.xml.NodeList,java.lang.String)net.sf.zekr.engine.xml.NodeList
#130: Utf8: "(Lnet/sf/zekr/engine/xml/NodeList;Ljava/lang/String;)Lnet/sf/zekr/engine/xml/NodeList;"
#131: Methodref class: 110=net.sf.zekr.engine.xml.NodeList name_and_type: 132=<add (net.sf.zekr.engine.xml.NodeList)void>
#132: NameAndType name: 133=add, signature: 134=(net.sf.zekr.engine.xml.NodeList)void
#133: Utf8: "add"
#134: Utf8: "(Lnet/sf/zekr/engine/xml/NodeList;)V"
#135: Methodref class: 110=net.sf.zekr.engine.xml.NodeList name_and_type: 136=<<init> (org.w3c.dom.NodeList)void>
#136: NameAndType name: 9=<init>, signature: 137=(org.w3c.dom.NodeList)void
#137: Utf8: "(Lorg/w3c/dom/NodeList;)V"
#138: Methodref class: 110=net.sf.zekr.engine.xml.NodeList name_and_type: 139=<deleteAll ()void>
#139: NameAndType name: 140=deleteAll, signature: 30=()void
#140: Utf8: "deleteAll"
#141: Methodref class: 113=java.util.StringTokenizer name_and_type: 142=<hasMoreTokens ()boolean>
#142: NameAndType name: 143=hasMoreTokens, signature: 144=()boolean
#143: Utf8: "hasMoreTokens"
#144: Utf8: "()Z"
#145: Methodref class: 110=net.sf.zekr.engine.xml.NodeList name_and_type: 146=<size ()int>
#146: NameAndType name: 147=size, signature: 148=()int
#147: Utf8: "size"
#148: Utf8: "()I"
#149: Utf8: "nodeHierarchy"
#150: Utf8: "list"
#151: Utf8: "Lnet/sf/zekr/engine/xml/NodeList;"
#152: Utf8: "tempList"
#153: Utf8: "node"
#154: Utf8: "tokenizer"
#155: Utf8: "Ljava/util/StringTokenizer;"
#156: Utf8: "getNode"
#157: Utf8: "(Ljava/lang/String;)Lorg/w3c/dom/Node;"
#158: Methodref class: 1=net.sf.zekr.engine.xml.XmlReader name_and_type: 159=<getNodes (java.lang.String)net.sf.zekr.engine.xml.NodeList>
#159: NameAndType name: 108=getNodes, signature: 109=(java.lang.String)net.sf.zekr.engine.xml.NodeList
#160: Methodref class: 110=net.sf.zekr.engine.xml.NodeList name_and_type: 161=<item (int)org.w3c.dom.Node>
#161: NameAndType name: 162=item, signature: 163=(int)org.w3c.dom.Node
#162: Utf8: "item"
#163: Utf8: "(I)Lorg/w3c/dom/Node;"
#164: Utf8: "getElement"
#165: Utf8: "(Ljava/lang/String;)Lorg/w3c/dom/Element;"
#166: Class name: 167="org/w3c/dom/Element"
#167: Utf8: "org/w3c/dom/Element"
#168: Utf8: "elementHierarchy"
#169: Utf8: "getNodeByAttr"
#170: Utf8: "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/w3c/dom/Node;"
#171: Methodref class: 124=net.sf.zekr.engine.xml.XmlUtils name_and_type: 172=<getElementByNamedAttr (org.w3c.dom.NodeList,java.lang.String,java.lang.String,java.lang.String)org.w3c.dom.Element>
#172: NameAndType name: 173=getElementByNamedAttr, signature: 174=(org.w3c.dom.NodeList,java.lang.String,java.lang.String,java.lang.String)org.w3c.dom.Element
#173: Utf8: "getElementByNamedAttr"
#174: Utf8: "(Lorg/w3c/dom/NodeList;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/w3c/dom/Element;"
#175: Utf8: "attrName"
#176: Utf8: "attrValue"
#177: Utf8: "nodeList"
#178: Utf8: "getDocument"
#179: Utf8: "()Lorg/w3c/dom/Document;"
#180: Utf8: "SourceFile"
#181: Utf8: "XmlReader.java"

Access flags: 0x21 public super
This class: 1=net.sf.zekr.engine.xml.XmlReader, super: 3=java.lang.Object
Interfaces (count: 0):

Fields (count: 2):
Field name:"xmlDocument" private Signature: 6=org.w3c.dom.Document
Field name:"parentNode" private Signature: 8=org.w3c.dom.Node

Methods (count: 8):

Method name:"<init>" public Signature: 10=(java.lang.String)void
Attribute "Exceptions", length:4, count: 1
  0: #12=<Class net.sf.zekr.engine.xml.XmlReadException>
Attribute "Code", length:69, max_stack:4, max_locals:2, code_length:13
Attribute "LineNumberTable", length:10, count: 2
Attribute "LocalVariableTable", length:22, count: 2
  slot#0: name: 24=this, type: 25=net.sf.zekr.engine.xml.XmlReader (pc: 0 length: 13)
  slot#1: name: 26=filePath, type: 27=java.lang.String (pc: 0 length: 13)

Method name:"<init>" public Signature: 21=(java.io.File)void
Attribute "Exceptions", length:4, count: 1
  0: #12=<Class net.sf.zekr.engine.xml.XmlReadException>
Attribute "Code", length:258, max_stack:5, max_locals:5, code_length:118
Exceptions (count: 1):
  start: 4, end: 79, handler: 79, type: 83=java.lang.Exception
Attribute "LineNumberTable", length:46, count: 11
Attribute "LocalVariableTable", length:62, count: 6
  slot#0: name: 24=this, type: 25=net.sf.zekr.engine.xml.XmlReader (pc: 0 length: 118)
  slot#1: name: 94=file, type: 95=java.io.File (pc: 0 length: 118)
  slot#2: name: 96=documentBuilderFactory, type: 97=javax.xml.parsers.DocumentBuilderFactory (pc: 12 length: 67)
  slot#3: name: 98=a, type: 99=int (pc: 20 length: 59)
  slot#4: name: 100=parser, type: 101=javax.xml.parsers.DocumentBuilder (pc: 26 length: 53)
  slot#2: name: 102=e, type: 103=java.lang.Exception (pc: 80 length: 37)

Method name:"getDocumentElement" public Signature: 105=()org.w3c.dom.Element
Attribute "Code", length:52, max_stack:1, max_locals:1, code_length:10
Attribute "LineNumberTable", length:6, count: 1
Attribute "LocalVariableTable", length:12, count: 1
  slot#0: name: 24=this, type: 25=net.sf.zekr.engine.xml.XmlReader (pc: 0 length: 10)

Method name:"getNodes" public Signature: 109=(java.lang.String)net.sf.zekr.engine.xml.NodeList
Attribute "Code", length:241, max_stack:4, max_locals:7, code_length:95
Attribute "LineNumberTable", length:50, count: 12
Attribute "LocalVariableTable", length:72, count: 7
  slot#0: name: 24=this, type: 25=net.sf.zekr.engine.xml.XmlReader (pc: 0 length: 95)
  slot#1: name: 149=nodeHierarchy, type: 27=java.lang.String (pc: 0 length: 95)
  slot#2: name: 150=list, type: 151=net.sf.zekr.engine.xml.NodeList (pc: 8 length: 87)
  slot#3: name: 152=tempList, type: 151=net.sf.zekr.engine.xml.NodeList (pc: 16 length: 79)
  slot#4: name: 153=node, type: 8=org.w3c.dom.Node (pc: 22 length: 73)
  slot#5: name: 122=nextToken, type: 27=java.lang.String (pc: 55 length: 23)
  slot#6: name: 154=tokenizer, type: 155=java.util.StringTokenizer (pc: 34 length: 61)

Method name:"getNode" public Signature: 157=(java.lang.String)org.w3c.dom.Node
Attribute "Code", length:62, max_stack:2, max_locals:2, code_length:10
Attribute "LineNumberTable", length:6, count: 1
Attribute "LocalVariableTable", length:22, count: 2
  slot#0: name: 24=this, type: 25=net.sf.zekr.engine.xml.XmlReader (pc: 0 length: 10)
  slot#1: name: 149=nodeHierarchy, type: 27=java.lang.String (pc: 0 length: 10)

Method name:"getElement" public Signature: 165=(java.lang.String)org.w3c.dom.Element
Attribute "Code", length:65, max_stack:2, max_locals:2, code_length:13
Attribute "LineNumberTable", length:6, count: 1
Attribute "LocalVariableTable", length:22, count: 2
  slot#0: name: 24=this, type: 25=net.sf.zekr.engine.xml.XmlReader (pc: 0 length: 13)
  slot#1: name: 168=elementHierarchy, type: 27=java.lang.String (pc: 0 length: 13)

Method name:"getNodeByAttr" public Signature: 170=(java.lang.String,java.lang.String,java.lang.String)org.w3c.dom.Node
Attribute "Code", length:102, max_stack:4, max_locals:5, code_length:16
Attribute "LineNumberTable", length:10, count: 2
Attribute "LocalVariableTable", length:52, count: 5
  slot#0: name: 24=this, type: 25=net.sf.zekr.engine.xml.XmlReader (pc: 0 length: 16)
  slot#1: name: 149=nodeHierarchy, type: 27=java.lang.String (pc: 0 length: 16)
  slot#2: name: 175=attrName, type: 27=java.lang.String (pc: 0 length: 16)
  slot#3: name: 176=attrValue, type: 27=java.lang.String (pc: 0 length: 16)
  slot#4: name: 177=nodeList, type: 151=net.sf.zekr.engine.xml.NodeList (pc: 7 length: 9)

Method name:"getDocument" public Signature: 179=()org.w3c.dom.Document
Attribute "Code", length:47, max_stack:1, max_locals:1, code_length:5
Attribute "LineNumberTable", length:6, count: 1
Attribute "LocalVariableTable", length:12, count: 1
  slot#0: name: 24=this, type: 25=net.sf.zekr.engine.xml.XmlReader (pc: 0 length: 5)

Attributes (count: 1):
Attribute "SourceFile", length:2, #181="XmlReader.java"


More information about the Java mailing list