You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by "McMullin, Gregg E." <GR...@saic.com> on 2005/12/20 19:56:30 UTC
Deserialization of time error
Hi all:
I'm having a deserialization issue with dateTime's. I'm using
1.2.1 and have recently moved to typeMappingVersion 1.3. Thanks
for any feedback.
Gregg
wsdl/xsd defined as:
<xs:group name="dateTimeRangeGroup">
<xs:sequence>
<xs:element name="beginDateTime" type="xs:dateTime"/>
<xs:element name="endDateTime" type="xs:dateTime"/>
</xs:sequence>
</xs:group>
<xs:element name="dateTimeRange">
<xs:complexType>
<xs:sequence>
<xs:group ref="dateTimeRangeGroup"/>
<xs:element name="increment" type="xs:duration"/>
<xs:element name="offset" type="xs:duration"
minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
server-config.wsdd is defined with the following:
<parameter name="typeMappingVersion" value="1.3"/>
<typeMapping
xmlns:ns="urn:esg"
qname="ns:>temporalExtentType>dateTimeRange"
type="java:com.mycompany.TemporalExtentTypeDateTimeRange"
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
encodingStyle=""
/>
Data being deserialized is:
<temporalExtent>
<dateTimeRange>
<beginDateTime>1997-05-20T00:00:00Z</beginDateTime>
<endDateTime>1997-05-20T18:00:00Z</endDateTime>
<increment>PT6H</increment>
</dateTimeRange>
</temporalExtent>
causes this exception:
DeserializationContext [DEBUG] Popped element stack to
org.apache.axis.message.MessageElement:dateTimeRange
DeserializationContext [DEBUG] Exit: DeserializationContext::endElement()
ProjectResourceBundle [DEBUG]
org.apache.axis.i18n.resource::handleGetObject(toAxisFault00)
enterprise [DEBUG] Mapping Exception to AxisFault
java.lang.NumberFormatException: Invalid time
at org.apache.axis.types.Time.validateSource(Time.java:213)
at org.apache.axis.types.Time.makeValue(Time.java:93)
at org.apache.axis.types.Time.<init>(Time.java:57)
at
org.apache.axis.encoding.ser.TimeDeserializer.makeValue(TimeDeserializer.jav
a:43)
at
org.apache.axis.encoding.ser.SimpleDeserializer.onEndElement(SimpleDeseriali
zer.java:172)
at
org.apache.axis.encoding.DeserializerImpl.endElement(DeserializerImpl.java:5
02)
at
org.apache.axis.encoding.DeserializationContext.endElement(DeserializationCo
ntext.java:1087)
at
org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:171)
at
org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:
1140)
at
org.apache.axis.message.RPCElement.deserialize(RPCElement.java:236)
at org.apache.axis.message.RPCElement.getParams(RPCElement.java:384)
at
org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:1
48)
at
org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:319)
at
org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:
32)
at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
at
org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:453)
at org.apache.axis.server.AxisServer.invoke(AxisServer.java:281)
at
org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:699)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at
org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:
327)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java:237)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:157)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
va:214)
at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContex
t.java:104)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)