I sent a Map serialisation example to this group back in 2007:
http://www.mail-archive.com/[email protected]/msg04442.html
Michael Berkowitz wrote:
Thanks, Dan. Your statement about JAXB and Aegis having similar handling for
beans is encouraging. If our issue boils down to certain Collections, do you
know of code that's available for handling Maps, etc. with JAXB? We can't be
the first to want to do that.
Michael
-----Original Message-----
From: Daniel Kulp [mailto:[email protected]]
Sent: Monday, July 13, 2009 6:51 PM
To: [email protected]
Cc: Michael Berkowitz; Benson Margulies
Subject: Re: CXF-1670
On Sun July 12 2009 2:21:02 am Michael Berkowitz wrote:
Thanks, Benson. I'll have to give thought to my next steps based on your
analysis.
We went with Aegis in the first place because it had "hands free" support
for all the Collections that we use and classes that we defined (except, of
course, for the ones under discussion). My understanding is that moving to
JAXB -- even assuming it supports these sort of references -- would require
us to either generate or write serializers for various complex types that
our web methods pass about.
It kind of depends on how "complex" the stuff is you are passing around. If
just Lists, it shouldn't be much work. If dealing with Maps, then it is more
complex. Most other objects are OK as the rules for JAXB and Aegis are
similar (default constructor, getter/setters, etc...)
Is that an accurate assessment, or should I
delve further into JAXB to see just how off-putting it would be? Are there
other DataBindings?
There is XMLBeans, but that is even more of a schema first thing than JAXB.
Dan
Michael
-----Original Message-----
From: Benson Margulies [mailto:[email protected]]
Sent: Saturday, July 11, 2009 2:29 PM
To: Michael Berkowitz; CXF Users
Subject: CXF-1670
Michael,
The result of your labors is to reduce this to the observation that
Aegis does not handle a circular object graph. Hibernate, indeed, has
nothing special to do with it.
When I asked my fellow developers about this on another occasion, the
very weak consensus was that adding support for this to Aegis was a
questionable idea, and that we should suggest JAXB
https://jaxb.dev.java.net/guide/Mapping_cyclic_references_to_XML.html
for people who needed this sort of thing. I haven't entirely convinced
myself that your case would be covered by this recipe.
I'm sorry that you put so much energy into the test case given the outcome.
I'm not religiously opposed to coming up with some sort of circle
helper for Aegis, but I'm unlikely to find time to do it any time
soon.
--benson