can u please try calling build() on the parent first? thanks, dims
On 4/16/06, Jens Schumann <[EMAIL PROTECTED]> wrote: > Hi all, > > By accident I run into a wired issue using XMLBeans data binding: For > testing purposes I added a simple log statement in my generated InOut class > before skel.process(). Using the generated Stub class I get a > NullPointerException in XMLBeans Factory.parse() (or better XMLBeans > Cur$CurLoadContext.finish,low see b). If I remove the log statement, > everything works. What makes this error wired is that it depends on the > existence of a <SOAP-ENV:Header/> within the request. If I send a SOAP > request without a SOAP-ENV Header tag, processing will succeed. Even WITH > the log statement. > > I tried to track down the reason for it, however I got lost somewhere > between finding the right version of ws-commons and the current toString > implementation of OMElement, OMNode and so on. My first impression is that > there is a caching issue in ws.commons.om.OMElement. > > Shouldn't the following work (I have working example for it)? > > Instead of the generated > > --- > Foo param3 = null; > param3 = skel.process( (Foo) > fromOM(msgContext.getEnvelope().getBody().getFirstElement(), Foo.class)); > --- > > I used > > --- > Foo param3 = null; > log.info(msgContext.getEnvelope().getBody().getFirstElement()); > param3 = skel.process( (Foo) > fromOM(msgContext.getEnvelope().getBody().getFirstElement(), Foo.class)); > --- > > and got the following exception: > > 23:03:14,299 ERROR [TestApiPortMessageReceiverInOut] Error processing > java.lang.RuntimeException: Data binding error > at > test.TestApiPortMessageReceiverInOut.fromOM(TestApiPortMessageReceiverInOut. > java:135) > at > test.TestApiPortMessageReceiverInOut.invokeBusinessLogic(TestApiPortMessageR > eceiverInOut.java:54) > at > org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.receive(Abstract > InOutSyncMessageReceiver.java:37) > at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:408) > at > org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HT > TPTransportUtils.java:288) > at > org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:160) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application > FilterChain.java:252) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh > ain.java:173) > at > org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.ja > va:96) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application > FilterChain.java:202) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh > ain.java:173) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja > va:213) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja > va:178) > at > org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalVal > ve.java:54) > at > org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssoci > ationValve.java:174) > at > org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java: > 74) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126 > ) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105 > ) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java > :107) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:868) > at > org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processC > onnection(Http11BaseProtocol.java:663) > at > org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.jav > a:527) > at > org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThre > ad.java:112) > at java.lang.Thread.run(Thread.java:613) > Caused by: java.lang.NullPointerException > at > org.apache.xmlbeans.impl.store.Cur$CurLoadContext.finish(Cur.java:3184) > at > org.apache.xmlbeans.impl.store.Locale.loadXMLStreamReader(Locale.java:1216) > at > org.apache.xmlbeans.impl.store.Locale.parseToXmlObject(Locale.java:843) > at > org.apache.xmlbeans.impl.store.Locale.parseToXmlObject(Locale.java:826) > at > org.apache.xmlbeans.impl.schema.SchemaTypeLoaderBase.parse(SchemaTypeLoaderB > ase.java:231) > at foo.bar.RequestDocument$Factory.parse(Unknown Source) > at > test.TestApiPortMessageReceiverInOut.fromOM(TestApiPortMessageReceiverInOut. > java:127) > ... 26 more > > > -- Davanum Srinivas : http://wso2.com/blogs/
