Monday, August 13, 2012

Abstract WSDL vs Concrete WSDL




Issue:

Composites are in Inactive state after the server restart

Root Cause:

Concrete WSDLs are used in the place of abstract wsdl.

Solution:


<reference name="SyncWorkerEBIZProvABCSImpl"
             ui:wsdlLocation="oramds:/apps/AIAMetaData/AIAComponents/ApplicationObjectLibrary/EBIZ/Worker/wsdls/v1/SyncWorkerEBIZProvABCSImpl.wsdl">
    <interface.wsdl interface="http://xmlns.oracle.com/ABCSImpl/EBIZ/Core/SyncWorkerEBIZProvABCSImpl/V1#wsdl.interface(SyncWorkerEBIZProvABCSImpl)"/>
    <binding.ws port="http://xmlns.oracle.com/ABCSImpl/EBIZ/Core/SyncWorkerEBIZProvABCSImpl/V1#wsdl.endpoint(SyncWorkerEBIZProvABCSImpl/SyncWorkerEBIZProvABCSImpl_pt)"
                location="http://dev.soahome.com:20111/soa-infra/services/payroll/SyncWorkerEBIZProvABCSImpl/SyncWorkerEBIZProvABCSImpl?WSDL"
                soapVersion="1.1">
      <property name="weblogic.wsee.wsat.transaction.flowOption"
                type="xs:string" many="false">WSDLDriven</property>
    </binding.ws>
  </reference>

ui:wsdlLocation:  Abstract WSDL

location:  Concrete WSDL.

Steps while designing in Jdeveloper:

1. In composite.xml drag Webservice Adapter to reference lane.
2. Select the WSDL from Resource Pallette  -> Application Server -> Select default verison composite ws
3. Go to composite.xml source
4. Change ui:wsdlLocation  value to Abstract WSDL. ( WSDL from MDS)


References:

http://docs.oracle.com/cd/E17904_01/doc.1111/e17364/bestpractices.htm#BABCGHEH
https://blogs.oracle.com/aia/entry/aia_11g_best_practices_for_dec

No comments:

Post a Comment