Hi,

I just managed to force him to use the object types instead of the 
primitives by setting nillable="true" in the schema file on the boolean 
element. This is only a workaround though, so please keep me updated if 
there is a solution to this problem.

kind regards,
Michael Handler

Am 14.04.2010 14:21, schrieb Michael Handler:
> Hi,
>
> It is generated together with the Java Classes. But here is the
> interesting part of it:
>
> <mapping class="org.openengsb.core.xmlmapping.XMLPrimitive1"
> name="XMLPrimitive1">
> <structure ordered="false" choice="true">
> <value style="element" name="boolean" test-method="ifBoolean"
> get-method="isBoolean" set-method="setBoolean" usage="optional"/>
> <value style="element" name="string" test-method="ifString"
> get-method="getString" set-method="setString" usage="optional"/>
> </structure>
> </mapping>
>
> The generated java code looks like this:
>
> public class XMLPrimitive1
> {
>       private int XMLPrimitive1Select = -1;
>       private static final int BOOLEAN_CHOICE = 0;
>       private static final int STRING_CHOICE = 1;
>       private boolean _boolean;
>       private String string;
>
>       private void setXMLPrimitive1Select(int choice) {
>           if (XMLPrimitive1Select == -1) {
>               XMLPrimitive1Select = choice;
>           } else if (XMLPrimitive1Select != choice) {
>               throw new IllegalStateException(
>                       "Need to call clearXMLPrimitive1Select() before
> changing existing choice");
>           }
>       }
>
>       public void clearXMLPrimitive1Select() {
>           XMLPrimitive1Select = -1;
>       }
>
>       public boolean ifBoolean() {
>           return XMLPrimitive1Select == BOOLEAN_CHOICE;
>       }
>
>       public boolean isBoolean() {
>           return _boolean;
>       }
>
>       public void setBoolean(boolean _boolean) {
>           setXMLPrimitive1Select(BOOLEAN_CHOICE);
>           this._boolean = _boolean;
>       }
>
>       public boolean ifString() {
>           return XMLPrimitive1Select == STRING_CHOICE;
>       }
>
>       public String getString() {
>           return string;
>       }
>
>       public void setString(String string) {
>           setXMLPrimitive1Select(STRING_CHOICE);
>           this.string = string;
>       }
> }
>
>
> I just found out that the same problem occurs for integer (with 0 as
> value). Seems like there is a problem when primitives are set to their
> default values.
>
> kind regards,
> Michael Handler
>
> Am 14.04.2010 13:55, schrieb Ben Davies:
>    
>> Can we see your binding file?
>>
>> -----Original Message-----
>> From: Michael Handler [mailto:michael.hand...@fullstop.at]
>> Sent: 14 April 2010 12:11
>> To: jibx-users@lists.sourceforge.net
>> Subject: [jibx-users] problem with boolean in choice
>>
>> Hi,
>>
>> I have a problem with jibx (starting from an xml schema) using a boolean
>>
>> element in a choice element. Somehow the resulting xml does not contain
>> the boolean value if the boolean is set to false, although it works fine
>>
>> if the boolean is set to true. The resulting xml cannot be parsed
>> correctly (no choice is selected)...
>> I use the maven jibx plugin (verison 1.2.2) to create the java files and
>>
>> the binding from a xml schema.
>>
>> Here is the relevant part of the schema file:
>> <xs:element name="XMLPrimitive1">
>> <xs:complexType>
>> <xs:choice>
>> <xs:element name="boolean" type="xs:boolean" />
>> <xs:element name="string" type="xs:string" />
>> </xs:choice>
>> </xs:complexType>
>> </xs:element>
>>
>>
>> Using the following code to create the xml:
>>
>>            XMLPrimitive1 xmlPrimitive = new XMLPrimitive1();
>>            xmlPrimitive.setBoolean(false);
>>
>>            JibxXmlSerializer serializer = new JibxXmlSerializer();
>>            StringWriter writer = new StringWriter();
>>            serializer.serialize(xmlPrimitive, writer);
>>            String xml = writer.toString();
>>
>>            System.out.println(xml);
>>
>> The output is:
>> <?xml version="1.0" encoding="UTF-8"?><XMLPrimitive1/>
>>
>> Shouldn't this rather be:
>> <?xml version="1.0"
>> encoding="UTF-8"?><XMLPrimitive1><boolean>false</boolean></XMLPrimitive1
>>
>>      
>>>
>>>        
>> as the xml looks like this when the boolean value is set to true:
>> <?xml version="1.0"
>> encoding="UTF-8"?><XMLPrimitive1><boolean>true</boolean></XMLPrimitive1>
>>
>> Thank you for your help!
>>
>> kind regards,
>> Michael Handler
>>
>> ------------------------------------------------------------------------
>> ------
>> Download Intel&#174; Parallel Studio Eval
>> Try the new software tools for yourself. Speed compiling, find bugs
>> proactively, and fine-tune applications for parallel performance.
>> See why Intel Parallel Studio got high marks during beta.
>> http://p.sf.net/sfu/intel-sw-dev
>> _______________________________________________
>> jibx-users mailing list
>> jibx-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/jibx-users
>>
>>
>> No virus found in this incoming message.
>> Checked by AVG - www.avg.com
>> Version: 9.0.801 / Virus Database: 271.1.1/2800 - Release Date: 04/13/10
>> 21:22:00
>>
>>
>> ------------------------------------------------------------------------------
>> Download Intel&#174; Parallel Studio Eval
>> Try the new software tools for yourself. Speed compiling, find bugs
>> proactively, and fine-tune applications for parallel performance.
>> See why Intel Parallel Studio got high marks during beta.
>> http://p.sf.net/sfu/intel-sw-dev
>> _______________________________________________
>> jibx-users mailing list
>> jibx-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/jibx-users
>>
>>
>>
>>      
>
> ------------------------------------------------------------------------------
> Download Intel&#174; Parallel Studio Eval
> Try the new software tools for yourself. Speed compiling, find bugs
> proactively, and fine-tune applications for parallel performance.
> See why Intel Parallel Studio got high marks during beta.
> http://p.sf.net/sfu/intel-sw-dev
> _______________________________________________
> jibx-users mailing list
> jibx-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/jibx-users
>
>
>    


------------------------------------------------------------------------------
Download Intel&#174; Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
jibx-users mailing list
jibx-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jibx-users

Reply via email to