Werner,

I had submitted a ticket.

http://jira.codehaus.org/browse/CASTOR-2699

Thanks,
Andrew
On Thu, Apr 23, 2009 at 2:42 PM, Werner Guttmann <[email protected]> wrote:
> Andrew,
>
> looks like you have indeed come across a problem with handling of
> 'boolean values'. Can I please ask you to raise a new Jira issue at
>
> http://jira.codehaus.org/browse/CASTOR
>
> and we'll be dealing with it through this ticket.
>
> Thanks
> Werner
>
> Andrew wrote:
>> I'm trying to use castor 1.3 as the validator of incoming xml
>> documents. This is a basic XML schema contains only built-in types:
>> <?xml version="1.0"?>
>> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema";
>>         xmlns:basic="http://www.example.com/test";
>>         targetNamespace="http://www.example.com/test";>
>>
>> <xs:element name = "BuiltinElement" type="basic:BuiltinTypes"/>
>>  <xs:complexType name="BuiltinTypes">
>>       <xs:sequence>
>>          <xs:element name="StringElement" type="xs:string" />
>>          <xs:element name="IntegerElement" type="xs:integer"/>
>>          <xs:element name="BooleanElement" type="xs:boolean"/>
>>       </xs:sequence>
>>    </xs:complexType>
>> </xs:schema>
>>
>> After generate java and descriptor classes, I try to validation some
>> xml instances in ValidateTest.java. Parser validation is disabled by
>> default. This is my validation related configurations in
>> castor.properties:
>> org.exolab.castor.parser.validation=false
>> org.exolab.castor.parser.namespaces=false
>> org.exolab.castor.marshalling.validation=true
>>
>> ValidateTest.java:
>> public static void main( String[] args ) {
>>         String filename = args[0];
>>       try {
>>
>>         BuiltinTypes builtin01 =
>>                 BuiltinTypes.unmarshalBuiltinTypes(new FileReader(filename));
>>         StringWriter myWriter = new StringWriter();
>>         Marshaller m1 = new Marshaller( myWriter );
>>         m1.marshal(builtin01);
>>         System.out.println( "Castor Output:" );
>>           System.out.println( myWriter.getBuffer().toString() );
>>           System.out.println( "" );
>>       }
>>       catch( Exception e ) {
>>          e.printStackTrace();
>>       }
>>    }
>> }
>>
>> Castor validation works fine with string and integer types, while once
>> I input the following instance with invalid boolean type, castor
>> doesn't raise any validation exception but treat wrong input as false:
>> <?xml version="1.0"?>
>> <BuiltinElement>
>>    <StringElement>abc</StringElement>
>>    <IntegerElement>111</IntegerElement>
>>    <BooleanElement>whatever</BooleanElement>
>> </BuiltinElement>
>>
>> Castor Output:
>> <?xml version="1.0" encoding="UTF-8"?>
>> <BuiltinTypes xmlns="http://www.example.com/test";>
>>     <StringElement>abc</StringElement>
>>     <IntegerElement>111</IntegerElement>
>>     <BooleanElement>false</BooleanElement>
>> </BuiltinTypes>
>>
>> It seems castor in-object validation doesn't validate boolean type
>> well in this case. Is there anything wrong with my code or
>> configurations?
>>
>> Thanks,
>> Andrew
>>
>> ---------------------------------------------------------------------
>> To unsubscribe from this list, please visit:
>>
>>     http://xircles.codehaus.org/manage_email
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe from this list, please visit:
>
>    http://xircles.codehaus.org/manage_email
>
>
>

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to