Never mind, I just put a call to super(EventObject.class) into an no
argument constructor so that it could be marshaled and still satisfy the
EventObject contract. It would be nice if I could handle this in the mapping
file or a custom FieldHandler so that I don't have to find another way to
enforce my contracts for the application.

Bryan

----- Original Message -----
From: "Bryan LaPlante" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Wednesday, February 09, 2005 7:24 AM
Subject: [castor-user] mapping question


>
> I have a class that extends EventObject, the mandatory constructor must
take
> an Object. Is there any way to provide a constructor argument in the class
> tag of the mapping file. Here is the mapping and the class. I get the
> following error when trying to marshal this class.
>
> Nested error: org.exolab.castor.mapping.MappingException: The Java class
> org.xoscript.server.event.ServerEvent is not constructable -- it does not
> contain a default public constructor
>
>
> public class ServerEvent extends EventObject{
>
>     public String target = null;
>
>     public ServerEvent (Object source, String targ){
>         super(source);
>         this.setTarget(targ);
>     }
>
>     getter and setters......
> }
>
> I want to ignore source in the output xml, that is way it is missing.
> <class name="org.xoscript.server.event.ServerEvent">
>
>     <field name="target" type="java.lang.String" direct="false">
>
>         <bind-xml name="target" node="attribute"/>
>
>     </field>
>
> </class>
>
> Bryan LaPlante
>
>
>
> -----------------------------------------------------------
> If you wish to unsubscribe from this mailing, send mail to
> [EMAIL PROTECTED] with a subject of:
>         unsubscribe castor-user



----------------------------------------------------------- 
If you wish to unsubscribe from this mailing, send mail to
[EMAIL PROTECTED] with a subject of:
        unsubscribe castor-user

Reply via email to