Cheers for the input Dan. At least I know to concentrate my efforts on
non-Aegis routes now. I only started with Aegis as is what we've always
used (and have done since the days of XFire). It certainly would be
wise to take another look at JAXB to see how it compares nowadays.
Lee,
Daniel Kulp wrote:
Honestly, I don't think there is a way to currently do this with Aegis. Aegis currently
doesn't have any concept of an XmlSeeAlso annotation or similar to be able to set
additional classes to add into the Aegis context. You MAY be able to programatically
create an AegisContext object and configure in some "root" types to add
additional class, but I'm not really sure how that would all work.
Dan
On Mar 8, 2013, at 6:57 AM, Lee Theobald<[email protected]> wrote:
HI all,
I'm trying to get a JAX-WS service (with Aegis as the data binding) working as
I want but I'm falling at the last hurdle. I've got a method defined as
follows:
public Field getField(String sourceName, String fieldName) throws
FieldNotFoundException;
Field is an interface. Currently I have an implementation of FieldImpl that
returns fine via the service. The trouble is that I want to return fields that
extend FieldImpl. So for example, I have the below type hierarchy:
Field
FieldImpl
MediaFieldImpl
TypeFieldImpl
RelatedFieldImpl
I'd like to return media, type& related fields but when I attempt to return
MediaFieldImpl via getField, I only get back the parts of MediaFieldImpl that conform to the
Field interface (so none of the extra fields defined in MediaFieldImpl). I've been trying a
variety of different things (@XmlSeeAlso, @XmlRootElement& various different annotations
in places) to get this working but having no luck. Best I've got so far is the
MediaFieldImpl, TypeFieldImpl etc. classes appearing in the WSDL via a dummy method as
suggested in an IBM
article<http://www.ibm.com/developerworks/websphere/techjournal/0401_brown/brown.html>.
But I still can't get the correct type of Field returned from my method.
Does anyone have any suggestions on what else I can try or if I'm barking up the
wrong tree? This is using an old version of CXF (2.2) and I'm letting CXF generate
the WSDL for me. I realise I might have more luck if I take a more top-down
approach& write the WSDL myself but as this is an existing web service I'm
trying to extend, I'd rather not rock the boat too much if I don't have to.
Cheers for any input,
Lee