You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by keith chapman <ke...@gmail.com> on 2009/04/23 16:35:00 UTC
Re: Need Guidance in writing services.xml for axis 2 aar for WSDL
with multiple ports
Hi,
Although WSDL (1.1) allows multiple ports to implement several bindings this
is not supported by Axis2. When Axis2 builds a service using a WSDL it only
looks at a single port and picks the operations corresponding to that
binding.
I think having multiple ports implement several bindings is a bad practice,
(BTW WSDL 2.0 does not let you do this, endpoints of a service need to refer
to the same interface).
Thanks,
Keith.
On Thu, Apr 23, 2009 at 12:38 PM, Hitender <hi...@gmail.com> wrote:
>
> I have WSDL which have multiple ports
> <wsdl:service name = "PearsonPersonManagementServiceSync">
> <wsdl:port name = "PersonManagementServiceSyncSoap" binding =
> "imsp:PersonManagementServiceSyncSoap">
> <soap:address location =
> "http://imsglobal.org/services/PersonManagementService/"/>
> </wsdl:port>
> <wsdl:port name = "PearsonPersonManagementServiceSyncSoap" binding =
> "tns:PearsonPersonManagementServiceSyncSoap">
> <soap:address location =
> "http://imsglobal.org/services/PersonManagementService/"/>
> </wsdl:port>
> </wsdl:service>
>
> And here binding tns:PearsonPersonManagementServiceSyncSoap has only one
> operation which is existsPerson
>
> and imsp:PersonManagementServiceSyncSoap has multiple operations like
> createPerson, updatePerson etc.
>
> Now I have to implement this WSDL and I am planning to have only one
> Service
> CLASS with all the required methods
> existsPerson, createPerson etc.
>
> I am having difficulties in writing services.xml file for this service.
> I have created following services.xml
>
> <service name="PearsonPersonManagementServiceSync" scope="application">
> <parameter name="useOriginalwsdl">true</parameter>
> <parameter name="modifyUserWSDLPortAddress">true</parameter>
> <description>TPI Person Management Service</description>
> <messageReceivers>
> <messageReceiver mep="
> http://www.w3.org/2004/08/wsdl/in-only"
> class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
> <messageReceiver mep="
> http://www.w3.org/2004/08/wsdl/in-out"
> class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
> </messageReceivers>
> <parameter
>
> name="ServiceClass">com.pearson.ebook.tpi_services.pms.PearsonPersonManagementServiceSync</parameter>
> </service>
>
> Here I am getting exception that "There is no port type associated with
> binding" when deploying the aar file.
>
> I have attached services.xml and WSDL File for reference.
> Any help will be appreciated.
>
> Thanks
> Hitender
>
> http://www.nabble.com/file/p23191471/PearsonPersonManagementServiceSync.wsdl
> PearsonPersonManagementServiceSync.wsdl
> http://www.nabble.com/file/p23191471/services.xml services.xml
> --
> View this message in context:
> http://www.nabble.com/Need-Guidance-in-writing-services.xml-for-axis-2-aar-for-WSDL-with-multiple-ports-tp23191471p23191471.html
> Sent from the Axis - User mailing list archive at Nabble.com.
>
>
--
Keith Chapman
Senior Software Engineer
WSO2 Inc.
Oxygenating the Web Service Platform.
http://wso2.org/
blog: http://www.keith-chapman.org
Re: Need Guidance in writing services.xml for axis 2 aar for WSDL
with multiple ports
Posted by Hitender <hi...@gmail.com>.
Thanks for clarification.
Is there any some workaround to achieve this.
Thanks
Hitender
Keithgchapman wrote:
>
> Hi,
>
> Although WSDL (1.1) allows multiple ports to implement several bindings
> this
> is not supported by Axis2. When Axis2 builds a service using a WSDL it
> only
> looks at a single port and picks the operations corresponding to that
> binding.
>
> I think having multiple ports implement several bindings is a bad
> practice,
> (BTW WSDL 2.0 does not let you do this, endpoints of a service need to
> refer
> to the same interface).
>
> Thanks,
> Keith.
>
> On Thu, Apr 23, 2009 at 12:38 PM, Hitender <hi...@gmail.com> wrote:
>
>>
>> I have WSDL which have multiple ports
>> <wsdl:service name = "PearsonPersonManagementServiceSync">
>> <wsdl:port name = "PersonManagementServiceSyncSoap" binding =
>> "imsp:PersonManagementServiceSyncSoap">
>> <soap:address location =
>> "http://imsglobal.org/services/PersonManagementService/"/>
>> </wsdl:port>
>> <wsdl:port name = "PearsonPersonManagementServiceSyncSoap" binding
>> =
>> "tns:PearsonPersonManagementServiceSyncSoap">
>> <soap:address location =
>> "http://imsglobal.org/services/PersonManagementService/"/>
>> </wsdl:port>
>> </wsdl:service>
>>
>> And here binding tns:PearsonPersonManagementServiceSyncSoap has only one
>> operation which is existsPerson
>>
>> and imsp:PersonManagementServiceSyncSoap has multiple operations like
>> createPerson, updatePerson etc.
>>
>> Now I have to implement this WSDL and I am planning to have only one
>> Service
>> CLASS with all the required methods
>> existsPerson, createPerson etc.
>>
>> I am having difficulties in writing services.xml file for this service.
>> I have created following services.xml
>>
>> <service name="PearsonPersonManagementServiceSync" scope="application">
>> <parameter name="useOriginalwsdl">true</parameter>
>> <parameter name="modifyUserWSDLPortAddress">true</parameter>
>> <description>TPI Person Management Service</description>
>> <messageReceivers>
>> <messageReceiver mep="
>> http://www.w3.org/2004/08/wsdl/in-only"
>> class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
>> <messageReceiver mep="
>> http://www.w3.org/2004/08/wsdl/in-out"
>> class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
>> </messageReceivers>
>> <parameter
>>
>> name="ServiceClass">com.pearson.ebook.tpi_services.pms.PearsonPersonManagementServiceSync</parameter>
>> </service>
>>
>> Here I am getting exception that "There is no port type associated with
>> binding" when deploying the aar file.
>>
>> I have attached services.xml and WSDL File for reference.
>> Any help will be appreciated.
>>
>> Thanks
>> Hitender
>>
>> http://www.nabble.com/file/p23191471/PearsonPersonManagementServiceSync.wsdl
>> PearsonPersonManagementServiceSync.wsdl
>> http://www.nabble.com/file/p23191471/services.xml services.xml
>> --
>> View this message in context:
>> http://www.nabble.com/Need-Guidance-in-writing-services.xml-for-axis-2-aar-for-WSDL-with-multiple-ports-tp23191471p23191471.html
>> Sent from the Axis - User mailing list archive at Nabble.com.
>>
>>
>
>
> --
> Keith Chapman
> Senior Software Engineer
> WSO2 Inc.
> Oxygenating the Web Service Platform.
> http://wso2.org/
>
> blog: http://www.keith-chapman.org
>
>
--
View this message in context: http://www.nabble.com/Need-Guidance-in-writing-services.xml-for-axis-2-aar-for-WSDL-with-multiple-ports-tp23191471p23220361.html
Sent from the Axis - User mailing list archive at Nabble.com.