Topic
3 replies Latest Post - ‏2012-06-06T11:53:01Z by FransN
FransN
FransN
2 Posts
ACCEPTED ANSWER

Pinned topic Discovery of MDM v10 wsdl in IBM BPM 8 fails ?

‏2012-06-01T15:22:06Z |
Hi,

I am trying to set up a demo from IBM BPM v8 (Bus.Process Management) to MDM Advanced v10 (MDM Server], using the new MDM Wsdl files as included in DWLSCHEMA.JAR.
I followed the steps in the BPM Process Designer as explained by my BPM friends and created an Integration Service and discover the MDM BusinessServices.wsdl file.

This fails in the BPM Process Designer with
"Encountered an error while trying to discover services at ....... Please check the WSDL to make sure it is valid",

and in the SystemOut.log I get:

.....Retrieving schema at 'MDMCommon.xsd', relative to 'file:/C:/DWLSchemas/MDMDomains.xsd'.
6/1/12 16:16:46:016 CEST 000000c3 wle E CWLLG2229E: An exception occurred in an EJB call. Error: :file:/C:/Temp/tw-schema-6135231792199982615.xsd:file:/C:/Temp/tw-schema-6135231792199982615.xsd::6:119:438:src-resolve: Cannot resolve the name 'CommonExtensionBObj' to a(n) 'element declaration' component.
com.lombardisoftware.core.xml.schema.xs.XSException: :file:/C:/Temp/tw-schema-6135231792199982615.xsd:file:/C:/Temp/tw-schema-6135231792199982615.xsd::6:119:438:src-resolve: Cannot resolve the name 'CommonExtensionBObj' to a(n) 'element declaration' component.
at com.lombardisoftware.core.xml.schema.xs.XSLoader.loadGrammar(XSLoader.java:149)
at com.lombardisoftware.core.xml.schema.xs.XSLoader.load(XSLoader.java:138)
at com.lombardisoftware.server.eai.soap.wsdl.WSDLHelper.loadSchema(WSDLHelper.java:294)
at com.lombardisoftware.server.eai.soap.wsdl.WSDLHelper.loadSchema(WSDLHelper.java:204)
at com.lombardisoftware.server.eai.soap.wsdl.TWWSDLDataBuilder.buildWSDLDataImpl(TWWSDLDataBuilder.java:215)
at com.lombardisoftware.server.eai.soap.wsdl.TWWSDLDataBuilder.buildWSDLData(TWWSDLDataBuilder.java:197)
at com.lombardisoftware.server.ejb.clientservices.ClientServicesCore.getWSDLData(ClientServicesCore.java:497)
....

It looks like there is an error in the MDM xsd files?
However doing a similar action in SOAP UI v4.5.0 , importing the wsdls and invoking the MDM Services is working correctly.
Anyone having any clue on this?

Thanks,
Frans
Updated on 2012-06-06T11:53:01Z at 2012-06-06T11:53:01Z by FransN
  • tgarrard
    tgarrard
    1 Post
    ACCEPTED ANSWER

    Re: Discovery of MDM v10 wsdl in IBM BPM 8 fails ?

    ‏2012-06-01T16:27:40Z  in response to FransN
    Hi Fran,

    I'm afraid there are limitations on the wsdl that BPM can support and MDM's wsdl does not comply even though it is valid

    http://publib.boulder.ibm.com/infocenter/dmndhelp/v7r5m1/index.jsp?topic=%2Fcom.ibm.wbpm.auth.stp.doc%2Fprocesscenter%2Ftopics%2Fr_xmlnotsupported.html

    This is true for v8 also.
  • SystemAdmin
    SystemAdmin
    345 Posts
    ACCEPTED ANSWER

    Re: Discovery of MDM v10 wsdl in IBM BPM 8 fails ?

    ‏2012-06-01T19:22:17Z  in response to FransN
    Frans,

    Can you provide us with the scenario you are trying to accomplish, or can you provide the actual message used in SOAP-UI? Is it an OOTB service or did you create any additions/extensions?

    With the information you provided it would take a lot of guess work which service is causing the problem :-)

    Cheers,

    Bart
  • FransN
    FransN
    2 Posts
    ACCEPTED ANSWER

    Re: Discovery of MDM v10 wsdl in IBM BPM 8 fails ?

    ‏2012-06-06T11:53:01Z  in response to FransN
    Bart and Garrard,

    Thanks for your responses..

    The problem is that when trying to "Discover" the WSDL of MDM v10 Advanced , as defined in the DWLSchemas.Jar file, for example the Party.wsdl file, the discovery in BPM v8 runs into the above problem.
    Note this is all with a standard out-of-the-box implementation, no services customizations done yet...

    I would prefer to use this approach as that gives me automatic discovery and Generates Types in BPM..

    I tried to invoke the MDM Services directly from SOAP UI, which works. An example of a request is:
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
    <soapenv:Header>
    <wsse:Security soapenv:mustUnderstand="1" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
    <wsse:UsernameToken>
    <wsse:Username>cusadmin</wsse:Username>
    <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">cusadmin</wsse:Password>
    </wsse:UsernameToken>
    </wsse:Security>
    </soapenv:Header>
    <soapenv:Body>
    <port:getPerson xmlns="http://www.ibm.com/mdm/schema" xmlns:port="http://www.ibm.com/mdm/port">
    <RequestControl>
    <requestID>10039</requestID>
    <DWLControl>
    <requesterName>cusadmin</requesterName>
    <requesterLanguage>100</requesterLanguage>
    </DWLControl>
    </RequestControl>
    <InquiryParam>
    <tcrmParam name="PartyId">888000402</tcrmParam>
    <tcrmParam name="inquiryLevel">3</tcrmParam>
    </InquiryParam>
    </port:getPerson>
    </soapenv:Body>
    </soapenv:Envelope>

    Going to endpoint:
    http://mdmademo:9081/MDMWSProvider/MDMService

    As an alternative I tried to follow the instruction for invoking a WebService through a nested SOAP call in BPM, as described in the BPM docs at:
    http://pic.dhe.ibm.com/infocenter/dmndhelp/v8r0mx/index.jsp?topic=%2Fcom.ibm.wbpm.wle.editor.doc%2Fmodeling%2Ftopic%2Ft_soapconncall.html

    This is currently failing but that might me caused by me defining the incorrect strings in the data mapping...

    In case anyone has the automatic discovery for MDM webservices working I would be very interested!

    Thanks,
    Frans Nieuwerth