You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Deepal Jayasinghe (JIRA)" <ji...@apache.org> on 2008/05/17 22:13:56 UTC

[jira] Assigned: (AXIS2-3764) Generated classes for simpleType based on dateTime result in wrong serialization/deserialization if that type is used as attribute.

     [ https://issues.apache.org/jira/browse/AXIS2-3764?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Deepal Jayasinghe reassigned AXIS2-3764:
----------------------------------------

    Assignee: Amila Chinthaka Suriarachchi

> Generated classes for simpleType based on dateTime result in wrong serialization/deserialization if that type is used as attribute. 
> ------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: AXIS2-3764
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3764
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>          Components: codegen
>    Affects Versions: 1.3
>         Environment: Eclipse 3.3, axis2 1.3 , java 6.
>            Reporter: Milos Ratkovic
>            Assignee: Amila Chinthaka Suriarachchi
>            Priority: Minor
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>
> simpleType based on dateTime when used as attribute generates following serialization : 
>        datumVreme="java.util.GregorianCalendar[time=1209044290989,areFieldsSet=true, ...
> Parser expects this format (ConverterUtil : convertToDateTime):
>        // '-'? yyyy '-' mm '-' dd 'T' hh ':' mm ':' ss ('.' s+)? (Z)?
> Example : 
> wsdl : 
> ...
>       <xsd:simpleType name="DatumVreme">
>       	<xsd:restriction base="xsd:dateTime" />
>       </xsd:simpleType>
>       <xsd:element name="InOut">
>         <xsd:complexType>
>           <xsd:sequence>
>             <xsd:element name="in" type="xsd:string"/>
>           </xsd:sequence>
>           <xsd:attribute name="datumVreme" type="tns:DatumVreme" />
>         </xsd:complexType>
>       </xsd:element>
> ...
> Exception:
> Exception in thread "main" java.lang.NumberFormatException: in valid time zone attribute
> 	at org.apache.axis2.databinding.utils.ConverterUtil.convertToDateTime(ConverterUtil.java:609)
> 	at org.example.www.testdatetime.DatumVreme$Factory.fromString(DatumVreme.java:309)
> 	at org.example.www.testdatetime.InOut$Factory.parse(InOut.java:436)
> 	at org.example.www.testdatetime.Test.main(Test.java:42)
> Generated code :
> InOut : 
>     public void serialize(final javax.xml.namespace.QName parentQName,
> ...
>             writeAttribute("", "datumVreme", localDatumVreme.toString(),  xmlWriter);
> ...
>         public static InOut parse(javax.xml.stream.XMLStreamReader reader)
> ...
>                         object.setDatumVreme(org.example.www.testdatetime.DatumVreme.Factory.fromString(
>                                 tempAttribDatumVreme, ""));
> ...
> DatumVreme:
>     protected java.util.Calendar localDatumVreme;
>     public java.lang.String toString() {
>         return localDatumVreme.toString();   //  java.util.GregorianCalendar[time=1209044290989,areFieldsSet=true, ....
>     }
> ...
>     public static class Factory {
>         public static DatumVreme fromString(java.lang.String value,
> ...
>             returnValue.setDatumVreme(org.apache.axis2.databinding.utils.ConverterUtil.convertToDateTime(
>                     value));
> ...
> My workaround is to change toString method in generated class:
>     public java.lang.String toString() {
>         //return localDatumVreme.toString();
>         return org.apache.axis2.databinding.utils.ConverterUtil.convertToString(localDatumVreme);
>     }
> So I guess fix could be to change code generation for toString method.
> There is possibility for similar behavior in case of other based types. 

-- 
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: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org