Hi, I am very new to Axis, SOAP etc. I am constructing a client to consume
a webservice (Amazon webservice). The server on which the client is to
run, provides me with access to Axis 1.0, and I have no control over making
them use higher versions of Axis. Using the WSDL available at:
http://webservices.amazon.com/AWSECommerceService/US/AWSECommerceService.wsdl And the WSDL2Java from Axis 1.0 I generated the stub classes. I am getting following error when the client code tries to consume the
service: org.xml.sax.SAXException: SimpleDeserializer encountered a child
element, which is NOT expected, in something it was trying to deserialize. at
org.apache.axis.encoding.ser.SimpleDeserializer.onStartChild(SimpleDeserializer.java:188) at
org.apache.axis.encoding.DeserializationContextImpl.startElement(DeserializationContextImpl.java:893) at
org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:200) at
org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:684) at
org.apache.axis.message.RPCElement.deserialize(RPCElement.java:241) at
org.apache.axis.message.RPCElement.getParams(RPCElement.java:265) at
org.apache.axis.client.Call.invoke(Call.java:1871) at
org.apache.axis.client.Call.invoke(Call.java:1777) at
org.apache.axis.client.Call.invoke(Call.java:1315) at
com.amazon.xml.AWSECommerceService.AWSECommerceServiceBindingStub.itemLookup(AWSECommerceServiceBindingStub.java:1322) at
net.concordusa.bridge.amazon.WebCTAmazon.getItem(WebCTAmazon.java:119) at
net.concordusa.bridge.amazon.WebCTAmazon.getDisplay(WebCTAmazon.java:65) at
net.concordusa.bridge.amazon.WebCTAmazon.getHTML(WebCTAmazon.java:55) at
com.masterfileapi.bridge.webct.vista.powerlink.amazon.authentication.WebCTAmazonAuthentication.commit(WebCTAmazonAuthentication.java:41) at
com.webct.platform.coreservice.security.authentication.module.ProxyAuthenticationModule.commit(ProxyAuthenticationModule.java:182) at
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at
java.lang.reflect.Method.invoke(Method.java:324) at
javax.security.auth.login.LoginContext.invoke(LoginContext.java:675) at
javax.security.auth.login.LoginContext.access$000(LoginContext.java:129) at
javax.security.auth.login.LoginContext$4.run(LoginContext.java:610) at
java.security.AccessController.doPrivileged(Native Method) at
javax.security.auth.login.LoginContext.invokeModule(LoginContext.java:607) at
javax.security.auth.login.LoginContext.login(LoginContext.java:535) at
com.webct.platform.coreservice.security.authentication.common.VistaAgent.authenticate(VistaAgent.java:118) at
com.webct.platform.coreservice.security.authentication.common.VistaAuthenticationManager.getAgent(VistaAuthenticationManager.java:226) at
com.webct.platform.coreservice.security.authentication.common.AuthenticationHandler.handleRequest(AuthenticationHandler.java:155) at
com.webct.platform.tools.proxytool.actions.PTLaunchAction.perform(PTLaunchAction.java:203) at
org.apache.struts.action.Action.execute(Action.java:420) at
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484) at
com.webct.platform.coreservice.action.RequestProcessor.process(RequestProcessor.java:194) at
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482) at
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507) at
javax.servlet.http.HttpServlet.service(HttpServlet.java:740) at
javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at
weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:971) at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:402) at
weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:28) at
weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27) at
com.webct.platform.coreservice.action.CacheControlFilter.doFilter(CacheControlFilter.java:68) at
weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27) at
com.webct.platform.coreservice.action.RequestCleanupFilter.doFilter(RequestCleanupFilter.java:96) at
weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27) at
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6363) at
weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317) at
weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118) at
weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3635) at
weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2585) at
weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197) at
weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170) My client side code from WebCTAmazon.java: private ItemType3[] getItem(String isbn) throws Exception { AWSECommerceService service = new
AWSECommerceServiceLocator(); AWSECommerceServicePortType port = service.getAWSECommerceServicePort(); ItemLookupRequest request = new ItemLookupRequest(); request.setResponseGroup(RESPONSE_GROUPS); request.setItemId(new String[]{isbn}); request.setIdType(idType); ItemLookup itemLookup = new ItemLookup(); itemLookup.setSubscriptionId(subscriptionId); itemLookup.setAssociateTag(associateId); try { itemLookup.setRequest(new
ItemLookupRequest[]{request}); } catch(Exception e){} ItemLookupResponse response = null; response = port.itemLookup(itemLookup); ItemType3 items [] = response.getItems()[0].getItem(); Errors errors = response.getItems()[0].getRequest().getErrors(); if (errors != null) throw new Exception(errors.getError()[0].getMessage()); return items; } The error causing line, i.e., line 119 is response = port.itemLookup(itemLookup); Please Help!!! Thanks in advance, Swapna |
- SAXException SimpleDeserializer Swapna Gupta
- Re: SAXException SimpleDeserializer Anne Thomas Manes