This is probably working "as designed" for JAX-WS tck/spec compliance.

Basically, in the absense of namespace attributes on the @XmlType 
annotations or on the @XmlSchema annotation in the package-info, we are 
supposed to map all the beans into schemas of the service namespace.  I 
know, kind of bizarre.

The easy fix is usually to create a package-info.java with the 
appropriate @XmlSchema annotation.    Otherwise, add the namespace 
attribute to all the @XmlType annotations on all the beans.

Dan


On Tuesday 23 October 2007, Benson Margulies wrote:
> In the interests of a less eventful life, I moved my production code
> to JAXB from Aegis. My doc guy just pointed out to me that our WSDL
> has rather less schema elements than expected. Indeed, there seems to
> have a been a giant migration to the service TNS, at least of enums.
>
> In the wsdl that is coming out of java2wsdl, I've got one schema.
>
> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema";
> xmlns:btrni="http://index.rnm.basistech.com";
> xmlns:btrniws="http://ws.index.rnm.basistech.com";
> xmlns:btrnm="http://rnm.basistech.com";
> attributeFormDefault="unqualified" elementFormDefault="unqualified"
> targetNamespace="http://ws.index.rnm.basistech.com";>
>
> I then have a reference to an enum type:
>
> <xs:element minOccurs="0" name="script" type="btrniws:iso15924"/>
>
> This already looks wrong, insofar as that enum lives in
> com.basistech.util, not com.basistech.rnm.index.ws.
>
> But it's at least consistent, since that is the tns and, sure enough,
> the enum complexType is just sitting in the tns.
>
> However, I now notice that the same thing is happening to all of the
> beans. Everything is in the TNS, regardless of package-of-origin.



-- 
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