Aegis databinding custom types
Hi, I'm in the process of porting my service from xfire and I'm having some difficulties using a custom type that worked previously. My service returns some pretty complex objects that have XML representations but don't readily serialize using the standard JAXB/Aegis databindings. In XFire I wrote some custom serializers (extending org.codehaus.xfire.aegis.type.Type) and by annotating my Service Interface using @XmlReturnType annotations. When I ported the project over to CXF, this functionality all seems to have been ported, so I'm able to annotate my service with org.apache.cxf.aegis.type.java5.XmlParamType annotations and I've adapted the custom type serializers I'd written to extend org.apache.cxf.aegis.type.Type. My service is configured using JAX-WS annotations and a spring config file, similar to the xfire migration docs. When I was using XFire, I had the required configuration elements in services.xml to initialize my custom types. But I can't figure out what the equivalent is in CXF. Presumably I need to add the relevant bits to my spring configuration xml but I'm not sure what these bits are! Can anyone point me in the right direction? Thanks in advance, Tony Burdett. -- Tony Burdett Software Developer, ComparaGrid. European Bioinformatics Institute email: [EMAIL PROTECTED] tel: 01223 494624
Re: Aegis databinding custom types
We're made a lot of changes in this area for 2.1. If you're willing to move to a 2.1 snapshot, I'm willing to work with you to figure out how to do what you need to do. On Thu, Feb 28, 2008 at 6:30 AM, Tony Burdett <[EMAIL PROTECTED]> wrote: > Hi, > > I'm in the process of porting my service from xfire and I'm having some > difficulties using a custom type that worked previously. My service > returns some pretty complex objects that have XML representations but > don't readily serialize using the standard JAXB/Aegis databindings. > > In XFire I wrote some custom serializers (extending > org.codehaus.xfire.aegis.type.Type) and by annotating my Service > Interface using @XmlReturnType annotations. > > When I ported the project over to CXF, this functionality all seems to > have been ported, so I'm able to annotate my service with > org.apache.cxf.aegis.type.java5.XmlParamType annotations and I've > adapted the custom type serializers I'd written to extend > org.apache.cxf.aegis.type.Type. > > My service is configured using JAX-WS annotations and a spring config > file, similar to the xfire migration docs. When I was using XFire, I > had the required configuration elements in services.xml to initialize my > custom types. But I can't figure out what the equivalent is in CXF. > Presumably I need to add the relevant bits to my spring configuration > xml but I'm not sure what these bits are! Can anyone point me in the > right direction? > > Thanks in advance, > > Tony Burdett. > > -- > Tony Burdett > Software Developer, > ComparaGrid. > > European Bioinformatics Institute > email: [EMAIL PROTECTED] > tel: 01223 494624 > >
Re: Aegis databinding custom types
Hi Benson, Thanks for the response. I've nothing to tie me to any particular version, so I'm more than happy to use a 2.1 snapshot. I believe that all I actually need to do is configure my service to recognise the additional types I want it to use. But where I would even start doing this I haven't any idea! Tony. Benson Margulies wrote: We're made a lot of changes in this area for 2.1. If you're willing to move to a 2.1 snapshot, I'm willing to work with you to figure out how to do what you need to do. On Thu, Feb 28, 2008 at 6:30 AM, Tony Burdett <[EMAIL PROTECTED]> wrote: Hi, I'm in the process of porting my service from xfire and I'm having some difficulties using a custom type that worked previously. My service returns some pretty complex objects that have XML representations but don't readily serialize using the standard JAXB/Aegis databindings. In XFire I wrote some custom serializers (extending org.codehaus.xfire.aegis.type.Type) and by annotating my Service Interface using @XmlReturnType annotations. When I ported the project over to CXF, this functionality all seems to have been ported, so I'm able to annotate my service with org.apache.cxf.aegis.type.java5.XmlParamType annotations and I've adapted the custom type serializers I'd written to extend org.apache.cxf.aegis.type.Type. My service is configured using JAX-WS annotations and a spring config file, similar to the xfire migration docs. When I was using XFire, I had the required configuration elements in services.xml to initialize my custom types. But I can't figure out what the equivalent is in CXF. Presumably I need to add the relevant bits to my spring configuration xml but I'm not sure what these bits are! Can anyone point me in the right direction? Thanks in advance, Tony Burdett. -- Tony Burdett Software Developer, ComparaGrid. European Bioinformatics Institute email: [EMAIL PROTECTED] tel: 01223 494624 -- Tony Burdett Software Developer, ComparaGrid. European Bioinformatics Institute email: [EMAIL PROTECTED] tel: 01223 494624
Re: Aegis databinding custom types
In 2.1, you'd create a DefaultTypeMapping object, add your mappings, and then push that into an AegisContext object. You'd then push the AegisContext object into the AegisDatabinding object. You'll really need to be looking at CXF source. Look at the AegisContext class and the AbstractEncodingTest class. CXF isn't my day job, so if you pile up some more questions for this evening I'll answer them. On Thu, Feb 28, 2008 at 8:13 AM, Tony Burdett <[EMAIL PROTECTED]> wrote: > Hi Benson, > > Thanks for the response. I've nothing to tie me to any particular > version, so I'm more than happy to use a 2.1 snapshot. I believe that > all I actually need to do is configure my service to recognise the > additional types I want it to use. But where I would even start doing > this I haven't any idea! > > Tony. > > > Benson Margulies wrote: > > We're made a lot of changes in this area for 2.1. If you're willing to > move > > to a 2.1 snapshot, I'm willing to work with you to figure out how to do > what > > you need to do. > > > > > > On Thu, Feb 28, 2008 at 6:30 AM, Tony Burdett <[EMAIL PROTECTED]> > wrote: > > > > > >> Hi, > >> > >> I'm in the process of porting my service from xfire and I'm having some > >> difficulties using a custom type that worked previously. My service > >> returns some pretty complex objects that have XML representations but > >> don't readily serialize using the standard JAXB/Aegis databindings. > >> > >> In XFire I wrote some custom serializers (extending > >> org.codehaus.xfire.aegis.type.Type) and by annotating my Service > >> Interface using @XmlReturnType annotations. > >> > >> When I ported the project over to CXF, this functionality all seems to > >> have been ported, so I'm able to annotate my service with > >> org.apache.cxf.aegis.type.java5.XmlParamType annotations and I've > >> adapted the custom type serializers I'd written to extend > >> org.apache.cxf.aegis.type.Type. > >> > >> My service is configured using JAX-WS annotations and a spring config > >> file, similar to the xfire migration docs. When I was using XFire, I > >> had the required configuration elements in services.xml to initialize > my > >> custom types. But I can't figure out what the equivalent is in CXF. > >> Presumably I need to add the relevant bits to my spring configuration > >> xml but I'm not sure what these bits are! Can anyone point me in the > >> right direction? > >> > >> Thanks in advance, > >> > >> Tony Burdett. > >> > >> -- > >> Tony Burdett > >> Software Developer, > >> ComparaGrid. > >> > >> European Bioinformatics Institute > >> email: [EMAIL PROTECTED] > >> tel: 01223 494624 > >> > >> > >> > > > > > > > -- > Tony Burdett > Software Developer, > ComparaGrid. > > European Bioinformatics Institute > email: [EMAIL PROTECTED] > tel: 01223 494624 > >