You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@geronimo.apache.org by Janko Heilgeist <ja...@dalighe.de> on 2009/01/07 17:52:59 UTC

Re: Resolving wsdlLocation with jax-ws-catalog.xml

I'd like to "bump" this question to the front as it's still open and as
a reference for others. In the meantime I retried Jetty/CXF and simply
removed the "<!DOCTYPE>" declaration. This change fixed the problem with
this particular assembly and the catalog is now read and correctly
applied while resolving the URL.

However, the exception persists with Tomcat/Axis even with this
modification.

I filed bug reports for these issues:

Jetty/CXF:
https://issues.apache.org/jira/browse/GERONIMO-4500

Tomcat/Axis:
https://issues.apache.org/jira/browse/GERONIMO-4501

Regards, Janko

Janko Heilgeist wrote:
> Hi Jarek,
> 
> I updated my sources from the SVN repository and recompiled both
> assemblies to rule out any obsolete code issues. The problem still
> occurs with both assemblies, but the error is a little bit different.
> 
> Tomcat/Axis:
> 2008-12-12 12:41:46,844 ERROR [startup] Unable to read wsdl file
> http://example.com/HelloWorld.wsdl
> 
> Jetty/CXF is a little bit more helpful. The ultimate log message is
> identical to the Tomcat/Axis case, but it is accompanied by an exception
> that says:
> 
> 2008-12-12 11:52:29,109 WARN  [OASISCatalogManager] Error loading
> META-INF/jax-ws-catalog.xml catalog files
> java.io.FileNotFoundException:
> http://www.oasis-open.org/committees/entity/release/1.1/catalog.dtd
> 
> I've attached the catalog file for reference and I can provide a minimal
> test EAR with sources, too, if needed.
> 
> Janko
> 
> Jarek Gawor wrote:
>> What assembly are you using Tomcat or Jetty? if Tomcat, can you try
>> with Jetty/CXF?
>>
>> Jarek
>>
>> On Thu, Dec 11, 2008 at 8:46 AM, Janko Heilgeist <ja...@dalighe.de> wrote:
>>> Hi,
>>>
>>> I have a problem, trying to deploy an EAR with a web service. The EAR
>>> contains a lib/mycore.jar with all classes, SEI and service stub
>>> generated from an existing WSDL (which is also inside this JAR). Another
>>> myservice.jar contains the actual EJB implementing the web service.
>>>
>>> I tried to annotate the web service implementation with
>>>
>>> @WebService( ..., wsdlLocation="http://example.com/myservice.wsdl")
>>>
>>> and add a META-INF/jax-ws-catalog.xml to lib/mycore.jar:
>>>
>>> <?xml version="1.0" encoding="UTF-8"?>
>>> <!DOCTYPE catalog PUBLIC "-//OASIS//DTD XML Catalogs V1.1//EN"
>>> "http://www.oasis-open.org/committees/entity/release/1.1/catalog.dtd">
>>> <catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">
>>>        <system
>>>                systemId="http://example.com/myservice.wsdl"
>>>                uri="wsdl/myservice.wsdl"/>
>>> </catalog>
>>>
>>> Glassfish resolves the absolute wsdlLocation with the help of the
>>> catalog file. But Geronimo seems to ignore the jax-ws-catalog.xml in the
>>> classpath and throws an exception during deployment. (I use 2.2-SNAPSHOT
>>> to leverage JAX-WS 2.1.)
>>>
>>> Why does Geronimo ignore the jax-ws-catalog.xml? Is this not implemented
>>> yet?
>>>
>>> Janko
>>>

Re: Resolving wsdlLocation with jax-ws-catalog.xml

Posted by Jarek Gawor <jg...@gmail.com>.
Janko,

Thanks for opening these bugs. For GERONIMO-4500 as Dan suggested just
change the DTD version number as apparently the OASIS web site does
not serve the 1.1 version. In Geronimo we could disable DTD lookup or
provide the DTD locally but either way it's a minor issue.
GERONIMO-4501 looks like a bigger problem and I'll work on it next.

Thanks again,
Jarek

On Wed, Jan 7, 2009 at 11:52 AM, Janko Heilgeist <ja...@dalighe.de> wrote:
> I'd like to "bump" this question to the front as it's still open and as
> a reference for others. In the meantime I retried Jetty/CXF and simply
> removed the "<!DOCTYPE>" declaration. This change fixed the problem with
> this particular assembly and the catalog is now read and correctly
> applied while resolving the URL.
>
> However, the exception persists with Tomcat/Axis even with this
> modification.
>
> I filed bug reports for these issues:
>
> Jetty/CXF:
> https://issues.apache.org/jira/browse/GERONIMO-4500
>
> Tomcat/Axis:
> https://issues.apache.org/jira/browse/GERONIMO-4501
>
> Regards, Janko
>
> Janko Heilgeist wrote:
>> Hi Jarek,
>>
>> I updated my sources from the SVN repository and recompiled both
>> assemblies to rule out any obsolete code issues. The problem still
>> occurs with both assemblies, but the error is a little bit different.
>>
>> Tomcat/Axis:
>> 2008-12-12 12:41:46,844 ERROR [startup] Unable to read wsdl file
>> http://example.com/HelloWorld.wsdl
>>
>> Jetty/CXF is a little bit more helpful. The ultimate log message is
>> identical to the Tomcat/Axis case, but it is accompanied by an exception
>> that says:
>>
>> 2008-12-12 11:52:29,109 WARN  [OASISCatalogManager] Error loading
>> META-INF/jax-ws-catalog.xml catalog files
>> java.io.FileNotFoundException:
>> http://www.oasis-open.org/committees/entity/release/1.1/catalog.dtd
>>
>> I've attached the catalog file for reference and I can provide a minimal
>> test EAR with sources, too, if needed.
>>
>> Janko
>>
>> Jarek Gawor wrote:
>>> What assembly are you using Tomcat or Jetty? if Tomcat, can you try
>>> with Jetty/CXF?
>>>
>>> Jarek
>>>
>>> On Thu, Dec 11, 2008 at 8:46 AM, Janko Heilgeist <ja...@dalighe.de> wrote:
>>>> Hi,
>>>>
>>>> I have a problem, trying to deploy an EAR with a web service. The EAR
>>>> contains a lib/mycore.jar with all classes, SEI and service stub
>>>> generated from an existing WSDL (which is also inside this JAR). Another
>>>> myservice.jar contains the actual EJB implementing the web service.
>>>>
>>>> I tried to annotate the web service implementation with
>>>>
>>>> @WebService( ..., wsdlLocation="http://example.com/myservice.wsdl")
>>>>
>>>> and add a META-INF/jax-ws-catalog.xml to lib/mycore.jar:
>>>>
>>>> <?xml version="1.0" encoding="UTF-8"?>
>>>> <!DOCTYPE catalog PUBLIC "-//OASIS//DTD XML Catalogs V1.1//EN"
>>>> "http://www.oasis-open.org/committees/entity/release/1.1/catalog.dtd">
>>>> <catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">
>>>>        <system
>>>>                systemId="http://example.com/myservice.wsdl"
>>>>                uri="wsdl/myservice.wsdl"/>
>>>> </catalog>
>>>>
>>>> Glassfish resolves the absolute wsdlLocation with the help of the
>>>> catalog file. But Geronimo seems to ignore the jax-ws-catalog.xml in the
>>>> classpath and throws an exception during deployment. (I use 2.2-SNAPSHOT
>>>> to leverage JAX-WS 2.1.)
>>>>
>>>> Why does Geronimo ignore the jax-ws-catalog.xml? Is this not implemented
>>>> yet?
>>>>
>>>> Janko
>>>>
>