Issue submitted to jira at 2672 http://jira.codehaus.org/browse/CASTOR-2672
Werner Guttmann wrote:
>
> Hi,
>
> please raise a new Jira issue for this, and attach all required files so
> that we can replay this issue.
>
> Werner
>
> darrickc wrote:
>> Using Castor 1.2 I'm trying to unmarshal an EnumMap and I'm getting an
>> exception with the following message:
>> org.exolab.castor.xml.MarshalException: argument type mismatch{File: [not
>> available]; line: 2; column: 342}
>>
>> I'm trying to unmarshal this class:
>> public class UserPartitionRights
>> {
>> private EnumMap<Rights, Boolean> rights;
>>
>> public UserPartitionRights() {}
>>
>> public EnumMap<Rights, Boolean> getRights()
>> {
>> return rights;
>> }
>> public void setRights(EnumMap<Rights, Boolean> newRights)
>> {
>> rights = newRights;
>> }
>> }
>>
>> Where Rights is defined as:
>> public enum Rights
>> {
>> SeeJobs(ResourceType.Job), DeleteJobs(ResourceType.Job),
>> ChangeJobStatus(ResourceType.Job), ChangeJobSets(ResourceType.Job);
>>
>> public final ResourceType resourceType;
>>
>> Rights(ResourceType type)
>> {
>> resourceType = type;
>> }
>>
>> public static Rights fromValue(final String value)
>> {
>> for (Rights c: Rights.values())
>> {
>> if (Rights.valueOf( value ) == c )
>> {
>> return c;
>> }
>> }
>> throw new IllegalArgumentException(value);
>> }
>> };
>>
>> The Mapping file looks like:
>> <class name="com.rocsoft.messaging.qdirect.UserPartitionRights"
>> auto-complete="true">
>> <field name="rights" collection="map">
>> <bind-xml name="rights">
>> <class name="org.exolab.castor.mapping.MapItem">
>> <field name="key"
>> type="com.rocsoft.messaging.qdirect.Rights">
>> <bind-xml name="Right"
>> node="attribute"/>
>> </field>
>> <field name="value" type="boolean">
>> <bind-xml name="onOff" node="element"/>
>> </field>
>> </class>
>> </bind-xml>
>> </field>
>> </class>
>>
>> The fromValue is getting called and I am returning the correct enum
>> value,
>> after that it throws the exception. Marshaling works fine. RecourceType
>> is
>> another enum, not sure if that matters or not.
>>
>> Thanks in advance!
>
> ---------------------------------------------------------------------
> To unsubscribe from this list, please visit:
>
> http://xircles.codehaus.org/manage_email
>
>
>
>
--
View this message in context:
http://www.nabble.com/Unmarshal-failing-to-unmarshal-an-EnumMap-tp22608080p22611149.html
Sent from the Castor - User mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe from this list, please visit:
http://xircles.codehaus.org/manage_email