IBM webMethods Hybrid Integration

IBM webMethods Hybrid Integration

Join this online group to communicate across IBM product users and experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.

 View Only
  • 1.  soapRPC with Object parameters

    Posted Tue November 21, 2006 03:22 PM

    I’m calling a WebSphere web service written by a vendor using soapRPC. The method requires 2 HashMap fields as input parameters. I created the HashMap fields in Java and passed back to webMethods as Objects, but when I pass them into the soapRPC call, I get the following error. Does soapRPC not handle parameters that are objects?

      <?xml version='1.0' encoding='UTF-8'?> 
    <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:n1="http://www.webmethods.com/package/java.lang/" xmlns:h="http://www.bricsnet.com/connector-1.4/headers_ns.xsd"><soap:Header><h:overflow soap:mustUnderstand="false">false</h:overflow></soap:Header><soap:Body soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><soap:Fault><faultcode>soap:Server</faultcode><faultstring>could not find operation corresponding to getObjectList(java.lang.String,java.lang.String). log MAPPING events to check that client-side map files are being read.</faultstring><detail><stacktrace>java.lang.NoSuchMethodException: could not find operation corresponding to getObjectList(java.lang.String,java.lang.String). log MAPPING events to check that client-side map files are being read.
    at electric.util.reflect.OperationLookup.newNoSuchMethodException(Unknown Source)
    at electric.util.reflect.OperationLookup.getOperations(Unknown Source)
    at electric.util.reflect.OperationLookup.getOperation(Unknown Source)
    at electric.util.reflect.OperationLookup.getOperation(Unknown Source)
    at electric.soap.local.handlers.service.rpc.RPCOperationLookup.getOperation(Unknown Source)
    at electric.soap.local.handlers.service.SOAPToServiceHandler.invoke(Unknown Source)
    at electric.soap.local.handlers.service.SOAPToServiceHandler.handle(Unknown Source)
    at electric.soap.security.handlers.SecurityHandler.handle(Unknown Source)
    at electric.soap.handlers.interceptor.SOAPInterceptorHandler.handle(Unknown Source)
    at electric.soap.routing.RoutingHandler.handle(Unknown Source)
    at electric.soap.handlers.logging.SOAPLoggingHandler.handle(Unknown Source)
    at electric.soap.handlers.setup.SetupHandler.handle(Unknown Source)
    at electric.soap.http.handler.HTTPToSOAP.service(Unknown Source)
    at electric.server.http.ServletServer.service(Unknown Source)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1284)
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:674)
    at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:89)
    at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:1924)
    at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:89)
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:472)
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:411)
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:288)
    at com.ibm.ws.ssl.channel.impl.SSLConnectionLink.determineNextChannel(SSLConnectionLink.java:950)
    at com.ibm.ws.ssl.channel.impl.SSLConnectionLink$MyReadCompletedCallback.complete(SSLConnectionLink.java:582)
    at com.ibm.ws.ssl.channel.impl.SSLReadServiceContext$SSLReadCompletedCallback.complete(SSLReadServiceContext.java:1701)
    at com.ibm.ws.tcp.channel.impl.WorkQueueManager.requestComplete(WorkQueueManager.java(Compiled Code))
    at com.ibm.ws.tcp.channel.impl.WorkQueueManager.attemptIO(WorkQueueManager.java(Compiled Code))
    at com.ibm.ws.tcp.channel.impl.WorkQueueManager.workerRun(WorkQueueManager.java(Compiled Code))
    at com.ibm.ws.tcp.channel.impl.WorkQueueManager$Worker.run(WorkQueueManager.java(Compiled Code))
    at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java(Compiled Code))
    </stacktrace></detail><tme:exception xmlns:tme="http://www.webmethods.com/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><name>java.lang.NoSuchMethodException</name><object xsi:type="n1:NoSuchMethodException"><detailMessage>could not find operation corresponding to getObjectList(java.lang.String,java.lang.String). log MAPPING events to check that client-side map files are being read.</detailMessage></object></tme:exception></soap:Fault></soap:Body></soap:Envelope>

    #soa
    #API-Management
    #webMethods


  • 2.  RE: soapRPC with Object parameters

    Posted Tue November 21, 2006 03:52 PM

    The server is complaining about “…could not find operation corresponding to getObjectList…” Is that the name of the operation you’re trying to call?

    Can you post your SOAP request?

    Is there any flexibility on the server side to switch things to not use SOAP-RPC? There a many reasons for not using SOAP-RPC which have been covered in various posts.


    #soa
    #webMethods
    #API-Management


  • 3.  RE: soapRPC with Object parameters

    Posted Tue November 21, 2006 10:17 PM

    Also, it appears that webMethods Glue is in use somewhere in the process (hence the “electric.xml.*” references in the stacktrace).

    How is Glue being used? It is installed as a web service agent in Websphere?

    Mark


    #soa
    #API-Management
    #webMethods