webMethods

webMethods

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.  Reciving error while invoking a web service.

    Posted Sun January 20, 2013 06:21 AM

    Hello All

    I am facing an issue when trying to invoke a web service.

    Funny thing is the same service works in QA with the same WSDL file but in Live its giving the below error:

    [ISS.0088.9112] An Exception was thrown in the server:[ISS.0088.9139] Output parameters do not conform to targetOutputSignature:
    errorCode=VV-002
    pathName=/impl:GetAccessoryListResponse/GetAccessoryListReturn/p558:statusCode
    errorMessage=[ISC.0082.9026] Undefined Object found

    errorCode=VV-002
    pathName=/impl:GetAccessoryListResponse/GetAccessoryListReturn/p558:statusText
    errorMessage=[ISC.0082.9026] Undefined Object found

    errorCode=VV-002
    pathName=/impl:GetAccessoryListResponse/GetAccessoryListReturn/p558:totalNoOfRecords
    errorMessage=[ISC.0082.9026] Undefined Object found

    errorCode=VV-002
    pathName=/impl:GetAccessoryListResponse/GetAccessoryListReturn/p558:recordsFetched
    errorMessage=[ISC.0082.9026] Undefined Object found.

    I am using 8.2.2 version currently.

    the data type of second field (statusText) is ‘string’ and rest has ‘int’ data type.
    From the error above suggests some mismatch in the fields/parameters in the output document compared to the one present in the web service which is being called.
    I tried changing the data type as suggested in other forums to ‘string’ for all the fields in the WSDL file before making the Web service descriptor but still facing the problem.

    Would you please let me know if you have resolved the issue earlier or plz let me know if you have any suggestions on the same.

    Any help is deeply appreciated.

    Best Regards
    MT


    #webMethods
    #Integration-Server-and-ESB


  • 2.  RE: Reciving error while invoking a web service.

    Posted Thu February 28, 2013 10:09 AM

    Hi,

    There are multiple issues that can cause this problem. One of them being the WSDL imported is an older version than the actual implementation at the back end server.

    I would recommend you calling the complete WSDL URL instead of using a WSDL file and re-importing the complete descriptor.

    Once you have it should work.

    Also bear in mind that your QA URL and PROD URL would be different so the port and the access bindings would be different which means that you cannot reuse the same WSDL for PROD and QA.

    Lemme know if this works.


    #Integration-Server-and-ESB
    #webMethods


  • 3.  RE: Reciving error while invoking a web service.

    Posted Thu February 28, 2013 10:55 AM

    Hi Sam

    Thanks for the reply.

    So if i understood your point correctly, you want me to directly call the back end service bypassing the webMethods IS to download the current WSDL of the service just to make sure i have the latest version and then re create the WSD descriptor with it.

    If yes then thats not possible as the back end service cannot be called from else where except the webMethods IS due to network connectivity restrictions.

    We have diffrent end points in QA and Live, and as you mentioned, the same service runs on diffrent servers and ports and hence we are hitting the service correctly in both environments.

    Let me know if i am missing your point.

    Regards
    MT


    #webMethods
    #Integration-Server-and-ESB


  • 4.  RE: Reciving error while invoking a web service.

    Posted Thu February 28, 2013 11:13 AM

    Not really. Let me explain in more detail.

    If you have a unix box, can you do a ping to the target server where your webService is hosted to see if connectivity exist between your IS and target service. E.g. if i have a webService end point which looks like the below

    https://www.ABCsolutionsUnited.co.za/vas/KINGbankdocumentsv100.asmx

    Now in webMethods you need to create a webService descriptor, in the next dialog box titled web Service Descriptor select consumer and WSDL URL → Enter a name and select a folder → Now the dialog box will come which says Enter the URL or select a local file here you insert

    https://www.ABCsolutionsUnited.co.za/vas/KINGbankdocumentsv100.asmx?WSDL

    and click Finish.

    Once you do this webMethods will get the components directly from the target server with the most updated descriptions.

    This way your WSDL will be from the actual end point server.

    Also as you said that "We have diffrent end points in QA and Live, and as you mentioned, the same service runs on diffrent servers and ports and hence we are hitting the service correctly in both environments. " - which means you need to call 2 separate WSDL URL(s) one for prod and one for QA.

    Also check the connectivity from your server is there to both the end points at QA and PROD.

    Hope this helps.


    #Integration-Server-and-ESB
    #webMethods


  • 5.  RE: Reciving error while invoking a web service.

    Posted Thu February 28, 2013 12:00 PM

    Hi Sam

    Well i did a ping and i am getting a response from the target server, telnet also works on the specified port and i am able to connect on the specific port and IP.

    But when i am giving the URL with ?WSDL at the end while creating the consumer WSD i am getting Connection Time out exception.
    This is strange!!

    Connectivity is established from both QA and Live webMethods servers.

    Any suggestions please…


    #webMethods
    #Integration-Server-and-ESB


  • 6.  RE: Reciving error while invoking a web service.

    Posted Thu February 28, 2013 12:23 PM

    Hi Mayank,

    This is pretty odd. If you are logged on to the UNIX physical box of your QA server and able to hit the target server’s IP address then i don’t see a problem.

    Okay i have a hunch need to confirm a few things:

    1. Check with your UNIX team if your URL’s host name is resolvable to an IP Address and vice versa. Sometimes instead of putting https://10.12.13:5555/vas/KINGbankdocumentsv100.asmx?WSDL in place of https://www.ABCsolutionsUnited.co.za/vas/KINGbankdocumentsv100.asmx?WSDL would work. i.e. the hostname might not be reachable.

    2. Also try using the webService with the IP address inplace of the hostname.

    Let me know if it works.

    To me this looks more like a connectivity issue from webMethods to your end server than anything else.


    #Integration-Server-and-ESB
    #webMethods


  • 7.  RE: Reciving error while invoking a web service.

    Posted Thu February 28, 2013 12:36 PM

    Hi Sam

    Well i already tried your suggestion in my last attempt by putting an IP instead of hostname.
    None the less this wont help as we had already included and mapped the hostname and the IP in the QA webMethod server’s host file.

    I had checked the connectivity on the IP and the host we have mapped it to in the host file and seems to be sound and connecting.

    So i believe this shouldnt be a network issue.

    The thing which baffles me is that we have the connectivity but still while creating WSD using the URL, i am getting Connection timed out but when i import the WSDL file with the same URL in the address and create a WSD, i am able to hit the service which throws Object not found error.


    #Integration-Server-and-ESB
    #webMethods


  • 8.  RE: Reciving error while invoking a web service.

    Posted Thu February 28, 2013 12:45 PM

    Hmmm…not sure where to go from here Mayank as all the possibilities that can cause this issue we have tried.

    I would suggest asking your customer to send a fresh offline WSDL file, try importing that and see if this works.

    To prove my point try using this webService

    http://www.webservicex.net/SendSMS.asmx?WSDL

    on your browser and see if you get the WSDL. This is an free webService you can use. Try using this on your local machine which as an webMethods instance installed. Note that your machine should have access to the internet and you should have been able to open the WSDL on your browser.

    Try using the same URL in webMethods. If it works then you have an issue with connectivity on your UNIX box.


    #Integration-Server-and-ESB
    #webMethods