Hi Ralf,

It would be my pleasure.

- Matt

On 3/29/06, Ralf Joachim <[EMAIL PROTECTED] > wrote:
Hi Matt,

how about putting all this information together into a howto document as
a payback to the castor project ;-)

Regards
Ralf


Matt Secoske schrieb:
> Thanks Stephen.  I found it:
>
> Changed my mapping file to this:
>
>         ...
>         <field name="innerData" type=" java.lang.Object" handler="MyHandler">
>             <bind-xml name="inner" node="element" />
>         </field>
>         ...
>
>
> and created a customer generalized handler:
> ---------------------------
> import org.exolab.castor.mapping.GeneralizedFieldHandler;
>
> public class MyHandler extends GeneralizedFieldHandler
> {
>     public MyHandler() {
>         super();
>     }
>
>     public Object convertUponGet(Object value) {
>         if (value == null) return null;
>         return value.toString();
>     }
>
>     public Object convertUponSet(Object value) {
>         return value.toString();
>     }
>
>     public Class getFieldType() {
>         return String.class;
>     }
>
>     public Object newInstance( Object parent )
>         throws IllegalStateException
>     {
>         //-- Since it's marked as a string...just return null,
>         //-- it's not needed.
>         return null;
>     }
>
> }
>
> Thanks for looking at it!
>
>
> On 3/29/06, *Stephen Bash* <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>
> wrote:
>
>     Matt-
>
>     I haven't used it myself, but I think what you want to look into is
>     Castor's AnyNode support.  I don't know as there is a lot of
>     documentation available, but I think if you search the mail archives
>     for AnyNode, you might find some helpful discussions.  Sorry I can't
>     be of more help.
>
>     Stephen
>
>
>     On 3/28/06, Matt Secoske < [EMAIL PROTECTED]
>     <mailto:[EMAIL PROTECTED]>> wrote:
>     > Hello,
>     >
>     > I am trying to fit this:
>     >
>     > <root>
>     >     <inner attribute="innerAttribute">
>     >         <data>Inner Data 1</data>
>     >         <data>Inner Data 2</data>
>     >     </inner>
>     >     <outer>Regular String Data</outer>
>     >     <inner2>
>     >         <misc>Misc xml to be dealt with later</misc>
>     >     </inner2>
>     > </root>
>     >
>     > into this:
>     >
>     > package bizobj;
>     >
>     > public class Root {
>     >     String innerData;
>     >     String outerData;
>     >     Object innerData2;
>     >
>     >     public String getInnerData() {
>     >         return innerData;
>     >     }
>     >     public void setInnerData(String innerData) {
>     >         this.innerData = innerData;
>     >     }
>     >     public String getOuterData() {
>     >         return outerData;
>     >     }
>     >     public void setOuterData(String outerData) {
>     >         this.outerData = outerData;
>     >     }
>     >     public Object getInnerData2() {
>     >         return innerData2;
>     >     }
>     >     public void setInnerData2(Object innerData2) {
>     >         this.innerData2 = innerData2;
>     >     }
>     > }
>     >
>     >
>     > ... and the mapping file I am using:
>     >
>     > <?xml version="1.0"?>
>     > <!DOCTYPE mapping PUBLIC "-//EXOLAB/Castor Mapping DTD Version
>     1.0//EN"
>     >
>     > "http://castor.org/mapping.dtd ">
>     > <mapping>
>     >
>     >     <class name=" bizobj.Root">
>     >         <field name="innerData" type="string" >
>     >             <bind-xml name="inner" node="element" />
>     >         </field>
>     >
>     >         <field name="outerData" type="string">
>     >             <bind-xml name="outer" node="element" />
>     >         </field>
>     >
>     >          <field name="innerData2" type="java.lang.Object">
>     >             <bind-xml name="inner2" node="element" />
>     >         </field>
>     >     </class>
>     > </mapping>
>     >
>     >
>     > So, innerData2 (java.lang.Object) works just fine, while I cannot
>     seem to
>     > get innerData (string) to work, regardless of handlers or
>     config.  Using the
>     > innerData2 (Object) approach will not work for various external
>     reasons...
>     > Any ideas?
>     >
>     > Regards,
>     > --
>     > Matt Secoske
>
>
>
>
> --
> Matt Secoske
> http://blog.secosoft.net

--

Syscon Ingenieurbüro für
Meß- und Datentechnik GmbH
Ralf Joachim
Raiffeisenstraße 11
D-72127 Kusterdingen
Germany

Tel.   +49 7071 3690 52
Mobil: +49 173 9630135
Fax    +49 7071 3690 98

Email: [EMAIL PROTECTED]
Web:   www.syscon-world.de

-------------------------------------------------
If you wish to unsubscribe from this list, please
send an empty message to the following address:

[EMAIL PROTECTED]
-------------------------------------------------




--
Matt Secoske
http://blog.secosoft.net

Reply via email to