You are viewing a plain text version of this content. The canonical link for it is here.
Posted to muse-dev@ws.apache.org by "Alberto Rodriguez Galdo (eUSA) (JIRA)" <ji...@apache.org> on 2007/11/16 08:48:44 UTC

[jira] Commented: (MUSE-272) xsd:integer elements in WSDL should be mapped to java.math.BigInteger in client and server Muse's generated code.

    [ https://issues.apache.org/jira/browse/MUSE-272?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12542985 ] 

Alberto Rodriguez Galdo (eUSA) commented on MUSE-272:
-----------------------------------------------------

Sorry, what a shame, I totally forgot to upload our patch.

We are using a patched Apache Muse using your submitted patch  (exactly the same source code) since the submission of the bug and works fine.

Thank you

> xsd:integer elements in WSDL should be mapped to java.math.BigInteger in client and server Muse's generated code.
> -----------------------------------------------------------------------------------------------------------------
>
>                 Key: MUSE-272
>                 URL: https://issues.apache.org/jira/browse/MUSE-272
>             Project: Muse
>          Issue Type: Bug
>          Components: Core Engine - Resource and Capability APIs, Core Engine - WSDL Processing, Tooling - Code Generation, Utilities - General, QName, and XML
>    Affects Versions: 2.3.0
>         Environment: not applicable
>            Reporter: Alberto Rodriguez Galdo (eUSA)
>            Assignee: Dan Jemiolo
>         Attachments: muse-272.patch
>
>
>    When Apache Muse inspects the WSDL looking for capabilities assigns primitive 'int'  values whenever a xsd:int or xsd:integer data type arises, common practices and  JSR-000222 JAXB 2.1  (Java API for XML Binding) states that xsd:int values should be mapped to primitive 'int' values and xsd:integer values to java.math.BigInteger values (Section 6.2 'Simple Type definition', Table 6-1 'Java Mapping for XML Schema Built-in data types' ) . 
> Let's check the code:
>    In org.apache.muse.tools.inspector.ResourceInspector is stated that for both 'xsd:int' and 'xsd:integer' XML-Schema data types, an int.class type is assigned, as can be seen in this snippet from the code:
>     public static final QName INT_QNAME = new QName(NAMESPACE_URI, "int", PREFIX);
>     public static final QName INTEGER_QNAME = new QName(NAMESPACE_URI, "integer", PREFIX);
>         _JAVA_TYPES.put(INT_QNAME, int.class);
>         _JAVA_TYPES.put(INTEGER_QNAME, int.class);
> org.apache.muse.core.serializer.SerializerRegistry one can see  that Apache Muse assigns an IntegerSerializer whenever an int or an Integer is to be serialized:
>         registerSerializer(Integer.class, new IntegerSerializer());
>         registerSerializer(int.class, new IntegerSerializer());
> To implement this change, SerializerRegistry, ResourceInspector and maybe XmlUtils should be changed and a brand new BigIntegerSerializer should be created.
> I'll post a patch against trunk in a few hours...

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