|
Consuming Web service in Application on WAS
|
 |
This question is not answered.
|
|
Replies:
1
-
Pages:
1
-
Last Post:
Oct 8, 2009 4:34 AM
Last Post By: Krishna Jaladhi
|
|
|
Posts:
46
Registered:
Oct 14, 2008 06:46:58 AM
|
|
|
|
Consuming Web service in Application on WAS
Posted:
Mar 24, 2009 09:21:03 AM
|
|
|
|
Hi,
We are currently migrating from WAS v5.1 to WAS v6.1. In our existing producution setup there were so many external(intranet) webservice calls which are deployed in WebSphere Interchange Server.
Webservices are working in 5.1 env. but the same call is failing in WAS v6.1 env with cannot parse message. ICS is saying the input soap format is wrong
actually the ICS system is getting the request and rejecting it since the msg is not in expected format.
When we send the request from WAS v5.1, soap msg is like this
....
<CustomerDetails href="#id1"/> <AddressDetails href="#id2"/> <ServiceDetails href="#id3"/> <AccountDetails href="#id4"/>
.....
But the same request if we sent from WAS v6.1, those attributes name are converted to camel-Case like below
........
<serviceDetails href="#id1"/> <accountDetails href="#id2"/> <addressDetails href="#id3"/> <customerDetails href="#id4"/>
..........
Is it a problem with server? i read somewhere WAS v5.1 uses SOAP 1.1 and WAS v6.1 uses SOAP 1.2, is there any problem because of this? i'm not getting a clue....
when i enable trace in WAS, i can see the following error msgs
java.lang.ClassNotFoundException: org.tempuri.CreateOrder.ServiceClassBroadBandVPNObj_Helper
at java.lang.Class.forNameImpl(Native Method)
at java.lang.Class.forName(Class.java:163)
at com.ibm.ws.webservices.engine.utils.ClassUtils$2.run(ClassUtils.java:258)
at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:63)
at com.ibm.ws.webservices.engine.utils.ClassUtils.loadClass(ClassUtils.java:210)
at com.ibm.ws.webservices.engine.utils.ClassUtils.forName(ClassUtils.java:136)
at com.ibm.ws.webservices.engine.description.TypeDesc.getTypeDescForClass(TypeDesc.java:214)
at com.ibm.ws.webservices.wsif.providers.soap.ser.BeanDescLite.getBeanDescForClass(BeanDescLite.java:112)
at com.ibm.ws.webservices.wsif.providers.soap.ser.BeanSerializerFactory.<init>(BeanSerializerFactory.java:103)
at com.ibm.ws.webservices.wsif.providers.soap.WSIFOperation_SOAP.registerDynamicTypes(WSIFOperation_SOAP.java:2997)
at com.ibm.ws.webservices.wsif.providers.soap.WSIFOperation_SOAP.prepare(WSIFOperation_SOAP.java:2751)
at com.ibm.ws.webservices.wsif.providers.soap.WSIFOperation_SOAP.invokeRequestResponseOperation(WSIFOperation_SOAP.java:1666)
at com.ibm.ws.webservices.wsif.providers.soap.WSIFOperation_SOAP.executeRequestResponseOperation(WSIFOperation_SOAP.java:1076)
at com.bsnl.wpsc.eai.oms.CreateOrderPortTypeProxy.execute(CreateOrderPortTypeProxy.java:689)
.............................
followed by
3/24/09 9:29:25:390 IST 00000041 TypeDesc 1 com.ibm.ws.webservices.engine.description.TypeDesc getTypeDescForClass getTypeDescForClass caught exception - processing continues
java.lang.ClassNotFoundException: com.ibm.wsif.format.jca.WSIFFormatPartImpl_Helper
at java.lang.Class.forNameImpl(Native Method)
at java.lang.Class.forName(Class.java:163)
at com.ibm.ws.webservices.engine.utils.ClassUtils$2.run(ClassUtils.java:258)
at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:63)
at com.ibm.ws.webservices.engine.utils.ClassUtils.loadClass(ClassUtils.java:210)
at com.ibm.ws.webservices.engine.utils.ClassUtils.forName(ClassUtils.java:136)
at com.ibm.ws.webservices.engine.description.TypeDesc.getTypeDescForClass(TypeDesc.java:214)
at com.ibm.ws.webservices.engine.encoding.utils.BeanDesc.getBeanDescForClass(BeanDesc.java:146)
at com.ibm.ws.webservices.engine.encoding.utils.BeanDesc._prime(BeanDesc.java:413)
at com.ibm.ws.webservices.wsif.providers.soap.ser.BeanDescLite.getBeanDescForClass(BeanDescLite.java:142)
at com.ibm.ws.webservices.wsif.providers.soap.ser.BeanSerializerFactory.<init>(BeanSerializerFactory.java:103)
at com.ibm.ws.webservices.wsif.providers.soap.WSIFOperation_SOAP.registerDynamicTypes(WSIFOperation_SOAP.java:2997)
at com.ibm.ws.webservices.wsif.providers.soap.WSIFOperation_SOAP.prepare(WSIFOperation_SOAP.java:2751)
at com.ibm.ws.webservices.wsif.providers.soap.WSIFOperation_SOAP.invokeRequestResponseOperation(WSIFOperation_SOAP.java:1666)
at com.ibm.ws.webservices.wsif.providers.soap.WSIFOperation_SOAP.executeRequestResponseOperation(WSIFOperation_SOAP.java:1076)
...............................
In this ServiceClassBroadBandVPNObj is one of the BO in the client proxy. But it is checking something ServiceClassBroadBandVPNObj_Helper which is not exist in client proxy
and com.ibm.wsif.format.jca.WSIFFormatPartImpl class can be found in wsatlib.jar, but it is checking for something com.ibm.wsif.format.jca.WSIFFormatPartImpl_Helper.
What might be the issue?
Thanks and Regards
Selva
|
|
Posts:
2
Registered:
May 13, 2006 10:14:17 PM
|
|
|
|
Re: Consuming Web service in Application on WAS
Posted:
Oct 08, 2009 04:34:53 AM
in response to: indra_selva's post
|
|
|
|
This issue has been fixed by APAR PK85490
|
|
|
|
|