Hi,
While the @javax.xml.bind.annotation.XmlSchema annotation within the package-info.java of
an class not inheriting from other packages works perfectly, JBossWS generates the
following error for derived datatypes:
| 14:35:02,173 ERROR [ServiceEndpointPublisher] Cannot obtain waURL for:
webservice-test.ear/webservice-test.jar
| 14:35:02,283 ERROR [JBossXSErrorHandler]
[
domain:http://www.w3.org/TR/xml-schema-1]::[key=src-resolve.4.2]::Message...:
Error resolving component 'ns1:aClass'. It was detected that 'ns1:aClass'
is in namespace 'http://test.org/wsclient/a', but components from this namespace
are not referenceable from schema document 'null'. If this is the incorrect
namespace, perhaps the prefix of 'ns1:aClass' needs to be changed. If this is the
correct namespace, then an appropriate 'import' tag should be added to
'null'.
The Parameter classes causing this problem are a.AClass, b.Bclass defined in the packages
a, and b with the following package-info.java @XmlSchema annotations:
file a/package-info.java:
| @javax.xml.bind.annotation.XmlSchema(namespace =
http://test.org/wsclient/a" )
| package a;
|
file a/AClass.java:
| package a;
| public class AClass {
| int a;
|
| public int getA() {
| return a;
| }
| public void setA(int testInt) {
| this.a = testInt;
| }
| }
|
file b/package-info.java:
| @javax.xml.bind.annotation.XmlSchema(namespace =
http://test.org/wsclient/b" )
| package b;
|
file b/BClass.java
| package b;
|
| public class BClass extends a.AClass {
| String b;
|
| public String getB() {
| return b;
| }
| public void setB(String testString) {
| this.b = testString;
| }
| }
|
The relevant part of the generated WSDL (which is visible under jbossws/service is:
| <xs:schema
targetNamespace="http://test.org/wsclient/b"
version="1.0">
| <xs:complexType name="bClass">
| <xs:complexContent>
| <xs:extension base="ns1:aClass">
| <xs:sequence>
| <xs:element minOccurs="0" name="b"
type="xs:string"/>
| </xs:sequence>
| </xs:extension>
| </xs:complexContent>
| </xs:complexType>
| </xs:schema>
| <xs:schema
targetNamespace="http://test.org/wsclient/a"
version="1.0">
| <xs:complexType name="aClass">
| <xs:sequence>
| <xs:element name="a" type="xs:int"/>
| </xs:sequence>
| </xs:complexType>
| </xs:schema>
|
where the declaration of bClass references the ns1 namespace without declaring it.
The same thing happens when aClass is aggreagated by bClass.
My Test Envrionment is
JBossAS 4.0.5, JBossWS-1.2.0.GA (compiled according to the Howto in the Wiki after
checking out the sources from svn , installed using the projects deploy-jboss40
ant-target)
(PS: if this a a new issue I could provide you with the complete example code/maven
project to reproduce the problem)
Best Regards,
Bertl
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4025392#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...