You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by Venkata Krishnan <fo...@gmail.com> on 2007/07/19 18:57:58 UTC

Qurey related to wsdl imports

Hi,

I am taking a look at
https://issues.apache.org/jira/browse/TUSCANY-1426 and to get to the
crux of that problem I am first trying to see if wsdl imports work.

Here is what I am attempting.  There is B.wsdl that imports A.wsdl,
where B.wsdl has the bindings and services defined and A.wsdl has the
types, messages and porttypes defined.

But this does not seem to work.  It ends up that while Tuscany WSDL
Interface processor is dealing with B.wsdl it does not seem to find
the elements  (remember they are defined inside inline xsd in A.wsdl).

Has this been tried out before?  Could somebody please point me to
samples or itests that have this working in the trunk?

Related to this, but slightly different question is...
- Do we expect WSDL4J to be resolving the imports and handing us over
an aggregated wsdl definition or are we going to use the model  and
artifact resolution mechanisms within Tuscany to do this ?

Thanks

- Venkat

---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


Re: Qurey related to wsdl imports

Posted by Scott Kurz <sc...@gmail.com>.
Sebastien,

Venkat's patch includes a test showing what I'd hoped to get working in
opening the JIRA.   In r557916 you can see the portType and binding WSDL
files, both the same TNS and the latter doing a WSDL import of the former.

Haven't had a chance to look at his changes.... but I wanted to clarify that
I wasn't suggesting being able to directly use schema defs from an imported
WSDL, but rather only
the portType definition.

It was in some code in WSDLDocumentProcessor processing schema defs which
happened to be where we broke down before this patch.. which is how that got
brought up.

On a related note, I happened to notice that
org.apache.axis2.wsdl.util.WSDL4JImportedWSDLHelper seems to exist with the
goal of aggregating info across WSDL imports but haven't gotten a chance to
look at this further (or even test out the r557916  patch actually).

Thanks,
Scott



On 7/20/07, Jean-Sebastien Delfino <js...@apache.org> wrote:
>
> Venkata Krishnan wrote:
> > Hi,
> >
> > I am taking a look at
> > https://issues.apache.org/jira/browse/TUSCANY-1426 and to get to the
> > crux of that problem I am first trying to see if wsdl imports work.
> >
> > Here is what I am attempting.  There is B.wsdl that imports A.wsdl,
> > where B.wsdl has the bindings and services defined and A.wsdl has the
> > types, messages and porttypes defined.
> >
> > But this does not seem to work.  It ends up that while Tuscany WSDL
> > Interface processor is dealing with B.wsdl it does not seem to find
> > the elements  (remember they are defined inside inline xsd in A.wsdl).
> >
> > Has this been tried out before?  Could somebody please point me to
> > samples or itests that have this working in the trunk?
> >
> > Related to this, but slightly different question is...
> > - Do we expect WSDL4J to be resolving the imports and handing us over
> > an aggregated wsdl definition or are we going to use the model  and
> > artifact resolution mechanisms within Tuscany to do this ?
> >
> > Thanks
> >
> > - Venkat
> >
>
> Importing A.wsdl in B.wsdl does not make XSD elements from an XML schema
> inlined in A.wsdl available to B.wsdl. XSD elements are only made
> available by XSD imports. However, I'm not sure I completely understand
> your scenario as I'm guessing from your description. Can you post the
> actual A.wsdl and B.wsdl?
>
> With respect to the artifact resolution mechanism:
> - if wsdlLocation  and schemaLocation are specified in a WSDL or XSD, we
> should honor them
> - if they are not present, and in XML documents that do not use these
> mechanisms (e.g. SCA .composite files) we should use the Tuscany
> namespace based resolution mechanism, find XML artifacts by namespace in
> the current contribution and the set of the namespaces imported in it by
> SCA <imports> (in sca-contribution.xml)
>
> This is my understanding of how artifact resolution should work in SCA
> contributions, described in sections 1.10.2.1 and 1.10.5 of the SCA
> assembly spec 1.0.
>
> --
> Jean-Sebastien
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: tuscany-dev-help@ws.apache.org
>
>

Re: Qurey related to wsdl imports

Posted by Jean-Sebastien Delfino <js...@apache.org>.
Venkata Krishnan wrote:
> Hi,
>
> I am taking a look at
> https://issues.apache.org/jira/browse/TUSCANY-1426 and to get to the
> crux of that problem I am first trying to see if wsdl imports work.
>
> Here is what I am attempting.  There is B.wsdl that imports A.wsdl,
> where B.wsdl has the bindings and services defined and A.wsdl has the
> types, messages and porttypes defined.
>
> But this does not seem to work.  It ends up that while Tuscany WSDL
> Interface processor is dealing with B.wsdl it does not seem to find
> the elements  (remember they are defined inside inline xsd in A.wsdl).
>
> Has this been tried out before?  Could somebody please point me to
> samples or itests that have this working in the trunk?
>
> Related to this, but slightly different question is...
> - Do we expect WSDL4J to be resolving the imports and handing us over
> an aggregated wsdl definition or are we going to use the model  and
> artifact resolution mechanisms within Tuscany to do this ?
>
> Thanks
>
> - Venkat
>

Importing A.wsdl in B.wsdl does not make XSD elements from an XML schema 
inlined in A.wsdl available to B.wsdl. XSD elements are only made 
available by XSD imports. However, I'm not sure I completely understand 
your scenario as I'm guessing from your description. Can you post the 
actual A.wsdl and B.wsdl?

With respect to the artifact resolution mechanism:
- if wsdlLocation  and schemaLocation are specified in a WSDL or XSD, we 
should honor them
- if they are not present, and in XML documents that do not use these 
mechanisms (e.g. SCA .composite files) we should use the Tuscany 
namespace based resolution mechanism, find XML artifacts by namespace in 
the current contribution and the set of the namespaces imported in it by 
SCA <imports> (in sca-contribution.xml)

This is my understanding of how artifact resolution should work in SCA 
contributions, described in sections 1.10.2.1 and 1.10.5 of the SCA 
assembly spec 1.0.

-- 
Jean-Sebastien


---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


Re: Qurey related to wsdl imports

Posted by Venkata Krishnan <fo...@gmail.com>.
Hi,

I tried this further by adding a little bit of code in the
WSDLDocumentProcessor.read method.  Over there there is a fragment
that scans the schema elements in the read wsdl definition and adds
them to XMLSchemaCollection.  To this loop I added code to peek into
the imported definitions as well and add the schema elements in there
to this XMLSchemaCollection.  Doing this seems to get the imports
going for now.  Not sure if this is the right thing to do.

- Venkat

On 7/19/07, Venkata Krishnan <fo...@gmail.com> wrote:
> Hi,
>
> I am taking a look at
> https://issues.apache.org/jira/browse/TUSCANY-1426 and to get to the
> crux of that problem I am first trying to see if wsdl imports work.
>
> Here is what I am attempting.  There is B.wsdl that imports A.wsdl,
> where B.wsdl has the bindings and services defined and A.wsdl has the
> types, messages and porttypes defined.
>
> But this does not seem to work.  It ends up that while Tuscany WSDL
> Interface processor is dealing with B.wsdl it does not seem to find
> the elements  (remember they are defined inside inline xsd in A.wsdl).
>
> Has this been tried out before?  Could somebody please point me to
> samples or itests that have this working in the trunk?
>
> Related to this, but slightly different question is...
> - Do we expect WSDL4J to be resolving the imports and handing us over
> an aggregated wsdl definition or are we going to use the model  and
> artifact resolution mechanisms within Tuscany to do this ?
>
> Thanks
>
> - Venkat
>

---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org