[JBossWS] - Error creating SOAPFault message, no NamespaceRegistry
by bcguitar33
Hi there,
I'm developing a simple jboss endpoint and I'm having trouble. I've used WStools to generate the necessary files.
Things work fine when the user provides the correct input, and things also work fine (the server sends an appropriate fault) when the user sends bad input such as an unsupported function name or the wrong arguments.
However, if the user sends a bad SOAP request entirely, such as the tags don't match up, the server generates an error and doesn't send the client anything back at all. I would like this to generate a fault to the client, instead of merely being silent. Does anyone have any idea as to why this may be happening? Here's the jboss stack trace:
13:29:47,229 ERROR [STDERR] [Fatal Error] :4:60: The end-tag for element type "CustomerID" must end with a '>' delimiter.
13:29:47,242 ERROR [SOAPFaultExceptionHelper] SOAP request exception
java.io.IOException: org.xml.sax.SAXParseException: The end-tag for element type "CustomerID" must end with a '>' delimiter.
at org.jboss.util.xml.DOMUtils.parse(DOMUtils.java:110)
at org.jboss.ws.soap.MessageFactoryImpl.createSOAPEnvelope(MessageFactoryImpl.java:238)
at org.jboss.ws.soap.MessageFactoryImpl.createMessageInternal(MessageFactoryImpl.java:227)
at org.jboss.ws.soap.MessageFactoryImpl.createMessage(MessageFactoryImpl.java:157)
at org.jboss.ws.server.ServiceEndpoint.handleRequest(ServiceEndpoint.java:215)
at org.jboss.ws.server.ServiceEndpointServlet.doPost(ServiceEndpointServlet.java:120)
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(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
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:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
at java.lang.Thread.run(Thread.java:595)
13:29:47,323 ERROR [SOAPFaultExceptionHelper] Error creating SOAPFault message
org.jboss.ws.WSException: Cannot obtain NamespaceRegistry, because there is no SOAPMessage associated with this context
at org.jboss.ws.soap.SOAPMessageContextImpl.getNamespaceRegistry(SOAPMessageContextImpl.java:140)
at org.jboss.ws.soap.SOAPMessageContextImpl.getSerializationContext(SOAPMessageContextImpl.java:130)
at org.jboss.ws.jaxrpc.SOAPFaultExceptionHelper.toSOAPMessage(SOAPFaultExceptionHelper.java:223)
at org.jboss.ws.jaxrpc.SOAPFaultExceptionHelper.exceptionToFaultMessage(SOAPFaultExceptionHelper.java:177)
at org.jboss.ws.server.ServiceEndpoint.handleRequest(ServiceEndpoint.java:248)
at org.jboss.ws.server.ServiceEndpointServlet.doPost(ServiceEndpointServlet.java:120)
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(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
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:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
at java.lang.Thread.run(Thread.java:595)
13:29:47,380 ERROR [AbstractServlet] Error processing web service request
javax.xml.rpc.JAXRPCException: Cannot create SOAPFault message for: javax.xml.rpc.soap.SOAPFaultException: java.io.IOException: org.xml.sax.SAXParseException: The end-tag for element type "CustomerID" must end with a '>' delimiter.
at org.jboss.ws.jaxrpc.SOAPFaultExceptionHelper.exceptionToFaultMessage(SOAPFaultExceptionHelper.java:183)
at org.jboss.ws.server.ServiceEndpoint.handleRequest(ServiceEndpoint.java:248)
at org.jboss.ws.server.ServiceEndpointServlet.doPost(ServiceEndpointServlet.java:120)
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(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
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:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
at java.lang.Thread.run(Thread.java:595)
13:29:47,388 ERROR [[SVAEndpoint]] Servlet.service() for servlet SVAEndpoint threw exception
javax.xml.rpc.JAXRPCException: Cannot create SOAPFault message for: javax.xml.rpc.soap.SOAPFaultException: java.io.IOException: org.xml.sax.SAXParseException: The end-tag for element type "CustomerID" must end with a '>' delimiter.
at org.jboss.ws.jaxrpc.SOAPFaultExceptionHelper.exceptionToFaultMessage(SOAPFaultExceptionHelper.java:183)
at org.jboss.ws.server.ServiceEndpoint.handleRequest(ServiceEndpoint.java:248)
at org.jboss.ws.server.ServiceEndpointServlet.doPost(ServiceEndpointServlet.java:120)
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(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
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:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
at java.lang.Thread.run(Thread.java:595)
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4011484#4011484
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4011484
19 years, 2 months
[JBossWS] - Architecture question
by rlamie
Hello,
I'd know your point of view of the current needs expressed by a customer of mine.
>From an existing workflow engine (JBoss jBPM), he'd like to consume web services from another company (so-called A). Moreover, the company A could call our own web services (not yet implemented), as a delayed response to our own calls.
I imagine the following strategy :
Company A <------ws-------> Application X to be developped <---------> JBoss jBPM
My questions :
- Application X should be isolated as a sort of gateway application ?
- What is the best choice :
1/ Application X is a simple webapp with any soap stacks (xfire, jax-ws 2.1, ...). Communication between Application X and JBoss jBPM is based on web service
2/ Application X is an ejb application (jBoss), and then, the application must(?) rely on jBoss WS. Communication between Application X and jBoss JBPM is based on remote ejbs.
3/ does jBoss support jax-ws 2.1 ?
Thank you a lot for your support.
R.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4011296#4011296
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4011296
19 years, 2 months
[JBossWS] - Re: Problems with Jboss and Sun's 1.6 JDK
by akirainoue
Can you share how to implement web service client stub as an EJB, generated by sun jwsdp (wscompile) in jboss?
My EJB is calling web service to 3rd party provider. The client stub is generated through Sun's jwsdp. However I encountered the following exception:
java.lang.ClassCastException: org.jboss.ws.soap.SOAPMessageImpl
at com.sun.xml.rpc.client.StubBase._postSendingHook(StubBase.java:231)
at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:324)
I added the following jar from jwsdp to the lib dir:
FastInfoset.jar
jaxrpc-impl.jar
jaxrpc-spi.jar
jsr173_api.jar
saaj-impl.jar
I am running jboss-4.0.5.GA.
How can I resolve the problem? Can the stub generated by jwsdp be used in JBoss or any application other the Sun?
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4011153#4011153
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4011153
19 years, 2 months