I created a doc/lit webservice as sessionbean endpoint! I processed following steps:
1. I created the xsd-schema-files for the requests and responses schema: | ... | <xs:element name="ReadRS"> | <xs:complexType> | <xs:choice> | <xs:sequence> | <xs:element name="Success" type="SuccessType"/> | </xs:sequence> | <xs:element name="Errors" type="ErrorsType"/> | </xs:choice> | </xs:complexType> | </xs:element> | ... 2. I created the wsdl-file 3. wscompile with -f:documentliteral und -f:nodatabinding to create the SEI SEI: | ... | public javax.xml.soap.SOAPElement ReadRQ(javax.xml.soap.SOAPElement rq) | throws java.rmi.RemoteException; | ... 4. xjc on the xsd-files to get the jaxb-databindings 5. create and deploy the bean on jboss (no errors) Sessionbean (service endpoint): import java.rmi.RemoteException; | | import javax.ejb.SessionBean; | import javax.ejb.SessionContext; | import javax.xml.bind.JAXBContext; | import javax.xml.bind.Marshaller; | import javax.xml.bind.Validator; | import javax.xml.soap.SOAPElement; | import javax.xml.soap.SOAPFactory; | import javax.xml.transform.dom.DOMResult; | | import de.test.ws.vo.jaxb.ReadRS; | import de.test.ws.vo.jaxb.ObjectFactory; | . | . | . | | public SOAPElement ReadRQ(SOAPElement rq) throws RemoteException | { | SOAPElement response_ret = null; | | try | { | ObjectFactory objFactory = new ObjectFactory(); | | JAXBContext jc = JAXBContext.newInstance("de.test.ws.vo.jaxb"); | | . | . | . | | Marshaller m = jc.createMarshaller(); | | ReadRS response = objFactory.createReadRS(); | | response.setSuccess(...); | . | . | . | | SOAPFactory factory = SOAPFactory.newInstance(); | SOAPElement parent = factory.createElement("dummy"); | // this produces the error | m.marshal(response, new DOMResult(parent)); | // this produces the error | | response_ret = (SOAPElement) parent.getChildElements().next(); | } | catch(Exception e) | { | e.printStackTrace(); | } | | return response_ret; | } The Problem: Everthing works fine! The Sessionbean could unmarshall the Soapelement with jaxb. Then I processed the Object and wanted to marshall the Object -> Soapelement. This produced the following error: Stacktrace: anonymous wrote : 2005-08-03 13:41:37,477 DEBUG [org.jboss.webservice.server.InvokerProviderEJB] makeNewServiceObject: class=de.test.ws.vo.TestWS_PortType | 2005-08-03 13:41:37,477 DEBUG [org.jboss.webservice.server.InvokerProviderEJB] Invoke EJB: public abstract javax.xml.soap.SOAPElement de.test.ws.vo.TestWS_PortType.ReadRQ(javax.xml.soap.SOAPElement) throws java.rmi.RemoteException | 2005-08-03 13:41:37,477 DEBUG [org.jboss.webservice.handler.HandlerChainBaseImpl] Enter: doHandleRequest | 2005-08-03 13:41:37,477 DEBUG [org.jboss.webservice.handler.HandlerChainBaseImpl] Exit: doHandleRequest with status: true | 2005-08-03 13:42:21,753 INFO [STDOUT] java.lang.NullPointerException | 2005-08-03 13:42:21,816 INFO [STDOUT] at com.sun.xml.bind.marshaller.SAX2DOMEx.startElement(SAX2DOMEx.java:94) | 2005-08-03 13:42:21,816 INFO [STDOUT] at de.test.ws.vo.jaxb.impl.runtime.SAXMarshaller.endAttributes(SAXMarshaller.java:184) | 2005-08-03 13:42:21,831 INFO [STDOUT] at de.test.ws.vo.jaxb.impl.ReadRSImpl.serializeBody(ReadRSImpl.java:42) | 2005-08-03 13:42:21,831 INFO [STDOUT] at de.test.ws.vo.jaxb.impl.runtime.SAXMarshaller.childAsBody(SAXMarshaller.java:391) | 2005-08-03 13:42:21,831 INFO [STDOUT] at de.test.ws.vo.jaxb.impl.runtime.MarshallerImpl.write(MarshallerImpl.java:171) | 2005-08-03 13:42:21,831 INFO [STDOUT] at de.test.ws.vo.jaxb.impl.runtime.MarshallerImpl.marshal(MarshallerImpl.java:111) | 2005-08-03 13:42:21,831 INFO [STDOUT] at de.test.ws.bo.TestWSBean.ReadRQ(TestWSBean.java:128) | 2005-08-03 13:42:21,847 INFO [STDOUT] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) | 2005-08-03 13:42:21,847 INFO [STDOUT] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) | 2005-08-03 13:42:21,847 INFO [STDOUT] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) | 2005-08-03 13:42:21,847 INFO [STDOUT] at java.lang.reflect.Method.invoke(Method.java:585) | 2005-08-03 13:42:21,847 INFO [STDOUT] at org.jboss.invocation.Invocation.performCall(Invocation.java:345) | 2005-08-03 13:42:21,847 INFO [STDOUT] at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:214) | 2005-08-03 13:42:21,863 INFO [STDOUT] at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:185) | 2005-08-03 13:42:21,863 INFO [STDOUT] at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:130) | 2005-08-03 13:42:21,863 INFO [STDOUT] at org.jboss.webservice.server.ServiceEndpointInterceptor.invoke(ServiceEndpointInterceptor.java:106) | 2005-08-03 13:42:21,863 INFO [STDOUT] at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:48) | 2005-08-03 13:42:21,878 INFO [STDOUT] at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:105) | 2005-08-03 13:42:21,878 INFO [STDOUT] at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:335) | 2005-08-03 13:42:21,878 INFO [STDOUT] at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:166) | 2005-08-03 13:42:21,878 INFO [STDOUT] at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:139) | 2005-08-03 13:42:21,878 INFO [STDOUT] at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:192) | 2005-08-03 13:42:21,878 INFO [STDOUT] at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:122) | 2005-08-03 13:42:21,894 INFO [STDOUT] at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:624) | 2005-08-03 13:42:21,894 INFO [STDOUT] at org.jboss.ejb.Container.invoke(Container.java:873) | 2005-08-03 13:42:21,894 INFO [STDOUT] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) | 2005-08-03 13:42:21,894 INFO [STDOUT] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) | 2005-08-03 13:42:21,894 INFO [STDOUT] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) | 2005-08-03 13:42:21,909 INFO [STDOUT] at java.lang.reflect.Method.invoke(Method.java:585) | 2005-08-03 13:42:21,909 INFO [STDOUT] at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141) | 2005-08-03 13:42:21,909 INFO [STDOUT] at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80) | 2005-08-03 13:42:21,909 INFO [STDOUT] at org.jboss.mx.server.Invocation.invoke(Invocation.java:72) | 2005-08-03 13:42:21,909 INFO [STDOUT] at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:245) | 2005-08-03 13:42:21,925 INFO [STDOUT] at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644) | 2005-08-03 13:42:21,925 INFO [STDOUT] at org.jboss.webservice.server.InvokerProviderEJB.invokeServiceEndpoint(InvokerProviderEJB.java:131) | 2005-08-03 13:42:21,925 INFO [STDOUT] at org.jboss.webservice.server.InvokerProvider.invokeMethod(InvokerProvider.java:238) | 2005-08-03 13:42:21,925 INFO [STDOUT] at org.jboss.axis.providers.java.RPCProvider.invokeTarget(RPCProvider.java:176) | 2005-08-03 13:42:21,925 INFO [STDOUT] at org.jboss.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:121) | 2005-08-03 13:42:21,925 INFO [STDOUT] at org.jboss.axis.providers.java.JavaProvider.invoke(JavaProvider.java:358) | 2005-08-03 13:42:21,941 INFO [STDOUT] at org.jboss.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:73) | 2005-08-03 13:42:21,941 INFO [STDOUT] at org.jboss.axis.SimpleChain.doVisiting(SimpleChain.java:160) | 2005-08-03 13:42:21,941 INFO [STDOUT] at org.jboss.axis.SimpleChain.invoke(SimpleChain.java:123) | 2005-08-03 13:42:21,941 INFO [STDOUT] at org.jboss.axis.handlers.soap.SOAPService.invoke(SOAPService.java:560) | 2005-08-03 13:42:21,941 INFO [STDOUT] at org.jboss.webservice.server.ServerEngine.invokeInternal(ServerEngine.java:200) | 2005-08-03 13:42:21,956 INFO [STDOUT] at org.jboss.webservice.server.ServerEngine.invoke(ServerEngine.java:89) | 2005-08-03 13:42:21,956 INFO [STDOUT] at org.jboss.axis.transport.http.AxisServlet.doPost(AxisServlet.java:911) | 2005-08-03 13:42:21,956 INFO [STDOUT] at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) | 2005-08-03 13:42:21,956 INFO [STDOUT] at org.jboss.axis.transport.http.AxisServletBase.service(AxisServletBase.java:370) | 2005-08-03 13:42:21,956 INFO [STDOUT] at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) | 2005-08-03 13:42:21,956 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) | 2005-08-03 13:42:21,972 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) | 2005-08-03 13:42:21,972 INFO [STDOUT] at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81) | 2005-08-03 13:42:21,972 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) | 2005-08-03 13:42:21,972 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) | 2005-08-03 13:42:21,972 INFO [STDOUT] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) | 2005-08-03 13:42:21,988 INFO [STDOUT] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) | 2005-08-03 13:42:21,988 INFO [STDOUT] at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39) | 2005-08-03 13:42:21,988 INFO [STDOUT] at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:153) | 2005-08-03 13:42:21,988 INFO [STDOUT] at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59) | 2005-08-03 13:42:21,988 INFO [STDOUT] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) | 2005-08-03 13:42:22,003 INFO [STDOUT] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) | 2005-08-03 13:42:22,003 INFO [STDOUT] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) | 2005-08-03 13:42:22,003 INFO [STDOUT] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) | 2005-08-03 13:42:22,003 INFO [STDOUT] at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856) | 2005-08-03 13:42:22,003 INFO [STDOUT] at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744) | 2005-08-03 13:42:22,019 INFO [STDOUT] at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) | 2005-08-03 13:42:22,019 INFO [STDOUT] at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112) | 2005-08-03 13:42:22,019 INFO [STDOUT] at java.lang.Thread.run(Thread.java:595) | - Is this a bug in the SoapFactoryImpl from Jboss (when I test the jaxb-codesegment without jboss everything works fine)? - Is there an other way to integrate jaxb-binding in jboss? thanx Florian View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3888162#3888162 Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3888162 ------------------------------------------------------- SF.Net email is sponsored by: Discover Easy Linux Migration Strategies from IBM. Find simple to follow Roadmaps, straightforward articles, informative Webcasts and more! Get everything you need to get up to speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click _______________________________________________ JBoss-user mailing list JBoss-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jboss-user