Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

WAS 7 Problem: javax.xml.soap.SOAPException

351 views
Skip to first unread message

karla night

unread,
Oct 30, 2009, 8:07:53 AM10/30/09
to
Hello,
I came across a problem while running an EJB3 application on WebSphere v7.
Firstly, I think it would be useful to mention that the application works fine on JBoss, so I suppose it is ok and the problem is in some fine setting of the WAS.
This is the piece of code generation the exception:

private SOAPConnectionFactory soapConnFactory;
private SOAPConnection connection;
...
soapConnFactory = SOAPConnectionFactory.newInstance();

connection = soapConnFactory.createConnection();
..

SOAPMessage replyMsg = connection.call(message, endpoint.getEndpointString());
...

The exception stack trace:
2009-10-30 13:56:00,046 ERROR com.lb.jee.ejb.session.BalancerComponentBean - Error sending message
com.lb.caller.CallerException: java.lang.reflect.InvocationTargetException
at com.lb.caller.soa.SOACaller.send(SOACaller.java:98)
at com.lb.jee.ejb.session.BalancerComponentBean.process(BalancerComponentBean.java:92)
at com.jee.session.EJSLocal0SLBalancerComponentBean_faaf0244.process(EJSLocal0SLBalancerComponentBean_faaf0244.java)
at com.jee.mdb.DefaultMessageListenerBean.onMessage(DefaultMessageListenerBean.java:28)
at com.ibm.ejs.container.MessageEndpointHandler.invokeMdbMethod(MessageEndpointHandler.java:1092)
at com.ibm.ejs.container.MessageEndpointHandler.invoke(MessageEndpointHandler.java:777)
at $Proxy31.onMessage(Unknown Source)
at org.apache.activemq.ra.MessageEndpointProxy$MessageEndpointAlive.onMessage(MessageEndpointProxy.java:123)
at org.apache.activemq.ra.MessageEndpointProxy.onMessage(MessageEndpointProxy.java:64)
at org.apache.activemq.ActiveMQSession.run(ActiveMQSession.java:770)
at org.apache.activemq.ra.ServerSessionImpl.run(ServerSessionImpl.java:169)
at com.ibm.ejs.j2c.work.WorkProxy.run(WorkProxy.java:399)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1527)
Caused by: javax.xml.soap.SOAPException: java.lang.reflect.InvocationTargetException
at com.ibm.ws.webservices.engine.soap.SOAPConnectionImpl.callJAXWSDispatch(SOAPConnectionImpl.java:421)
at com.ibm.ws.webservices.engine.soap.SOAPConnectionImpl.call(SOAPConnectionImpl.java:192)
at com.ibm.ws.webservices.engine.soap.SOAPConnectionImpl.call(SOAPConnectionImpl.java:163)
at com.lb.caller.soa.SOACaller.send(SOACaller.java:84)
... 12 more
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:45)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:599)
at com.ibm.ws.webservices.engine.soap.SOAPConnectionImpl.callJAXWSDispatch(SOAPConnectionImpl.java:416)
... 15 more
Caused by: javax.xml.soap.SOAPException: javax.xml.ws.soap.SOAPFaultException: XML mapping error #BusinessNotFound: 'The Business with identifier ''AU'' does not exist'
at com.ibm.ws.webservices.engine.xmlsoap.saaj13only.SOAPConnectionJAXWS.call(SOAPConnectionJAXWS.java:72)
... 20 more
Caused by: javax.xml.ws.soap.SOAPFaultException: XML mapping error #BusinessNotFound: 'The Business with identifier ''AU'' does not exist'
at org.apache.axis2.jaxws.marshaller.impl.alt.MethodMarshallerUtils.createSystemException(MethodMarshallerUtils.java:1249)
at org.apache.axis2.jaxws.client.dispatch.BaseDispatch.getFaultResponse(BaseDispatch.java:447)
at org.apache.axis2.jaxws.client.dispatch.BaseDispatch.invoke(BaseDispatch.java:166)
at com.ibm.ws.webservices.engine.xmlsoap.saaj13only.SOAPConnectionJAXWS.call(SOAPConnectionJAXWS.java:68)
... 20 more


From all the search I made it seems that there is something like a conflict between classes with the same name in different package...
But I find it difficult to fix it.
I forgot I have not changed the \lib content of the application server - I mean no new .jars added.
Can you give me a hand - everything is appreciated - advices, resources....

Akash Bharti

unread,
Oct 30, 2009, 8:07:53 AM10/30/09
to
Can you please provide little more error trace?

Thanks
Akash

karla night

unread,
Oct 30, 2009, 8:46:41 AM10/30/09
to
Here you are:

2009-10-30 14:36:34,921 TRACE com.lb.caller.soa.SOACaller-260 - [SOACaller-260.send] exit
2009-10-30 14:36:34,921 ERROR com.lb.jee.ejb.session.BalancerComponentBean - Error sending message

2009-10-30 14:36:34,968 ERROR com.jee.mdb.DefaultMessageListenerBean - [BALANCER-onMessage] msgId=, applerr, EN014: Unexpected Error. Message queued back,
javax.ejb.EJBTransactionRolledbackException: nested exception is: javax.ejb.EJBException: See nested exception; nested exception is: com.jee.exception.ComponentException: Error sending message
javax.ejb.EJBException: See nested exception; nested exception is: com.jee.exception.ComponentException: Error sending message
com.jee.exception.ComponentException: Error sending message
at com.lb.jee.ejb.session.BalancerComponentBean.process(BalancerComponentBean.java:96)


at com.jee.session.EJSLocal0SLBalancerComponentBean_faaf0244.process(EJSLocal0SLBalancerComponentBean_faaf0244.java)
at com.jee.mdb.DefaultMessageListenerBean.onMessage(DefaultMessageListenerBean.java:28)
at com.ibm.ejs.container.MessageEndpointHandler.invokeMdbMethod(MessageEndpointHandler.java:1092)
at com.ibm.ejs.container.MessageEndpointHandler.invoke(MessageEndpointHandler.java:777)
at $Proxy31.onMessage(Unknown Source)
at org.apache.activemq.ra.MessageEndpointProxy$MessageEndpointAlive.onMessage(MessageEndpointProxy.java:123)
at org.apache.activemq.ra.MessageEndpointProxy.onMessage(MessageEndpointProxy.java:64)
at org.apache.activemq.ActiveMQSession.run(ActiveMQSession.java:770)
at org.apache.activemq.ra.ServerSessionImpl.run(ServerSessionImpl.java:169)
at com.ibm.ejs.j2c.work.WorkProxy.run(WorkProxy.java:399)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1527)

Caused by: com.lb.caller.CallerException: java.lang.reflect.InvocationTargetException


at com.lb.caller.soa.SOACaller.send(SOACaller.java:98)
at com.lb.jee.ejb.session.BalancerComponentBean.process(BalancerComponentBean.java:92)

... 11 more


Caused by: javax.xml.soap.SOAPException: java.lang.reflect.InvocationTargetException
at com.ibm.ws.webservices.engine.soap.SOAPConnectionImpl.callJAXWSDispatch(SOAPConnectionImpl.java:421)
at com.ibm.ws.webservices.engine.soap.SOAPConnectionImpl.call(SOAPConnectionImpl.java:192)
at com.ibm.ws.webservices.engine.soap.SOAPConnectionImpl.call(SOAPConnectionImpl.java:163)
at com.lb.caller.soa.SOACaller.send(SOACaller.java:84)
... 12 more
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:45)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:599)
at com.ibm.ws.webservices.engine.soap.SOAPConnectionImpl.callJAXWSDispatch(SOAPConnectionImpl.java:416)
... 15 more
Caused by: javax.xml.soap.SOAPException: javax.xml.ws.soap.SOAPFaultException: XML mapping error #BusinessNotFound: 'The Business with identifier ''AU'' does not exist'
at com.ibm.ws.webservices.engine.xmlsoap.saaj13only.SOAPConnectionJAXWS.call(SOAPConnectionJAXWS.java:72)
... 20 more
Caused by: javax.xml.ws.soap.SOAPFaultException: XML mapping error #BusinessNotFound: 'The Business with identifier ''AU'' does not exist'
at org.apache.axis2.jaxws.marshaller.impl.alt.MethodMarshallerUtils.createSystemException(MethodMarshallerUtils.java:1249)
at org.apache.axis2.jaxws.client.dispatch.BaseDispatch.getFaultResponse(BaseDispatch.java:447)
at org.apache.axis2.jaxws.client.dispatch.BaseDispatch.invoke(BaseDispatch.java:166)
at com.ibm.ws.webservices.engine.xmlsoap.saaj13only.SOAPConnectionJAXWS.call(SOAPConnectionJAXWS.java:68)
... 20 more

javax.ejb.EJBException: See nested exception; nested exception is: com.jee.exception.ComponentException: Error sending message
Caused by: com.jee.exception.ComponentException: Error sending message
at com.lb.jee.ejb.session.BalancerComponentBean.process(BalancerComponentBean.java:96)


at com.jee.session.EJSLocal0SLBalancerComponentBean_faaf0244.process(EJSLocal0SLBalancerComponentBean_faaf0244.java)
at com.jee.mdb.DefaultMessageListenerBean.onMessage(DefaultMessageListenerBean.java:28)
at com.ibm.ejs.container.MessageEndpointHandler.invokeMdbMethod(MessageEndpointHandler.java:1092)
at com.ibm.ejs.container.MessageEndpointHandler.invoke(MessageEndpointHandler.java:777)
at $Proxy31.onMessage(Unknown Source)
at org.apache.activemq.ra.MessageEndpointProxy$MessageEndpointAlive.onMessage(MessageEndpointProxy.java:123)
at org.apache.activemq.ra.MessageEndpointProxy.onMessage(MessageEndpointProxy.java:64)
at org.apache.activemq.ActiveMQSession.run(ActiveMQSession.java:770)
at org.apache.activemq.ra.ServerSessionImpl.run(ServerSessionImpl.java:169)
at com.ibm.ejs.j2c.work.WorkProxy.run(WorkProxy.java:399)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1527)

Caused by: com.lb.caller.CallerException: java.lang.reflect.InvocationTargetException


at com.lb.caller.soa.SOACaller.send(SOACaller.java:98)
at com.lb.jee.ejb.session.BalancerComponentBean.process(BalancerComponentBean.java:92)

... 11 more


Caused by: javax.xml.soap.SOAPException: java.lang.reflect.InvocationTargetException
at com.ibm.ws.webservices.engine.soap.SOAPConnectionImpl.callJAXWSDispatch(SOAPConnectionImpl.java:421)
at com.ibm.ws.webservices.engine.soap.SOAPConnectionImpl.call(SOAPConnectionImpl.java:192)
at com.ibm.ws.webservices.engine.soap.SOAPConnectionImpl.call(SOAPConnectionImpl.java:163)
at com.lb.caller.soa.SOACaller.send(SOACaller.java:84)
... 12 more
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:45)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:599)
at com.ibm.ws.webservices.engine.soap.SOAPConnectionImpl.callJAXWSDispatch(SOAPConnectionImpl.java:416)
... 15 more
Caused by: javax.xml.soap.SOAPException: javax.xml.ws.soap.SOAPFaultException: XML mapping error #BusinessNotFound: 'The Business with identifier ''AU'' does not exist'
at com.ibm.ws.webservices.engine.xmlsoap.saaj13only.SOAPConnectionJAXWS.call(SOAPConnectionJAXWS.java:72)
... 20 more
Caused by: javax.xml.ws.soap.SOAPFaultException: XML mapping error #BusinessNotFound: 'The Business with identifier ''AU'' does not exist'
at org.apache.axis2.jaxws.marshaller.impl.alt.MethodMarshallerUtils.createSystemException(MethodMarshallerUtils.java:1249)
at org.apache.axis2.jaxws.client.dispatch.BaseDispatch.getFaultResponse(BaseDispatch.java:447)
at org.apache.axis2.jaxws.client.dispatch.BaseDispatch.invoke(BaseDispatch.java:166)
at com.ibm.ws.webservices.engine.xmlsoap.saaj13only.SOAPConnectionJAXWS.call(SOAPConnectionJAXWS.java:68)
... 20 more

javax.ejb.EJBTransactionRolledbackException: nested exception is: javax.ejb.EJBException: See nested exception; nested exception is: com.jee.exception.ComponentException: Error sending message
Caused by: javax.ejb.EJBException: See nested exception; nested exception is: com.jee.exception.ComponentException: Error sending message
Caused by: com.jee.exception.ComponentException: Error sending message
at com.lb.jee.ejb.session.BalancerComponentBean.process(BalancerComponentBean.java:96)


at com.jee.session.EJSLocal0SLBalancerComponentBean_faaf0244.process(EJSLocal0SLBalancerComponentBean_faaf0244.java)
at com.jee.mdb.DefaultMessageListenerBean.onMessage(DefaultMessageListenerBean.java:28)
at com.ibm.ejs.container.MessageEndpointHandler.invokeMdbMethod(MessageEndpointHandler.java:1092)
at com.ibm.ejs.container.MessageEndpointHandler.invoke(MessageEndpointHandler.java:777)
at $Proxy31.onMessage(Unknown Source)
at org.apache.activemq.ra.MessageEndpointProxy$MessageEndpointAlive.onMessage(MessageEndpointProxy.java:123)
at org.apache.activemq.ra.MessageEndpointProxy.onMessage(MessageEndpointProxy.java:64)
at org.apache.activemq.ActiveMQSession.run(ActiveMQSession.java:770)
at org.apache.activemq.ra.ServerSessionImpl.run(ServerSessionImpl.java:169)
at com.ibm.ejs.j2c.work.WorkProxy.run(WorkProxy.java:399)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1527)

Caused by: com.lb.caller.CallerException: java.lang.reflect.InvocationTargetException


at com.lb.caller.soa.SOACaller.send(SOACaller.java:98)
at com.lb.jee.ejb.session.BalancerComponentBean.process(BalancerComponentBean.java:92)

... 11 more

karla night

unread,
Oct 30, 2009, 9:18:48 AM10/30/09
to
Let me give you some more detail.
I do not know whether I'm into the right direction, but here is what happens:
The soap message is successfully sent too its destination.
But the destination answers with FAULT, because of its business logic - and this is fine to me.
But then WebSphere's implementation (of SOAP stuff) decides that there needs to be thrown an exception - which is not ok for me :)
And 2 - I do not know what causes the java.lang.reflect.InvocationTargetException exception - I read that the reason for it is a something-like-conflict of class names, which implies probably a doubled implementation?
Is there any way to force the usage of specific implementation and how?
:) Am I right at all?

Thanks

Akash Bharti

unread,
Oct 30, 2009, 9:38:14 AM10/30/09
to
From the logs, it looks to me, it wasnt able to sent message :

ERROR com.lb.jee.ejb.session.BalancerComponentBean - Error sending message

because of

BusinessNotFound: 'The Business with identifier ''AU'' does not exist'


Thanks
Akash

karla night

unread,
Oct 30, 2009, 9:54:04 AM10/30/09
to
Again I want to remind - under JBoss it is working just fine!

karla night

unread,
Oct 30, 2009, 9:50:52 AM10/30/09
to
No! The SOAP message is send, what you noticed is that another message (the reply message) could not be sent to a response queue, because there is no such message, because the WAS raised an exception, instead of giving the the reply from the destination.
This is irrelevant. What matters is why WAS raises an exception when it receives an FAULT reply.
0 new messages