ECMA CSTA Web Service generation
--------------------------------
Key: AXIS-2707
URL: https://issues.apache.org/jira/browse/AXIS-2707
Project: Axis
Issue Type: Bug
Affects Versions: current (nightly)
Environment: Last Axis 1.4 build from source, Apache Tomcat 5.5 and
JDK 1.5.
Reporter: Jose M.
Priority: Critical
Hello,
I'm trying to generate a web service based on the WSDL and schemas defined by
ECMA-348 specification, in order to build a CSTA WS protocol stack.
During this process I've found the following problems:
*** In device-identifiers.xsd, we got a code generation problem at this point:
<xsd:simpleType name="DeviceIDType">
<xsd:union memberTypes="csta:OtherPlan csta:Number"/>
</xsd:simpleType>
<xsd:simpleType name="OtherPlan">
<xsd:restriction base="xsd:hexBinary"/>
</xsd:simpleType>
<xsd:simpleType name="Number">
<xsd:restriction base="xsd:string"/>
</xsd:simpleType>
If we change OtherPlan definition to string, the problem is solved, so it seems
to be any error with union sentence treatment in Axis.
*** In general, when we use types hexBinary, like inside
device-identifiers.xsd:
<xsd:attribute name="switchingSubDomainInformationElements" use="optional">
<xsd:simpleType>
<xsd:restriction base="xsd:hexBinary"/>
</xsd:simpleType>
</xsd:attribute>
The deploy.wsdd file generated indicates a definition associated to
ArraySerializer / ArrayDeserializer, instead of HexSerializer /
HexDeserializer. I think it can be an Axis bug, because Axis client throws the
following exception when we use the correspondent generated class, inside a
makeCall invocation:
Bean attribute switchingSubDomainInformationElements is of type class [B,
which is not a simple type
Maybe because it is not using HexSerializer?
*** We've found problems when we use MediaClassAttribute generated by Axis
(as a parameter of MakeCall invocation). Its definition in
device-identifiers.xsd is:
<xsd:simpleType name="MediaClassComponents">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="voice"/>
<xsd:enumeration value="data"/>
<xsd:enumeration value="image"/>
<xsd:enumeration value="audio"/>
<xsd:enumeration value="other"/>
<xsd:enumeration value="notKnown"/>
<xsd:enumeration value="chat"/>
<xsd:enumeration value="email"/>
<xsd:enumeration value="message"/>
<xsd:enumeration value="im"/>
<xsd:enumeration value="sms"/>
<xsd:enumeration value="mms"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="MediaClassAttribute">
<xsd:list itemType="csta:MediaClassComponents"/>
</xsd:simpleType>
We obtain the following error generated in the web service server side:
java.lang.ClassCastException: org.apache.axis.encoding.ser.EnumDeserializer
¿Are these problems caused by some possible errors in wsdl or xsd definition or
it is the case of some bugs in Axis code?
wsdl's can be found in
http://www.ecma-international.org/standards/ecma-348/csta-wsdl/ed3 , and
schemas in: http://www.ecma-international.org/standards/ecma-323/csta/ed4
Thanks in advance!
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]