Actually, to follow up, if you check section 7.2.2 about the developer responsibilities, it states:

The wsdl-file element specifies a location of the WSDL description of the
service. The location is relative to the root of the module.

Thus, I think the "wsdl" dir is more of convention, but you would still need to specify it as part of the wsdlLocation. What's interesting is their examples don't even do that. They just use "WEB-INF/joe.wsdl" or similar. (see 8.3)

Dan



On May 14, 2008, at 12:14 PM, Daniel Kulp wrote:


On May 14, 2008, at 11:53 AM, Glen Mazza wrote:

2008-05-14 Daniel Kulp wrote:

Well, no.    For example, how would we know the filename of the wsdl
to even grab from that directory?


Sorry to grill you here--I'm just trying to get this as correct as it
can get. Just to clarify, then, while it may not pick up files from the
WEB-INF/wsdl folder by default as I was thinking, that folder should
still be the default location to look for WSDLs that are specified using
wsdlLocation (i.e., if no directory structure is provided), correct?

From the JSR-109 Spec[1], Version 1.2 (April 28, 2006):

Just FYI: with CXF being a standalone JAX-WS provider, JSR-109 stuff is not required to be supported. For example, we don't support injecting any @WebServiceRef things in at all at this point either. That's a J2EE thing. I don't think any of us really have delved into JSR109 as it pertains to CXF only. I know the Geronimo folks obviously have, but it's part of the web service deployer stuff, not something ingrained into CXF.

Thus, in short, I DOUBT the current stuff in CXF will look in WEB- INF/wsdl if you just specify a wsdlLocation of "foo.wsdl". The JAX- WS spec for standalone doesn't require it. I could be wrong though. With all the work Jarek and Jeff did for Geronimo, some of it might have been pushed into CXF.

Dan



There are a couple things in JSR-109 that don't match

Section 5.4: WSDL files are located relative to the root of the module and are typically located in the wsdl directory that is co-located with
the module deployment descriptor or a subdirectory of it.

Section 5.4.1: The wsdl directory is a well-known location that contains WSDL files and any relative content the WSDL files may reference. WSDL files and their relative references will be published during deployment.
See sections 8.2.4 and 8.2.5 for more details.

Section 8.2.4:  "A Web Services for Java EE provider is
required to provide a URL that maintains the referential integrity of
the WSDL document the service-ref (or a javax.xml.ws.WebServiceRef
annotated Web service reference) is bound to if the wsdl-file
(wsdlLocation in WebServiceRef) element refers to a document located in
the wsdl directory or one of its subdirectories."

Section 8.2.5: "A Web Services for Java EE provider is required to
support publishing a deployed WSDL document if the
wsdlLocation element in the Web service annotations (described in
section 5.3.2.1 and 5.3.2.2) or Web services deployment descriptor
(webservices.xml) wsdl-file element refers to a WSDL file contained in
the wsdl directory or subdirectory, as described in section 5.4.1. A
vendor may support publication of WSDL files packaged in other
locations, but these are considered non-portable."

What I'm trying to say is that, in terms of WSDL resolution, there is
indeed a difference between the WEB-INF/wsdl folder and the
WEB-INF/banana folder, and CXF captures that difference? I may need to
research this more.

Thanks,
Glen

[1] http://jcp.org/aboutJava/communityprocess/mrel/jsr109/index.html



---
Daniel Kulp
[EMAIL PROTECTED]
http://www.dankulp.com/blog





---
Daniel Kulp
[EMAIL PROTECTED]
http://www.dankulp.com/blog




Reply via email to