Martin,
we have recently fixed one or two issues related to the usage of
patterns and regular expressions.
Would it be an option for you to try the recently uploaded 1.2 snapshot
release and provide us with feedback ?
Regards
Werner
Martin Beier wrote:
I am using castor 1.0 and receive an exception marshalling Java objects
to XML. I went
through lots of documentation, e-mail lists and also tried google, but I
still do not get
the clue how to approach the problem.
I used the code generator to create Java classes from an xsd. The
relevant part is
<xs:element name="fWert">
<xs:simpleType>
<xs:restriction base="xs:decimal">
<xs:pattern value="-?\d{1,7}\.\d{2}"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="statusInfo">
...
<xs:element ref="ns:fWert" minOccurs="0"/>
castor generated a StatusInfo and a StatusInfoDescriptor class.
The Java type for fWert is java.math.BigDecimal.
When I use the StatusInfo class an try to marshall it, I get an exception:
StatusInfo statusInfo = new StatusInfo();
...
statusInfo.setFWert(new java.math.BigDecimal(0));
...
java.io.StringWriter sw = new java.io.StringWriter();
statusInfo.marshal(sw);
ValidationException: The following exception occured while validating
field: _fWert of class: StatusInfo: 0does not match the required regular
expression: "-?\d{1,7}\.\d{2}";
- location of error: XPATH: /statusInfo
From the documentation, I somehow understood that I eather have to use
a mapping file or to use the descriptor class. But I do not know how and
why,
since all necessary information how fWert is to be formatted is provided
by the xsd schema.
Thanks in advance for any hint.
Martin Beier
---------------------------------------------------------------------
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