Hello

I have a jaxb binding customization problem. I am using axis2 with jaxws I
have an element which is customize to bind to an existing class:

element a 

<xsd:element name="a" type="tns:a"></xsd:element>
<xsd:complexType name="a">

and its binding (in a separate customization file):

<jxb:bindings node="//xs:complexty...@name='a']">
<jxb:class ref="org.example.A">
</jxb:class>
</jxb:bindings>


The class A looks like this

public class A extends MySpecialClass {
...
}


It extends MySpecialClass which I cannot modify:

public class MySpecialClass {
  public String  getProp1(){...}
  public String  getProp2(){...}
}


The problem is that MySpecialClass has a bunch of properties which I don't
want to expose in the service. i.e. when I deploy my service and call the
?wsdl the schema will list all the properties that MySpecialClass has. How
can I hide these so that they are not exposed? The generated schema:

<xs:schema attributeFormDefault="qualified" elementFormDefault="qualified"
targetNamespace="http://example.org/xsd";>

  <xs:complexType name="MySpecialClass">
    <xs:sequence>
        <xs:element minOccurs="0" name="prop1" nillable="true"
type="xs:string"/>
        <xs:element minOccurs="0" name="prop2" nillable="true"
type="xs:string"/>
    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="A">
    <xs:complexContent>
        <xs:extension base="ax21:MySpecialClass">
          <xs:sequence/>
        </xs:extension>
    </xs:complexContent>
  </xs:complexType>
</xs:schema>

I would really not like to see the prop1 and prop2 in the schema. How should
I handle this? How can I state in my subclass (A) that certain properties
are not to be mapped?

Pauli

-- 
View this message in context: 
http://www.nabble.com/axis2-jaxws-hide-existing-class-properties-tp21527264p21527264.html
Sent from the Axis - User mailing list archive at Nabble.com.

Reply via email to