You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@tuscany.apache.org by MAC <ma...@gmail.com> on 2011/04/05 15:53:43 UTC
tuscany generated wsdl has extra data
Hi ,
i am new to tuscany . I recently downloaded the project and tried to set it
up .
When i open wsdl in internet explorer it shows the wsdl . It has some extra
data
The line in my wsdl :
<wsdl:import namespace="http://jupiter.ptg.company.com/jupiter.wsdl"
location="/jupiter/World?wsdl=WEB-INF/classes/jupiter.wsdl">
after ?wsdl what is =WEB-INF/classes/jupiter.wsdl and how to remove this .
Please help me on this .
--
thanks
--mac
Re: tuscany generated wsdl has extra data
Posted by Simon Nash <na...@apache.org>.
MAC wrote:
> Hi Simon ,
>
> i recently upgraded to 1.6.2 tuscany to see if the problem has been
> resolved as i saw in your changes file that came with 1.6.2
> notification that
> " TUSCANY-3408 - Fix reference to missing namespace hostname in
> generated WSDL " has been fixed
>
>
> However my problem did not got resolved and hence i am providing you
> more info .
>
> Steps to recreate the problem of missing namespace in wsdl :
>
> 1. unzip the attached file
>
> 2. run mvn
>
> 3. copy the generated *exploded* war file folder from target\jupiter to
> <jetty_home>\webapps folder. (Do not copy the generated Jupiter.war
> file, use the exploded 'Jupiter' folder only. There's a separate issue
> with using the .war file) 4. Get the WSDL fie using the URL -
> http://localhost:8080/jupiter/BPELHelloWorldComponent?wsdl=WEB-INF/classes/jupiter.wsdl
> (assuming your jetty instance is running on localhost:8080)
>
>
>
> The WSDL file will have the malformed partnerlink tags with the missing
> namespace, i.e.
>
>
>
> <{http://schemas.xmlsoap.org/ws/2004/03/partner-link/}partnerLinkType
> name=
> <http://schemas.xmlsoap.org/ws/2004/03/partner-link/}partnerLinkType
> name=>"JupiterPartnerLinkType"> <:role name="me"
> portType="{http://jupiter.ptg.company.com/jupiter.wsdl}JupiterPortType">
>
> <:role name="you"
> portType="{http://jupiter.ptg.company.com/jupiter.wsdl}JupiterPortType">
>
> </{http://schemas.xmlsoap.org/ws/2004/03/partner-link/}partnerLinkType>
>
>
>
> This is using jetty 6.1.18, Tuscany 1.6.2, maven 2.2.1and java 1.6.0_14
> on Win XP.
>
>
>
> I hope that i have provided you with all info required to resolve this .
> Please reply if i need to provide you with more info .
>
>
> Thanks and regards
>
> --mac
>
Hi Mac,
Thanks for sending this. I have reproduced the problem, which is caused
by a bug in Tuscany. This bug was reported some time ago as TUSCANY-2322
but was incorrectly marked as fixed and closed. I have reopened TUSCANY-2322
and I will commit a fix with a test case to the 1.x trunk tomorrow.
Simon
>
> On Thu, Apr 7, 2011 at 12:23 AM, Simon Nash <nash@apache.org
> <ma...@apache.org>> wrote:
>
> MAC wrote:
>
> Thanks for clarifying that Simon.
>
>
> There also seems to be some problem with the WSDL referred to by
> the import statement. If I send a request for the URL
>
>
> http://.../jupiter/World?wsdl=WEB-INF/classes/jupiter.wsdl
> (which is the imported WSDL file). The WSDL returned by the
> server has the following garbled XML tags:
>
>
> <{http://schemas.xmlsoap.org/ws/2004/03/partner-link/}partnerLinkType
> <http://schemas.xmlsoap.org/ws/2004/03/partner-link/%7DpartnerLinkType>
> name=
> <http://schemas.xmlsoap.org/ws/2004/03/partner-link/}partnerLinkType
> <http://schemas.xmlsoap.org/ws/2004/03/partner-link/%7DpartnerLinkType>
> name=>"WorldPartnerLinkType"> <:role name="me"
> portType="{http://jupiter.ptg.company.com/jupiter.wsdl}WorldPortType
> <http://jupiter.ptg.company.com/jupiter.wsdl%7DWorldPortType>">
>
>
> <:role name="you"
> portType="{http://jupiter.ptg.company.com/jupiter.wsdl}WorldPortType
> <http://jupiter.ptg.company.com/jupiter.wsdl%7DWorldPortType>">
>
> </{http://schemas.xmlsoap.org/ws/2004/03/partner-link/}partnerLinkType
> <http://schemas.xmlsoap.org/ws/2004/03/partner-link/%7DpartnerLinkType>>
>
>
> The corresponding WSDL file that actually is deployed to the
> server webapps folder has this content instead:
>
>
> <plnk:partnerLinkType name=" WorldPartnerLinkType ">
>
> <plnk:role name="me" portType="tns: WorldPortType "/>
>
> <plnk:role name="you" portType="tns: WorldPortType "/>
>
> </plnk:partnerLinkType>
>
>
> Please see yellowed section above corresponding to green portion
> below it .
> The URI for the plnk namespace is "
> http://schemas.xmlsoap.org/ws/2004/03/partner-link/" and for tns
> is "http://jupiter.ptg.company.com/jupiter.wsdl"
>
>
> My Tuscany component is using the BPEL implementation type and
> is deployed in Jetty as a war file.
>
>
> Regards
> --mac
>
> I haven't seen this problem before. Which version of Tuscany are you
> using? If you are using 2.x, this uses binding-ws-runtime-jaxws by
> default, which is known to have problems. The fix is to either use
> Tuscany 1.x or configure Tuscany 2.x to use binding-ws-runtime-axis2
> instead. If you are using Tuscany 1.x, please create a JIRA and attach
> your war file.
>
> Simon
>
>
>
> On Wed, Apr 6, 2011 at 2:30 AM, Simon Nash <nash@apache.org
> <ma...@apache.org> <mailto:nash@apache.org
> <ma...@apache.org>>> wrote:
>
> MAC wrote:
>
> Hi ,
>
> i am new to tuscany . I recently downloaded the project and
> tried to set it up .
>
> When i open wsdl in internet explorer it shows the wsdl .
> It has
> some extra data
>
> The line in my wsdl :
>
> <wsdl:import
> namespace="http://jupiter.ptg.company.com/jupiter.wsdl"
> location="/jupiter/World?wsdl=WEB-INF/classes/jupiter.wsdl">
>
> after ?wsdl what is =WEB-INF/classes/jupiter.wsdl and how to
> remove this . Please help me on this .
>
> -- thanks
> --mac
>
> The Tuscany-generated WSDL is a "wrapper" around your own
> WSDL. The
> extra data "/jupiter/World?wsdl=WEB-INF/classes/jupiter.wsdl"
> is the
> syntax used by Axis2 to resolve this <wsdl:import> tag to
> your own
> WSDL file which is packaged at the specified relative
> location within
> the webapp.
>
> This <wsdl:import> tag should "just work" when a client
> accesses the
> Tuscany-generated WSDL using a tool such as WSDL4J or wsimport.
> It wouldn't be a good idea to remove the extra data because
> this would
> prevent the import from being resolved.
>
> Simon
>
>
>
>
> --
> thanks
> --mac
>
>
>
>
>
> --
> thanks
> --mac
>
Re: tuscany generated wsdl has extra data
Posted by MAC <ma...@gmail.com>.
Hi Simon ,
i recently upgraded to 1.6.2 tuscany to see if the problem has been resolved
as i saw in your changes file that came with 1.6.2 notification that
" TUSCANY-3408 - Fix reference to missing namespace hostname in generated
WSDL " has been fixed
However my problem did not got resolved and hence i am providing you more
info .
Steps to recreate the problem of missing namespace in wsdl :
1. unzip the attached file
2. run mvn
3. copy the generated *exploded* war file folder from target\jupiter to
<jetty_home>\webapps folder. (Do not copy the generated Jupiter.war file,
use the exploded 'Jupiter' folder only. There's a separate issue with using
the .war file) 4. Get the WSDL fie using the URL -
http://localhost:8080/jupiter/BPELHelloWorldComponent?wsdl=WEB-INF/classes/jupiter.wsdl(assuming
your jetty instance is running on localhost:8080)
The WSDL file will have the malformed partnerlink tags with the missing
namespace, i.e.
<{http://schemas.xmlsoap.org/ws/2004/03/partner-link/}partnerLinkType
name="JupiterPartnerLinkType">
<:role name="me" portType="{
http://jupiter.ptg.company.com/jupiter.wsdl}JupiterPortType">
<:role name="you" portType="{
http://jupiter.ptg.company.com/jupiter.wsdl}JupiterPortType">
</{http://schemas.xmlsoap.org/ws/2004/03/partner-link/}partnerLinkType>
This is using jetty 6.1.18, Tuscany 1.6.2, maven 2.2.1and java 1.6.0_14 on
Win XP.
I hope that i have provided you with all info required to resolve this .
Please reply if i need to provide you with more info .
Thanks and regards
--mac
On Thu, Apr 7, 2011 at 12:23 AM, Simon Nash <na...@apache.org> wrote:
> MAC wrote:
>
>> Thanks for clarifying that Simon.
>>
>>
>> There also seems to be some problem with the WSDL referred to by the
>> import statement. If I send a request for the URL
>>
>>
>> http://.../jupiter/World?wsdl=WEB-INF/classes/jupiter.wsdl (which is the
>> imported WSDL file). The WSDL returned by the server has the following
>> garbled XML tags:
>>
>>
>> <{http://schemas.xmlsoap.org/ws/2004/03/partner-link/}partnerLinkTypename= <
>> http://schemas.xmlsoap.org/ws/2004/03/partner-link/}partnerLinkTypename=>"WorldPartnerLinkType"> <:role name="me" portType="{
>> http://jupiter.ptg.company.com/jupiter.wsdl}WorldPortType">
>>
>>
>> <:role name="you" portType="{
>> http://jupiter.ptg.company.com/jupiter.wsdl}WorldPortType">
>>
>> </{http://schemas.xmlsoap.org/ws/2004/03/partner-link/}partnerLinkType>
>>
>>
>> The corresponding WSDL file that actually is deployed to the server
>> webapps folder has this content instead:
>>
>>
>> <plnk:partnerLinkType name=" WorldPartnerLinkType ">
>>
>> <plnk:role name="me" portType="tns: WorldPortType "/>
>>
>> <plnk:role name="you" portType="tns: WorldPortType "/>
>>
>> </plnk:partnerLinkType>
>>
>>
>> Please see yellowed section above corresponding to green portion below it
>> .
>> The URI for the plnk namespace is "
>> http://schemas.xmlsoap.org/ws/2004/03/partner-link/" and for tns is "
>> http://jupiter.ptg.company.com/jupiter.wsdl"
>>
>>
>> My Tuscany component is using the BPEL implementation type and is deployed
>> in Jetty as a war file.
>>
>>
>> Regards
>> --mac
>>
>> I haven't seen this problem before. Which version of Tuscany are you
> using? If you are using 2.x, this uses binding-ws-runtime-jaxws by
> default, which is known to have problems. The fix is to either use
> Tuscany 1.x or configure Tuscany 2.x to use binding-ws-runtime-axis2
> instead. If you are using Tuscany 1.x, please create a JIRA and attach
> your war file.
>
> Simon
>
>
>
>> On Wed, Apr 6, 2011 at 2:30 AM, Simon Nash <nash@apache.org <mailto:
>> nash@apache.org>> wrote:
>>
>> MAC wrote:
>>
>> Hi ,
>>
>> i am new to tuscany . I recently downloaded the project and
>> tried to set it up .
>>
>> When i open wsdl in internet explorer it shows the wsdl . It has
>> some extra data
>>
>> The line in my wsdl :
>>
>> <wsdl:import
>> namespace="http://jupiter.ptg.company.com/jupiter.wsdl"
>> location="/jupiter/World?wsdl=WEB-INF/classes/jupiter.wsdl">
>>
>> after ?wsdl what is =WEB-INF/classes/jupiter.wsdl and how to
>> remove this . Please help me on this .
>>
>> -- thanks
>> --mac
>>
>> The Tuscany-generated WSDL is a "wrapper" around your own WSDL. The
>> extra data "/jupiter/World?wsdl=WEB-INF/classes/jupiter.wsdl" is the
>> syntax used by Axis2 to resolve this <wsdl:import> tag to your own
>> WSDL file which is packaged at the specified relative location within
>> the webapp.
>>
>> This <wsdl:import> tag should "just work" when a client accesses the
>> Tuscany-generated WSDL using a tool such as WSDL4J or wsimport.
>> It wouldn't be a good idea to remove the extra data because this would
>> prevent the import from being resolved.
>>
>> Simon
>>
>>
>>
>>
>> --
>> thanks
>> --mac
>>
>>
>
--
thanks
--mac
Re: tuscany generated wsdl has extra data
Posted by Simon Nash <na...@apache.org>.
MAC wrote:
> Thanks for clarifying that Simon.
>
>
>
> There also seems to be some problem with the WSDL referred to by the
> import statement. If I send a request for the URL
>
>
>
> http://.../jupiter/World?wsdl=WEB-INF/classes/jupiter.wsdl (which is the
> imported WSDL file). The WSDL returned by the server has the following
> garbled XML tags:
>
>
>
> <{http://schemas.xmlsoap.org/ws/2004/03/partner-link/}partnerLinkType
> name=
> <http://schemas.xmlsoap.org/ws/2004/03/partner-link/}partnerLinkType
> name=>"WorldPartnerLinkType"> <:role name="me"
> portType="{http://jupiter.ptg.company.com/jupiter.wsdl}WorldPortType">
>
> <:role name="you"
> portType="{http://jupiter.ptg.company.com/jupiter.wsdl}WorldPortType">
>
> </{http://schemas.xmlsoap.org/ws/2004/03/partner-link/}partnerLinkType>
>
>
>
> The corresponding WSDL file that actually is deployed to the server
> webapps folder has this content instead:
>
>
>
> <plnk:partnerLinkType name=" WorldPartnerLinkType ">
>
> <plnk:role name="me" portType="tns: WorldPortType "/>
>
> <plnk:role name="you" portType="tns: WorldPortType "/>
>
> </plnk:partnerLinkType>
>
>
>
> Please see yellowed section above corresponding to green portion below it .
>
> The URI for the plnk namespace is "
> http://schemas.xmlsoap.org/ws/2004/03/partner-link/" and for tns is
> "http://jupiter.ptg.company.com/jupiter.wsdl"
>
>
>
> My Tuscany component is using the BPEL implementation type and is
> deployed in Jetty as a war file.
>
>
>
> Regards
> --mac
>
I haven't seen this problem before. Which version of Tuscany are you
using? If you are using 2.x, this uses binding-ws-runtime-jaxws by
default, which is known to have problems. The fix is to either use
Tuscany 1.x or configure Tuscany 2.x to use binding-ws-runtime-axis2
instead. If you are using Tuscany 1.x, please create a JIRA and attach
your war file.
Simon
>
> On Wed, Apr 6, 2011 at 2:30 AM, Simon Nash <nash@apache.org
> <ma...@apache.org>> wrote:
>
> MAC wrote:
>
> Hi ,
>
> i am new to tuscany . I recently downloaded the project and
> tried to set it up .
>
> When i open wsdl in internet explorer it shows the wsdl . It has
> some extra data
>
> The line in my wsdl :
>
> <wsdl:import
> namespace="http://jupiter.ptg.company.com/jupiter.wsdl"
> location="/jupiter/World?wsdl=WEB-INF/classes/jupiter.wsdl">
>
> after ?wsdl what is =WEB-INF/classes/jupiter.wsdl and how to
> remove this . Please help me on this .
>
> --
> thanks
> --mac
>
> The Tuscany-generated WSDL is a "wrapper" around your own WSDL. The
> extra data "/jupiter/World?wsdl=WEB-INF/classes/jupiter.wsdl" is the
> syntax used by Axis2 to resolve this <wsdl:import> tag to your own
> WSDL file which is packaged at the specified relative location within
> the webapp.
>
> This <wsdl:import> tag should "just work" when a client accesses the
> Tuscany-generated WSDL using a tool such as WSDL4J or wsimport.
> It wouldn't be a good idea to remove the extra data because this would
> prevent the import from being resolved.
>
> Simon
>
>
>
>
> --
> thanks
> --mac
>
Re: tuscany generated wsdl has extra data
Posted by MAC <ma...@gmail.com>.
Thanks for clarifying that Simon.
There also seems to be some problem with the WSDL referred to by the import
statement. If I send a request for the URL
http://.../jupiter/World?wsdl=WEB-INF/classes/jupiter.wsdl (which is the
imported WSDL file). The WSDL returned by the server has the following
garbled XML tags:
<{http://schemas.xmlsoap.org/ws/2004/03/partner-link/}partnerLinkType
name="WorldPartnerLinkType">
<:role name="me" portType="{
http://jupiter.ptg.company.com/jupiter.wsdl}WorldPortType">
<:role name="you" portType="{
http://jupiter.ptg.company.com/jupiter.wsdl}WorldPortType">
</{http://schemas.xmlsoap.org/ws/2004/03/partner-link/}partnerLinkType>
The corresponding WSDL file that actually is deployed to the server webapps
folder has this content instead:
<plnk:partnerLinkType name=" WorldPartnerLinkType ">
<plnk:role name="me" portType="tns: WorldPortType "/>
<plnk:role name="you" portType="tns: WorldPortType "/>
</plnk:partnerLinkType>
Please see yellowed section above corresponding to green portion below it .
The URI for the plnk namespace is "
http://schemas.xmlsoap.org/ws/2004/03/partner-link/" and for tns is "
http://jupiter.ptg.company.com/jupiter.wsdl"
My Tuscany component is using the BPEL implementation type and is deployed
in Jetty as a war file.
Regards
--mac
On Wed, Apr 6, 2011 at 2:30 AM, Simon Nash <na...@apache.org> wrote:
> MAC wrote:
>
>> Hi ,
>>
>> i am new to tuscany . I recently downloaded the project and tried to set
>> it up .
>>
>> When i open wsdl in internet explorer it shows the wsdl . It has some
>> extra data
>>
>> The line in my wsdl :
>>
>> <wsdl:import namespace="http://jupiter.ptg.company.com/jupiter.wsdl"
>> location="/jupiter/World?wsdl=WEB-INF/classes/jupiter.wsdl">
>>
>> after ?wsdl what is =WEB-INF/classes/jupiter.wsdl and how to remove this .
>> Please help me on this .
>>
>> --
>> thanks
>> --mac
>>
>> The Tuscany-generated WSDL is a "wrapper" around your own WSDL. The
> extra data "/jupiter/World?wsdl=WEB-INF/classes/jupiter.wsdl" is the
> syntax used by Axis2 to resolve this <wsdl:import> tag to your own
> WSDL file which is packaged at the specified relative location within
> the webapp.
>
> This <wsdl:import> tag should "just work" when a client accesses the
> Tuscany-generated WSDL using a tool such as WSDL4J or wsimport.
> It wouldn't be a good idea to remove the extra data because this would
> prevent the import from being resolved.
>
> Simon
>
>
--
thanks
--mac
Re: tuscany generated wsdl has extra data
Posted by Simon Nash <na...@apache.org>.
MAC wrote:
> Hi ,
>
> i am new to tuscany . I recently downloaded the project and tried to set
> it up .
>
> When i open wsdl in internet explorer it shows the wsdl . It has some
> extra data
>
> The line in my wsdl :
>
> <wsdl:import namespace="http://jupiter.ptg.company.com/jupiter.wsdl"
> location="/jupiter/World?wsdl=WEB-INF/classes/jupiter.wsdl">
>
> after ?wsdl what is =WEB-INF/classes/jupiter.wsdl and how to remove this
> . Please help me on this .
>
> --
> thanks
> --mac
>
The Tuscany-generated WSDL is a "wrapper" around your own WSDL. The
extra data "/jupiter/World?wsdl=WEB-INF/classes/jupiter.wsdl" is the
syntax used by Axis2 to resolve this <wsdl:import> tag to your own
WSDL file which is packaged at the specified relative location within
the webapp.
This <wsdl:import> tag should "just work" when a client accesses the
Tuscany-generated WSDL using a tool such as WSDL4J or wsimport.
It wouldn't be a good idea to remove the extra data because this would
prevent the import from being resolved.
Simon