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 Yassou <ya...@gmail.com> on 2008/06/06 09:00:22 UTC

WSDL2.0 endpoint

Hi !

My probleme is that the WSDL2.0 description after deployement in axis2 is
not the same WSDL2.0 description provided in the begining

I provide this:

<?xml version="1.0" encoding="UTF-8"?>
<wsdl2:description xmlns:wsdl2="http://www.w3.org/ns/wsdl" xmlns:tns="
http://wsdl2package" xmlns:wsoap="http://www.w3.org/ns/wsdl/soap"
xmlns:wrpc="http://www.w3.org/ns/wsdl/rpc" xmlns:ns1="
http://org.apache.axis2/xsd" xmlns:wsaw="
http://www.w3.org/2006/05/addressing/wsdl" xmlns:wsdlx="
http://www.w3.org/ns/wsdl-extensions" xmlns:ns="http://wsdl2package"
xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:whttp="
http://www.w3.org/ns/wsdl/http"
targetNamespace="http://wsdl2package"><http://wsdl2package%22%3e/>

<wsdl2:documentation>
  Please Type your service description here
 </wsdl2:documentation>

<wsdl2:types>
<xs:schema attributeFormDefault="qualified" elementFormDefault="qualified"
targetNamespace="http://wsdl2package">
<xs:element name="add">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="a" type="xs:int" />
<xs:element minOccurs="0" name="b" type="xs:int" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="addResponse">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="return" type="xs:int" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
</wsdl2:types>

<wsdl2:interface name="ServiceInterface">
<wsdl2:operation name="add" style="http://www.w3.org/ns/wsdl/style/rpc"
wrpc:signature="a #in b #in return #return " pattern="
http://www.w3.org/ns/wsdl/in-out"> <http://www.w3.org/ns/wsdl/in-out%22%3E>
<wsdl2:input element="ns:add" wsaw:Action="urn:add" /><wsdl2:output
element="ns:addResponse" wsaw:Action="urn:addResponse" />
</wsdl2:operation>
</wsdl2:interface>

<wsdl2:binding name="Wsdl2classHttpBinding" interface="tns:ServiceInterface"
whttp:methodDefault="POST" type="
http://www.w3.org/ns/wsdl/http"><wsdl2:operation<http://www.w3.org/ns/wsdl/http%22%3E%3Cwsdl2:operation>ref="tns:add"
whttp:location="Wsdl2class/add" />
</wsdl2:binding>

<wsdl2:service name="Wsdl2class" interface="tns:ServiceInterface">
<wsdl2:endpoint name="Wsdl2classHttpEndpoint"
binding="tns:Wsdl2classHttpBinding" address="
http://127.0.0.1:8080/axis2/services/Wsdl2class.Wsdl2classHttpEndpoint" />
</wsdl2:service>
</wsdl2:description>


with this service.xml :

<?xml version="1.0" encoding="UTF-8"?>
<!-- This file was auto-generated from WSDL -->
<!-- by the Apache Axis2 version: 1.3  Built on : Aug 10, 2007 (04:45:47
LKT) -->
<serviceGroup>
    <service name="Wsdl2class">
        <messageReceivers>
            <messageReceiver mep="http://www.w3.org/ns/wsdl/in-out"
class="org.apache.axis2.axis2userguide.Wsdl2ClassMessageReceiverInOut"/>
        </messageReceivers>
        <parameter
name="ServiceClass">org.apache.axis2.axis2userguide.Wsdl2ClassSkeleton</parameter>
        <parameter name="useOriginalwsdl">true</parameter>
        <parameter name="modifyUserWSDLPortAddress">true</parameter>
        <operation name="add" mep="http://www.w3.org/ns/wsdl/in-out">
            <actionMapping>\"\"</actionMapping>
            <outputActionMapping>urn:addResponse</outputActionMapping>
        </operation>
    </service>
</serviceGroup>

I execute ant jar.server and I copy build/lib/*.aar file to G:\Program
Files\Apache Software Foundation\Tomcat 5.5\webapps\axis2\WEB-INF\services
then when I check the WSDL2.0 description axis2 shows
when I write this address in address bar :
http://localhost:8080/axis2/services/Wsdl2class?wsdl2


 *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <
wsdl2:description xmlns:wsdl2="*http://www.w3.org/ns/wsdl*" xmlns:tns="*
http://ws.apache.org/axis2*"
xmlns:wsoap="*http://www.w3.org/ns/wsdl/soap*"xmlns:wrpc
="*http://www.w3.org/ns/wsdl/rpc*" xmlns:wsaw="*
http://www.w3.org/2006/05/addressing/wsdl*" xmlns:wsdlx="*
http://www.w3.org/ns/wsdl-extensions*" xmlns:whttp="*
http://www.w3.org/ns/wsdl/http*" targetNamespace="*
http://ws.apache.org/axis2*">
 * * <wsdl2:documentation>*Wsdl2class*</wsdl2:documentation>
 * * <wsdl2:types />
 *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <
wsdl2:interface name="*ServiceInterface*">
 *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <
wsdl2:operation name="*add*" pattern="*http://www.w3.org/ns/wsdl/in-out*">
 * * <wsdl2:input element="*#none*" />
 * * <wsdl2:output element="*#none*" wsaw:Action="*urn:addResponse*" />
* * </wsdl2:operation>
* * </wsdl2:interface>
 *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <wsdl2:bindingname
="*Wsdl2classSoap11Binding*" interface="*tns:ServiceInterface*" type="*
http://www.w3.org/ns/wsdl/soap*" wsoap:version="*1.1*">
 * * <wsdl2:operation ref="*tns:add*" />
* * </wsdl2:binding>
 *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <wsdl2:bindingname
="*Wsdl2classHttpBinding*" interface="*tns:ServiceInterface*"whttp:methodDefault
="*POST*" type="*http://www.w3.org/ns/wsdl/http*">
 * * <wsdl2:operation ref="*tns:add*" whttp:location="*Wsdl2class/add*" />
* * </wsdl2:binding>
 *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <wsdl2:bindingname
="*Wsdl2classSoap12Binding*" interface="*tns:ServiceInterface*" type="*
http://www.w3.org/ns/wsdl/soap*" wsoap:version="*1.2*">
 * * <wsdl2:operation ref="*tns:add*" />
* * </wsdl2:binding>
 *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <wsdl2:servicename
="*Wsdl2class*" interface="*tns:ServiceInterface*">
 * * <wsdl2:endpoint name="*Wsdl2classHttpSoap12Endpoint*" binding="*
tns:Wsdl2classSoap12Binding*" address="*
http://192.168.10.144:8080/axis2/services/Wsdl2class.Wsdl2classHttpSoap12Endpoint
*" />
 * * <wsdl2:endpoint name="*Wsdl2classHttpEndpoint*" binding="*
tns:Wsdl2classHttpBinding*" address="*
http://192.168.10.144:8080/axis2/services/Wsdl2class.Wsdl2classHttpEndpoint*
" />
 * * <wsdl2:endpoint name="*Wsdl2classHttpSoap11Endpoint*" binding="*
tns:Wsdl2classSoap11Binding*" address="*
http://192.168.10.144:8080/axis2/services/Wsdl2class.Wsdl2classHttpSoap11Endpoint
*" />
* * </wsdl2:service>
* * </wsdl2:description>




So as you can see, I have not one binding and one endpoint as in the
original WSDL provided

Can you help me to have the same WSDL2.0 after deployement ?
Thanx a lot.

Re: WSDL2.0 endpoint

Posted by keith chapman <ke...@gmail.com>.
Yes, Bu default Axis2 will generate 3 endpoints for you.

Thanks,
Keith.

On Fri, Jun 6, 2008 at 3:50 PM, Yassou <ya...@gmail.com> wrote:

> Thanks Keith !
>
> So this is why always axis2 show as endpoints these 3 ones : HTTP, SOAP1.1
> and SOAP1.2 ?
>
>
>
> 2008/6/6, keith chapman <ke...@gmail.com>:
>
>> Hi,
>>
>> This is a known limitation in Axis2. Axis2 uses Woden to provide WSDL 2.0
>> support, the Woden project is in the process of writing a serializer (Its
>> not available yet) So once we build the object model using a WSDL 2.0
>> document we have no way of werializing it out. So the only option we have is
>> to serialize the AxisService to WSDL a 2.0 doc.  So you will never be able
>> to get an original WSDL for the WSDL 2.0 case.
>>
>> Thanks,
>> Keith.
>>
>>
>> On Fri, Jun 6, 2008 at 12:30 PM, Yassou <ya...@gmail.com> wrote:
>>
>>> Hi !
>>>
>>> My probleme is that the WSDL2.0 description after deployement in axis2 is
>>> not the same WSDL2.0 description provided in the begining
>>> I provide this:
>>>
>>> <?xml version="1.0" encoding="UTF-8"?>
>>> <wsdl2:description xmlns:wsdl2="http://www.w3.org/ns/wsdl" xmlns:tns="
>>> http://wsdl2package" xmlns:wsoap="http://www.w3.org/ns/wsdl/soap"
>>> xmlns:wrpc="http://www.w3.org/ns/wsdl/rpc" xmlns:ns1="
>>> http://org.apache.axis2/xsd" xmlns:wsaw="
>>> http://www.w3.org/2006/05/addressing/wsdl" xmlns:wsdlx="
>>> http://www.w3.org/ns/wsdl-extensions" xmlns:ns="http://wsdl2package"
>>> xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:whttp="
>>> http://www.w3.org/ns/wsdl/http" targetNamespace="http://wsdl2package"><http://wsdl2package%22%3e/>
>>>
>>> <wsdl2:documentation>
>>>   Please Type your service description here
>>>  </wsdl2:documentation>
>>>
>>> <wsdl2:types>
>>> <xs:schema attributeFormDefault="qualified"
>>> elementFormDefault="qualified" targetNamespace="http://wsdl2package">
>>> <xs:element name="add">
>>> <xs:complexType>
>>> <xs:sequence>
>>> <xs:element minOccurs="0" name="a" type="xs:int" />
>>> <xs:element minOccurs="0" name="b" type="xs:int" />
>>> </xs:sequence>
>>> </xs:complexType>
>>> </xs:element>
>>> <xs:element name="addResponse">
>>> <xs:complexType>
>>> <xs:sequence>
>>> <xs:element minOccurs="0" name="return" type="xs:int" />
>>> </xs:sequence>
>>> </xs:complexType>
>>> </xs:element>
>>> </xs:schema>
>>> </wsdl2:types>
>>>
>>> <wsdl2:interface name="ServiceInterface">
>>> <wsdl2:operation name="add" style="http://www.w3.org/ns/wsdl/style/rpc"
>>> wrpc:signature="a #in b #in return #return " pattern="
>>> http://www.w3.org/ns/wsdl/in-out"><http://www.w3.org/ns/wsdl/in-out%22%3E>
>>> <wsdl2:input element="ns:add" wsaw:Action="urn:add" /><wsdl2:output
>>> element="ns:addResponse" wsaw:Action="urn:addResponse" />
>>> </wsdl2:operation>
>>> </wsdl2:interface>
>>>
>>> <wsdl2:binding name="Wsdl2classHttpBinding"
>>> interface="tns:ServiceInterface" whttp:methodDefault="POST" type="
>>> http://www.w3.org/ns/wsdl/http"><wsdl2:operation<http://www.w3.org/ns/wsdl/http%22%3E%3Cwsdl2:operation>ref="tns:add" whttp:location="Wsdl2class/add" />
>>> </wsdl2:binding>
>>>
>>> <wsdl2:service name="Wsdl2class" interface="tns:ServiceInterface">
>>> <wsdl2:endpoint name="Wsdl2classHttpEndpoint"
>>> binding="tns:Wsdl2classHttpBinding" address="
>>> http://127.0.0.1:8080/axis2/services/Wsdl2class.Wsdl2classHttpEndpoint"
>>> />
>>> </wsdl2:service>
>>> </wsdl2:description>
>>>
>>>
>>> with this service.xml :
>>>
>>> <?xml version="1.0" encoding="UTF-8"?>
>>> <!-- This file was auto-generated from WSDL -->
>>> <!-- by the Apache Axis2 version: 1.3  Built on : Aug 10, 2007 (04:45:47
>>> LKT) -->
>>> <serviceGroup>
>>>     <service name="Wsdl2class">
>>>         <messageReceivers>
>>>             <messageReceiver mep="http://www.w3.org/ns/wsdl/in-out"
>>> class="org.apache.axis2.axis2userguide.Wsdl2ClassMessageReceiverInOut"/>
>>>         </messageReceivers>
>>>         <parameter
>>> name="ServiceClass">org.apache.axis2.axis2userguide.Wsdl2ClassSkeleton</parameter>
>>>         <parameter name="useOriginalwsdl">true</parameter>
>>>         <parameter name="modifyUserWSDLPortAddress">true</parameter>
>>>         <operation name="add" mep="http://www.w3.org/ns/wsdl/in-out">
>>>             <actionMapping>\"\"</actionMapping>
>>>             <outputActionMapping>urn:addResponse</outputActionMapping>
>>>         </operation>
>>>     </service>
>>> </serviceGroup>
>>>
>>> I execute ant jar.server and I copy build/lib/*.aar file to G:\Program
>>> Files\Apache Software Foundation\Tomcat 5.5\webapps\axis2\WEB-INF\services
>>> then when I check the WSDL2.0 description axis2 shows
>>> when I write this address in address bar :
>>> http://localhost:8080/axis2/services/Wsdl2class?wsdl2
>>>
>>>
>>>  *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <
>>> wsdl2:description xmlns:wsdl2="*http://www.w3.org/ns/wsdl*" xmlns:tns="*
>>> http://ws.apache.org/axis2*" xmlns:wsoap="*
>>> http://www.w3.org/ns/wsdl/soap*" xmlns:wrpc="*
>>> http://www.w3.org/ns/wsdl/rpc*" xmlns:wsaw="*
>>> http://www.w3.org/2006/05/addressing/wsdl*" xmlns:wsdlx="*
>>> http://www.w3.org/ns/wsdl-extensions*" xmlns:whttp="*
>>> http://www.w3.org/ns/wsdl/http*" targetNamespace="*
>>> http://ws.apache.org/axis2*">
>>>  * * <wsdl2:documentation>*Wsdl2class*</wsdl2:documentation>
>>>  * * <wsdl2:types />
>>>  *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <
>>> wsdl2:interface name="*ServiceInterface*">
>>>  *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <
>>> wsdl2:operation name="*add*" pattern="*http://www.w3.org/ns/wsdl/in-out*
>>> ">
>>>  * * <wsdl2:input element="*#none*" />
>>>  * * <wsdl2:output element="*#none*" wsaw:Action="*urn:addResponse*" />
>>>  * * </wsdl2:operation>
>>>  * * </wsdl2:interface>
>>>  *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <
>>> wsdl2:binding name="*Wsdl2classSoap11Binding*" interface="*
>>> tns:ServiceInterface*" type="*http://www.w3.org/ns/wsdl/soap*"wsoap:version
>>> ="*1.1*">
>>>  * * <wsdl2:operation ref="*tns:add*" />
>>>  * * </wsdl2:binding>
>>>  *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <
>>> wsdl2:binding name="*Wsdl2classHttpBinding*" interface="*
>>> tns:ServiceInterface*" whttp:methodDefault="*POST*" type="*
>>> http://www.w3.org/ns/wsdl/http*">
>>>  * * <wsdl2:operation ref="*tns:add*" whttp:location="*Wsdl2class/add*"/>
>>>  * * </wsdl2:binding>
>>>  *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <
>>> wsdl2:binding name="*Wsdl2classSoap12Binding*" interface="*
>>> tns:ServiceInterface*" type="*http://www.w3.org/ns/wsdl/soap*"wsoap:version
>>> ="*1.2*">
>>>  * * <wsdl2:operation ref="*tns:add*" />
>>>  * * </wsdl2:binding>
>>>  *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <
>>> wsdl2:service name="*Wsdl2class*" interface="*tns:ServiceInterface*">
>>>  * * <wsdl2:endpoint name="*Wsdl2classHttpSoap12Endpoint*" binding="*
>>> tns:Wsdl2classSoap12Binding*" address="*
>>> http://192.168.10.144:8080/axis2/services/Wsdl2class.Wsdl2classHttpSoap12Endpoint
>>> *" />
>>>  * * <wsdl2:endpoint name="*Wsdl2classHttpEndpoint*" binding="*
>>> tns:Wsdl2classHttpBinding*" address="*
>>> http://192.168.10.144:8080/axis2/services/Wsdl2class.Wsdl2classHttpEndpoint
>>> *" />
>>>  * * <wsdl2:endpoint name="*Wsdl2classHttpSoap11Endpoint*" binding="*
>>> tns:Wsdl2classSoap11Binding*" address="*
>>> http://192.168.10.144:8080/axis2/services/Wsdl2class.Wsdl2classHttpSoap11Endpoint
>>> *" />
>>>  * * </wsdl2:service>
>>>  * * </wsdl2:description>
>>>
>>>
>>>
>>>
>>> So as you can see, I have not one binding and one endpoint as in the
>>> original WSDL provided
>>>
>>> Can you help me to have the same WSDL2.0 after deployement ?
>>> Thanx a lot.
>>>
>>>
>>>
>>>
>>
>>
>>
>> --
>> Keith Chapman
>> Senior Software Engineer
>> WSO2 Inc.
>> Oxygenating the Web Service Platform.
>> http://wso2.org/
>>
>> blog: http://www.keith-chapman.org
>
>
>
>
> --
> ------------------------------------------------------------
> Yassin Chabeb
> PhD [Web Services Computing]
> Computer Science Departement
> http://www.it-sudparis.eu/inf
> TELECOM & Management SudParis
> Institut TELECOM
> FRANCE
> Fax:   +33 1 60764780
> ------------------------------------------------------------




-- 
Keith Chapman
Senior Software Engineer
WSO2 Inc.
Oxygenating the Web Service Platform.
http://wso2.org/

blog: http://www.keith-chapman.org

Re: WSDL2.0 endpoint

Posted by Yassou <ya...@gmail.com>.
Thanks Keith !

So this is why always axis2 show as endpoints these 3 ones : HTTP, SOAP1.1
and SOAP1.2 ?



2008/6/6, keith chapman <ke...@gmail.com>:
>
> Hi,
>
> This is a known limitation in Axis2. Axis2 uses Woden to provide WSDL 2.0
> support, the Woden project is in the process of writing a serializer (Its
> not available yet) So once we build the object model using a WSDL 2.0
> document we have no way of werializing it out. So the only option we have is
> to serialize the AxisService to WSDL a 2.0 doc.  So you will never be able
> to get an original WSDL for the WSDL 2.0 case.
>
> Thanks,
> Keith.
>
>
> On Fri, Jun 6, 2008 at 12:30 PM, Yassou <ya...@gmail.com> wrote:
>
>> Hi !
>>
>> My probleme is that the WSDL2.0 description after deployement in axis2 is
>> not the same WSDL2.0 description provided in the begining
>> I provide this:
>>
>> <?xml version="1.0" encoding="UTF-8"?>
>> <wsdl2:description xmlns:wsdl2="http://www.w3.org/ns/wsdl" xmlns:tns="
>> http://wsdl2package" xmlns:wsoap="http://www.w3.org/ns/wsdl/soap"
>> xmlns:wrpc="http://www.w3.org/ns/wsdl/rpc" xmlns:ns1="
>> http://org.apache.axis2/xsd" xmlns:wsaw="
>> http://www.w3.org/2006/05/addressing/wsdl" xmlns:wsdlx="
>> http://www.w3.org/ns/wsdl-extensions" xmlns:ns="http://wsdl2package"
>> xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:whttp="
>> http://www.w3.org/ns/wsdl/http" targetNamespace="http://wsdl2package"><http://wsdl2package%22%3e/>
>>
>> <wsdl2:documentation>
>>   Please Type your service description here
>>  </wsdl2:documentation>
>>
>> <wsdl2:types>
>> <xs:schema attributeFormDefault="qualified" elementFormDefault="qualified"
>> targetNamespace="http://wsdl2package">
>> <xs:element name="add">
>> <xs:complexType>
>> <xs:sequence>
>> <xs:element minOccurs="0" name="a" type="xs:int" />
>> <xs:element minOccurs="0" name="b" type="xs:int" />
>> </xs:sequence>
>> </xs:complexType>
>> </xs:element>
>> <xs:element name="addResponse">
>> <xs:complexType>
>> <xs:sequence>
>> <xs:element minOccurs="0" name="return" type="xs:int" />
>> </xs:sequence>
>> </xs:complexType>
>> </xs:element>
>> </xs:schema>
>> </wsdl2:types>
>>
>> <wsdl2:interface name="ServiceInterface">
>> <wsdl2:operation name="add" style="http://www.w3.org/ns/wsdl/style/rpc"
>> wrpc:signature="a #in b #in return #return " pattern="
>> http://www.w3.org/ns/wsdl/in-out"><http://www.w3.org/ns/wsdl/in-out%22%3E>
>> <wsdl2:input element="ns:add" wsaw:Action="urn:add" /><wsdl2:output
>> element="ns:addResponse" wsaw:Action="urn:addResponse" />
>> </wsdl2:operation>
>> </wsdl2:interface>
>>
>> <wsdl2:binding name="Wsdl2classHttpBinding"
>> interface="tns:ServiceInterface" whttp:methodDefault="POST" type="
>> http://www.w3.org/ns/wsdl/http"><wsdl2:operation<http://www.w3.org/ns/wsdl/http%22%3E%3Cwsdl2:operation>ref="tns:add" whttp:location="Wsdl2class/add" />
>> </wsdl2:binding>
>>
>> <wsdl2:service name="Wsdl2class" interface="tns:ServiceInterface">
>> <wsdl2:endpoint name="Wsdl2classHttpEndpoint"
>> binding="tns:Wsdl2classHttpBinding" address="
>> http://127.0.0.1:8080/axis2/services/Wsdl2class.Wsdl2classHttpEndpoint"
>> />
>> </wsdl2:service>
>> </wsdl2:description>
>>
>>
>> with this service.xml :
>>
>> <?xml version="1.0" encoding="UTF-8"?>
>> <!-- This file was auto-generated from WSDL -->
>> <!-- by the Apache Axis2 version: 1.3  Built on : Aug 10, 2007 (04:45:47
>> LKT) -->
>> <serviceGroup>
>>     <service name="Wsdl2class">
>>         <messageReceivers>
>>             <messageReceiver mep="http://www.w3.org/ns/wsdl/in-out"
>> class="org.apache.axis2.axis2userguide.Wsdl2ClassMessageReceiverInOut"/>
>>         </messageReceivers>
>>         <parameter
>> name="ServiceClass">org.apache.axis2.axis2userguide.Wsdl2ClassSkeleton</parameter>
>>         <parameter name="useOriginalwsdl">true</parameter>
>>         <parameter name="modifyUserWSDLPortAddress">true</parameter>
>>         <operation name="add" mep="http://www.w3.org/ns/wsdl/in-out">
>>             <actionMapping>\"\"</actionMapping>
>>             <outputActionMapping>urn:addResponse</outputActionMapping>
>>         </operation>
>>     </service>
>> </serviceGroup>
>>
>> I execute ant jar.server and I copy build/lib/*.aar file to G:\Program
>> Files\Apache Software Foundation\Tomcat 5.5\webapps\axis2\WEB-INF\services
>> then when I check the WSDL2.0 description axis2 shows
>> when I write this address in address bar :
>> http://localhost:8080/axis2/services/Wsdl2class?wsdl2
>>
>>
>>  *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <
>> wsdl2:description xmlns:wsdl2="*http://www.w3.org/ns/wsdl*" xmlns:tns="*
>> http://ws.apache.org/axis2*" xmlns:wsoap="*http://www.w3.org/ns/wsdl/soap
>> *" xmlns:wrpc="*http://www.w3.org/ns/wsdl/rpc*" xmlns:wsaw="*
>> http://www.w3.org/2006/05/addressing/wsdl*" xmlns:wsdlx="*
>> http://www.w3.org/ns/wsdl-extensions*" xmlns:whttp="*
>> http://www.w3.org/ns/wsdl/http*" targetNamespace="*
>> http://ws.apache.org/axis2*">
>>  * * <wsdl2:documentation>*Wsdl2class*</wsdl2:documentation>
>>  * * <wsdl2:types />
>>  *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <
>> wsdl2:interface name="*ServiceInterface*">
>>  *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <
>> wsdl2:operation name="*add*" pattern="*http://www.w3.org/ns/wsdl/in-out*"
>> >
>>  * * <wsdl2:input element="*#none*" />
>>  * * <wsdl2:output element="*#none*" wsaw:Action="*urn:addResponse*" />
>>  * * </wsdl2:operation>
>>  * * </wsdl2:interface>
>>  *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <
>> wsdl2:binding name="*Wsdl2classSoap11Binding*" interface="*
>> tns:ServiceInterface*" type="*http://www.w3.org/ns/wsdl/soap*"wsoap:version
>> ="*1.1*">
>>  * * <wsdl2:operation ref="*tns:add*" />
>>  * * </wsdl2:binding>
>>  *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <
>> wsdl2:binding name="*Wsdl2classHttpBinding*" interface="*
>> tns:ServiceInterface*" whttp:methodDefault="*POST*" type="*
>> http://www.w3.org/ns/wsdl/http*">
>>  * * <wsdl2:operation ref="*tns:add*" whttp:location="*Wsdl2class/add*"/>
>>  * * </wsdl2:binding>
>>  *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <
>> wsdl2:binding name="*Wsdl2classSoap12Binding*" interface="*
>> tns:ServiceInterface*" type="*http://www.w3.org/ns/wsdl/soap*"wsoap:version
>> ="*1.2*">
>>  * * <wsdl2:operation ref="*tns:add*" />
>>  * * </wsdl2:binding>
>>  *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <
>> wsdl2:service name="*Wsdl2class*" interface="*tns:ServiceInterface*">
>>  * * <wsdl2:endpoint name="*Wsdl2classHttpSoap12Endpoint*" binding="*
>> tns:Wsdl2classSoap12Binding*" address="*
>> http://192.168.10.144:8080/axis2/services/Wsdl2class.Wsdl2classHttpSoap12Endpoint
>> *" />
>>  * * <wsdl2:endpoint name="*Wsdl2classHttpEndpoint*" binding="*
>> tns:Wsdl2classHttpBinding*" address="*
>> http://192.168.10.144:8080/axis2/services/Wsdl2class.Wsdl2classHttpEndpoint
>> *" />
>>  * * <wsdl2:endpoint name="*Wsdl2classHttpSoap11Endpoint*" binding="*
>> tns:Wsdl2classSoap11Binding*" address="*
>> http://192.168.10.144:8080/axis2/services/Wsdl2class.Wsdl2classHttpSoap11Endpoint
>> *" />
>>  * * </wsdl2:service>
>>  * * </wsdl2:description>
>>
>>
>>
>>
>> So as you can see, I have not one binding and one endpoint as in the
>> original WSDL provided
>>
>> Can you help me to have the same WSDL2.0 after deployement ?
>> Thanx a lot.
>>
>>
>>
>>
>
>
>
> --
> Keith Chapman
> Senior Software Engineer
> WSO2 Inc.
> Oxygenating the Web Service Platform.
> http://wso2.org/
>
> blog: http://www.keith-chapman.org




-- 
------------------------------------------------------------
Yassin Chabeb
PhD [Web Services Computing]
Computer Science Departement
http://www.it-sudparis.eu/inf
TELECOM & Management SudParis
Institut TELECOM
FRANCE
Fax:   +33 1 60764780
------------------------------------------------------------

Re: WSDL2.0 endpoint

Posted by keith chapman <ke...@gmail.com>.
Hi,

This is a known limitation in Axis2. Axis2 uses Woden to provide WSDL 2.0
support, the Woden project is in the process of writing a serializer (Its
not available yet) So once we build the object model using a WSDL 2.0
document we have no way of werializing it out. So the only option we have is
to serialize the AxisService to WSDL a 2.0 doc.  So you will never be able
to get an original WSDL for the WSDL 2.0 case.

Thanks,
Keith.


On Fri, Jun 6, 2008 at 12:30 PM, Yassou <ya...@gmail.com> wrote:

> Hi !
>
> My probleme is that the WSDL2.0 description after deployement in axis2 is
> not the same WSDL2.0 description provided in the begining
> I provide this:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <wsdl2:description xmlns:wsdl2="http://www.w3.org/ns/wsdl" xmlns:tns="
> http://wsdl2package" xmlns:wsoap="http://www.w3.org/ns/wsdl/soap"
> xmlns:wrpc="http://www.w3.org/ns/wsdl/rpc" xmlns:ns1="
> http://org.apache.axis2/xsd" xmlns:wsaw="
> http://www.w3.org/2006/05/addressing/wsdl" xmlns:wsdlx="
> http://www.w3.org/ns/wsdl-extensions" xmlns:ns="http://wsdl2package"
> xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:whttp="
> http://www.w3.org/ns/wsdl/http" targetNamespace="http://wsdl2package"><http://wsdl2package%22%3e/>
>
> <wsdl2:documentation>
>   Please Type your service description here
>  </wsdl2:documentation>
>
> <wsdl2:types>
> <xs:schema attributeFormDefault="qualified" elementFormDefault="qualified"
> targetNamespace="http://wsdl2package">
> <xs:element name="add">
> <xs:complexType>
> <xs:sequence>
> <xs:element minOccurs="0" name="a" type="xs:int" />
> <xs:element minOccurs="0" name="b" type="xs:int" />
> </xs:sequence>
> </xs:complexType>
> </xs:element>
> <xs:element name="addResponse">
> <xs:complexType>
> <xs:sequence>
> <xs:element minOccurs="0" name="return" type="xs:int" />
> </xs:sequence>
> </xs:complexType>
> </xs:element>
> </xs:schema>
> </wsdl2:types>
>
> <wsdl2:interface name="ServiceInterface">
> <wsdl2:operation name="add" style="http://www.w3.org/ns/wsdl/style/rpc"
> wrpc:signature="a #in b #in return #return " pattern="
> http://www.w3.org/ns/wsdl/in-out"><http://www.w3.org/ns/wsdl/in-out%22%3E>
> <wsdl2:input element="ns:add" wsaw:Action="urn:add" /><wsdl2:output
> element="ns:addResponse" wsaw:Action="urn:addResponse" />
> </wsdl2:operation>
> </wsdl2:interface>
>
> <wsdl2:binding name="Wsdl2classHttpBinding"
> interface="tns:ServiceInterface" whttp:methodDefault="POST" type="
> http://www.w3.org/ns/wsdl/http"><wsdl2:operation<http://www.w3.org/ns/wsdl/http%22%3E%3Cwsdl2:operation>ref="tns:add" whttp:location="Wsdl2class/add" />
> </wsdl2:binding>
>
> <wsdl2:service name="Wsdl2class" interface="tns:ServiceInterface">
> <wsdl2:endpoint name="Wsdl2classHttpEndpoint"
> binding="tns:Wsdl2classHttpBinding" address="
> http://127.0.0.1:8080/axis2/services/Wsdl2class.Wsdl2classHttpEndpoint" />
> </wsdl2:service>
> </wsdl2:description>
>
>
> with this service.xml :
>
> <?xml version="1.0" encoding="UTF-8"?>
> <!-- This file was auto-generated from WSDL -->
> <!-- by the Apache Axis2 version: 1.3  Built on : Aug 10, 2007 (04:45:47
> LKT) -->
> <serviceGroup>
>     <service name="Wsdl2class">
>         <messageReceivers>
>             <messageReceiver mep="http://www.w3.org/ns/wsdl/in-out"
> class="org.apache.axis2.axis2userguide.Wsdl2ClassMessageReceiverInOut"/>
>         </messageReceivers>
>         <parameter
> name="ServiceClass">org.apache.axis2.axis2userguide.Wsdl2ClassSkeleton</parameter>
>         <parameter name="useOriginalwsdl">true</parameter>
>         <parameter name="modifyUserWSDLPortAddress">true</parameter>
>         <operation name="add" mep="http://www.w3.org/ns/wsdl/in-out">
>             <actionMapping>\"\"</actionMapping>
>             <outputActionMapping>urn:addResponse</outputActionMapping>
>         </operation>
>     </service>
> </serviceGroup>
>
> I execute ant jar.server and I copy build/lib/*.aar file to G:\Program
> Files\Apache Software Foundation\Tomcat 5.5\webapps\axis2\WEB-INF\services
> then when I check the WSDL2.0 description axis2 shows
> when I write this address in address bar :
> http://localhost:8080/axis2/services/Wsdl2class?wsdl2
>
>
>  *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <
> wsdl2:description xmlns:wsdl2="*http://www.w3.org/ns/wsdl*" xmlns:tns="*
> http://ws.apache.org/axis2*" xmlns:wsoap="*http://www.w3.org/ns/wsdl/soap*
> " xmlns:wrpc="*http://www.w3.org/ns/wsdl/rpc*" xmlns:wsaw="*
> http://www.w3.org/2006/05/addressing/wsdl*" xmlns:wsdlx="*
> http://www.w3.org/ns/wsdl-extensions*" xmlns:whttp="*
> http://www.w3.org/ns/wsdl/http*" targetNamespace="*
> http://ws.apache.org/axis2*">
>  * * <wsdl2:documentation>*Wsdl2class*</wsdl2:documentation>
>  * * <wsdl2:types />
>  *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <
> wsdl2:interface name="*ServiceInterface*">
>  *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <
> wsdl2:operation name="*add*" pattern="*http://www.w3.org/ns/wsdl/in-out*">
>  * * <wsdl2:input element="*#none*" />
>  * * <wsdl2:output element="*#none*" wsaw:Action="*urn:addResponse*" />
>  * * </wsdl2:operation>
>  * * </wsdl2:interface>
>  *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <
> wsdl2:binding name="*Wsdl2classSoap11Binding*" interface="*
> tns:ServiceInterface*" type="*http://www.w3.org/ns/wsdl/soap*"wsoap:version
> ="*1.1*">
>  * * <wsdl2:operation ref="*tns:add*" />
>  * * </wsdl2:binding>
>  *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <
> wsdl2:binding name="*Wsdl2classHttpBinding*" interface="*
> tns:ServiceInterface*" whttp:methodDefault="*POST*" type="*
> http://www.w3.org/ns/wsdl/http*">
>  * * <wsdl2:operation ref="*tns:add*" whttp:location="*Wsdl2class/add*" />
>  * * </wsdl2:binding>
>  *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <
> wsdl2:binding name="*Wsdl2classSoap12Binding*" interface="*
> tns:ServiceInterface*" type="*http://www.w3.org/ns/wsdl/soap*"wsoap:version
> ="*1.2*">
>  * * <wsdl2:operation ref="*tns:add*" />
>  * * </wsdl2:binding>
>  *-* <http://localhost:8080/axis2/services/Wsdl2class?wsdl2#> <
> wsdl2:service name="*Wsdl2class*" interface="*tns:ServiceInterface*">
>  * * <wsdl2:endpoint name="*Wsdl2classHttpSoap12Endpoint*" binding="*
> tns:Wsdl2classSoap12Binding*" address="*
> http://192.168.10.144:8080/axis2/services/Wsdl2class.Wsdl2classHttpSoap12Endpoint
> *" />
>  * * <wsdl2:endpoint name="*Wsdl2classHttpEndpoint*" binding="*
> tns:Wsdl2classHttpBinding*" address="*
> http://192.168.10.144:8080/axis2/services/Wsdl2class.Wsdl2classHttpEndpoint
> *" />
>  * * <wsdl2:endpoint name="*Wsdl2classHttpSoap11Endpoint*" binding="*
> tns:Wsdl2classSoap11Binding*" address="*
> http://192.168.10.144:8080/axis2/services/Wsdl2class.Wsdl2classHttpSoap11Endpoint
> *" />
>  * * </wsdl2:service>
>  * * </wsdl2:description>
>
>
>
>
> So as you can see, I have not one binding and one endpoint as in the
> original WSDL provided
>
> Can you help me to have the same WSDL2.0 after deployement ?
> Thanx a lot.
>
>
>
>



-- 
Keith Chapman
Senior Software Engineer
WSO2 Inc.
Oxygenating the Web Service Platform.
http://wso2.org/

blog: http://www.keith-chapman.org