K
koslows
Dear All!
I'm writing a business method of an entity bean which is supposed to
read some informations from an XML file. I use the following code:
To get the parser and the document:
Code:
DocumentBuilderFactory factory =
DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.parse( xmlFile );
Then to get the informations I use:
Code:
NodeList nl = doc.getElementsByTagName( tagName );
int elemCount = nl.getLength();
for( int i = 0; i < elemCount; i++ )
{
Element element = ( Element )nl.item( i );
String test = element.getTextContent();
(...)
}
And I get the folowing exception:
Code:
org.jboss.tm.JBossTransactionRolledbackException: Unexpected Error
java.lang.NoSuchMethodError:
org.w3c.dom.Node.getTextContent()Ljava/lang/String;
at
levia.messages.ejb.MessageTypeBean.requiredInformations(MessageTypeBean.java:345)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
The problem is that outside Jboss this works perfectly. So I guess the
problems comes from the fact that jboss uses xerces itself and it
configures diferently the parser or something like this...
When I write :
Code:
Text tester = (Text) elem.getFirstChild();
String blalba = tester.getNodeValue();
everything works well.... but still I would like to understand what is
the couse of problems with the other solution.
kind regards
Karol
PS: I use jboss 4.0 and xerces 2.6.2
I'm writing a business method of an entity bean which is supposed to
read some informations from an XML file. I use the following code:
To get the parser and the document:
Code:
DocumentBuilderFactory factory =
DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.parse( xmlFile );
Then to get the informations I use:
Code:
NodeList nl = doc.getElementsByTagName( tagName );
int elemCount = nl.getLength();
for( int i = 0; i < elemCount; i++ )
{
Element element = ( Element )nl.item( i );
String test = element.getTextContent();
(...)
}
And I get the folowing exception:
Code:
org.jboss.tm.JBossTransactionRolledbackException: Unexpected Error
java.lang.NoSuchMethodError:
org.w3c.dom.Node.getTextContent()Ljava/lang/String;
at
levia.messages.ejb.MessageTypeBean.requiredInformations(MessageTypeBean.java:345)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
The problem is that outside Jboss this works perfectly. So I guess the
problems comes from the fact that jboss uses xerces itself and it
configures diferently the parser or something like this...
When I write :
Code:
Text tester = (Text) elem.getFirstChild();
String blalba = tester.getNodeValue();
everything works well.... but still I would like to understand what is
the couse of problems with the other solution.
kind regards
Karol
PS: I use jboss 4.0 and xerces 2.6.2