Hi

IMHO the easiest strategy would be to support
http://localhost:8080/myapp/services/MyService/wsdl queries,

with ?wsdl the only way to serve relative imports is to overwrite importing entities to use absolute URLs. '/wsdl' allows for the composability on the client side while giving the server two options :
* overwrite the url (the only option with ?wsdl)
* map MyService/wsdl to some folder keeping the imports or some query handler and let the client runtime compose the relative URL with the original one, most ones can do it easily. Assuming the wsdl retrieved from the http://localhost:8080/myapp/services/MyService/wsdl imports two more schemas using relative paths then the client can compose the paths like this
http://localhost:8080/myapp/services/MyService/wsdl/imported.xsd
http://localhost:8080/myapp/services/MyService/wsdl/bar/imported.xsd

Inlining won't really work for wsdl imports due to different namespaces...

What would be your opinion on /wsdl like queries as opposed to ?wsdl ones ?

Cheers, Sergey

----- Original Message ----- From: "Daniel Kulp" <[EMAIL PROTECTED]>
To: <[email protected]>
Cc: "Christopher Moesel" <[EMAIL PROTECTED]>
Sent: Monday, April 16, 2007 2:50 PM
Subject: Re: Importing XSDs in a WSDL



Just FYI:  this is a known "restriction" at this point.   However, I'm
going to be working on fixing it this week.   It is a big hold up for
some of the work I need done.

Dan


On Monday 16 April 2007 08:50, Christopher Moesel wrote:
Hello,

I would prefer to keep my schema types in a separate XSD file rather
than define them inside the WSDL file.  So, I use an xsd:import to
accomplish this.

This appears to work well in CXF with one exception:
When I view the wsdl at
http://localhost:8080/myapp/services/MyService?wsdl the import doesn't
resolve correctly, since it is a relative import.

I want to avoid using an absolute address for the import, since this
will be deployed on several different servers.  I suppose I could use
"../MyService.xsd" as a relative address, but then that affects my
project's file structure so that I can't have the XSD and WSDL in the
same directory.

Any ideas or work-arounds?

Thanks,
Chris

--
J. Daniel Kulp
Principal Engineer
IONA
P: 781-902-8727    C: 508-380-7194
[EMAIL PROTECTED]
http://www.dankulp.com/blog

Reply via email to