This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 158231 - EJB require local copies of WSDL/schemas
Summary: EJB require local copies of WSDL/schemas
Status: RESOLVED FIXED
Alias: None
Product: webservices
Classification: Unclassified
Component: JAX-WS (show other bugs)
Version: 6.x
Hardware: PC All
: P2 blocker (vote)
Assignee: Milan Kuchtiak
URL:
Keywords:
Depends on: 149790
Blocks:
  Show dependency tree
 
Reported: 2009-02-09 20:52 UTC by jasonray76
Modified: 2009-02-19 23:29 UTC (History)
1 user (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description jasonray76 2009-02-09 20:52:40 UTC
Copies of the reference WSDL/schemas must reside within the Xml-resources directory of the EJB project (rather than
pointing to a shared/common location).  This creates a maintenance issue to keep these in sync.
Comment 1 Petr Jiricka 2009-02-11 17:54:41 UTC
I assume you are referring to WSDL/schemas used by the Web service creation/consumption features, right? Reassigning to
the web services/JAX-WS area.
Comment 2 Milan Kuchtiak 2009-02-11 18:26:51 UTC
I am not sure I understand. What do you mean with shared/common location ?
Do you mean META-INF/wsdl directory or do you mean url value specified for wsimport:wsdlLocation attribute ?

I think, this is very similar to issue 158226.
Implementing jax-ws-catalog mechanism should help.
Comment 3 Milan Kuchtiak 2009-02-16 12:29:59 UTC
ja-ws-catalog.xml mechanism implemented. See the issue 149790.

To explain the difference between wsdl file located under xml-resources directory (1)
and wsdl file in WEB-INF(META-INF)/wsdl (2).

The first one is used by JAX-WS:wsimport ant task to generate JAX-WS stub classes and other java artifacts, later used 
to implement a web service (WS from WSDL) or to create web service client.

The second one is exposed by the web server for web service (e.g. http://www.myserver.com/HelloService?wsdl), or WS
client may use it, in runtime, instead of the version located on disk.

Example :

Original wsdl is located at:
file:/home/mkuchtiak/Documents/wsdl/HelloService.wsdl

jax-ws-catalog.xml contains :
<system systemId="file:/home/mkuchtiak/Documents/wsdl/HelloService.wsdl" uri="wsdl/HelloService.wsdl"/>

Finally the WEB-INF(META-INF)/wsdl/HelloService.wsdl will be used by client in runtime.

Note: sometimes there is useful to generate java artifacts from different wsdl version than one exposed by the server.
       (e.g. JAXB customization is understandable only by JAX-WS framework)
Comment 4 Quality Engineering 2009-02-18 10:21:11 UTC
Integrated into 'main-golden', will be available in build *200902180201* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress)
Changeset: http://hg.netbeans.org/main/rev/880e0af72618
User: mkuchtiak@netbeans.org
Log: #158226, #158231, #149790 implement jax-ws-catalog for Ant projects