On 28/01/15 07:38, MayBee wrote:
Sergey Beryozkin wrote
I can add a property to WADLGenerator to avoid updating the relative
import/include references. Can you give some example of where your
schemas are located, how is a root schema includes/imports one of them,
and which URI you use (where is war context, servlet path in that URI)
to get a given WADL ? I'd like to see if adding such property would
actually work or not
* Our schemas are located in seperated system interface projects. Thus they
are finally located in the *.war within the system interface *.jar in the
WEB-INF/lib folder.
* The schemas are referenced via relatives paths like <include
schemaLocation="folder/part.xsd" id="someSubXsd"/>
* For the JaxbProvider and WadlGenerator, we address the xsds by
"classpath:/xsd/ourSchema.xsd".
* The URI to access the overview of differnet wadls is
HOST:PORT/WEP_APP_ROOT_KEY/SERVLET?_wadl
* The URI to access a specific jaxrs:server wadl is
HOST:PORT/WEP_APP_ROOT_KEY/SERVLET/JAXRS:SERVER@base?_wadl
So if WADL does not replace a "folder/part.xsd" with an absolute URI,
then, after issuing
/appPath/servletPath/somebase?_wadl
the default servlet would be expected to read
/appPath/servletPath/somebase/folder/part.xsd
or
/appPath/servletPath/folder/part.xsd
depending on whether the client uses URI resolve or not. Either way it
would not find it because "folder/part.xsd" is relative to /WEB-INF/lib
I'll probably just add the option not expand relative URIs anyway in
case such schemas can be located in a public folder...
Sergey
--
View this message in context:
http://cxf.547215.n5.nabble.com/included-xsd-s-are-not-resolved-for-wadl-generation-tp5753451p5753650.html
Sent from the cxf-user mailing list archive at Nabble.com.
--
Sergey Beryozkin
Talend Community Coders
http://coders.talend.com/
Blog: http://sberyozkin.blogspot.com