<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<id>tag:old.nabble.com,2006:forum-13496</id>
	<title>Nabble - java.net - JAXB</title>
	<updated>2009-12-17T16:49:03Z</updated>
	<link rel="self" type="application/atom+xml" href="http://old.nabble.com/java.net---JAXB-f13496.xml" />
	<link rel="alternate" type="text/html" href="http://old.nabble.com/java.net---JAXB-f13496.html" />
	<subtitle type="html">JAXB 2.0 develops and evolves the code base for the reference implementation of the JAXB specification. java.net - JAXB home is &lt;a href=&quot;https://jaxb.dev.java.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt;.</subtitle>
	
<entry>
	<id>tag:old.nabble.com,2006:post-26837519</id>
	<title>Using JAXB 2.2 with JavaSE 6</title>
	<published>2009-12-17T16:49:03Z</published>
	<updated>2009-12-17T16:49:03Z</updated>
	<author>
		<name>Gary Gregory</name>
	</author>
	<content type="html">Hi All:
&lt;br&gt;&lt;br&gt;On this page:
&lt;br&gt;&lt;br&gt;&lt;a href=&quot;https://jaxb.dev.java.net/guide/Migrating_JAXB_2_0_applications_to_JavaSE_6.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://jaxb.dev.java.net/guide/Migrating_JAXB_2_0_applications_to_JavaSE_6.html&lt;/a&gt;&lt;br&gt;&lt;br&gt;I read:
&lt;br&gt;&lt;br&gt;&amp;quot;Use the system property java.endorsed.dirs when you launch your application, and have it point to the directory that contains the 2.1/2.2 jaxb-api.jar. This allows you use use JAXB 2.1/2.2 without modifying the JRE. Make sure not to include any other JAXB RI jar files (such as jsr173-api.jar or jaxb-impl.jar.)&amp;quot;
&lt;br&gt;&lt;br&gt;I like to make sure I get this exactly right. I will put the single JAXB file jaxb-api.jar in the directory pointed to by java.endorsed.dirs.
&lt;br&gt;&lt;br&gt;What about the other JAXB jar files? Can they be on the plain old classpath?
&lt;br&gt;&lt;br&gt;WRT jsr173-api.jar, since the API is in JavaSE 6, can I ignored it altogether and not distribute it?
&lt;br&gt;&lt;br&gt;Thank you,
&lt;br&gt;&lt;br&gt;Gary Gregory
&lt;br&gt;Seagull Software
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26837519&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ggregory@...&lt;/a&gt;
&lt;br&gt;www.seagullsoftware.com
&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26837519&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26837519&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-ANN--JAXB-2.2-is-released-tp26744560p26837519.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26833948</id>
	<title>Re: FW: How to map Java enum to XML element (not #PCDATA) body?</title>
	<published>2009-12-17T11:52:32Z</published>
	<updated>2009-12-17T11:52:32Z</updated>
	<author>
		<name>Wolfgang Laun-2</name>
	</author>
	<content type="html">So I should caution you that @XmlJavaTypeAdapter and @XmlRootElement are not&lt;br&gt;compatible. The adapter is not called if &amp;lt;e&amp;gt; is a document root.&lt;br&gt;&lt;br&gt;For classes such as ThirdPartyElement, which users contribute for marshalling and&lt;br&gt;
unmarshalling, you can force them to use factory methods&lt;br&gt;  public E newInstance(final V1 v1){&lt;br&gt;      return V_1;&lt;br&gt;  }&lt;br&gt;  public E newInstance(final V2 v2){&lt;br&gt;      return V_2;&lt;br&gt;  }&lt;br&gt;which won&amp;#39;t let them create any wild E objects in the first place. &lt;br&gt;
&lt;br&gt;-W&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;div class=&quot;gmail_quote&quot;&gt;On Thu, Dec 17, 2009 at 7:54 PM, Markus Karg &lt;span dir=&quot;ltr&quot;&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26833948&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;markus.karg@...&lt;/a&gt;&amp;gt;&lt;/span&gt; wrote:&lt;br&gt;&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;&quot;&gt;









&lt;div link=&quot;blue&quot; vlink=&quot;purple&quot; lang=&quot;DE&quot;&gt;

&lt;div&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt;Wolfgang,&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt;I never said that your code is not working at all, but just the
proposed solution it outlines does not work in my particular case. The problem
is that third parties might use class E in conjunction with their own code, e.
g.&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt;@XmlRootElement&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt;public class ThirdPartyElement {&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt;   public E e;&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt;}&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt;In that case, the third party author must take care to implement
the singleton support you are proposing. As a result, that singleton support
ends up in lots of places, and if only one of them are broken…: Happy
searching! ;-)&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt;The cause is that the unmarshall-Callbacks cannot replace the
current object. It just can modify the object, or it can modify the parent,
what both is suboptimal.&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt;The solution I just sent to the mailing list solves this
problem, as the singleton stuff in self-contained in the class E itself. So no
third party author has to take care, resulting in no code places which could
break. For me, this looks like the ultimate solution to the problem, but maybe
you have a better idea? :-)&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt;Regards&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt;Markus&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;div style=&quot;border-style: none none none solid; border-color: -moz-use-text-color -moz-use-text-color -moz-use-text-color blue; border-width: medium medium medium 1.5pt; padding: 0cm 0cm 0cm 4pt;&quot;&gt;

&lt;div&gt;

&lt;div style=&quot;border-style: solid none none; border-color: rgb(181, 196, 223) -moz-use-text-color -moz-use-text-color; border-width: 1pt medium medium; padding: 3pt 0cm 0cm;&quot;&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt;&quot; lang=&quot;EN-US&quot;&gt;From:&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt;&quot; lang=&quot;EN-US&quot;&gt; Wolfgang Laun
[mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26833948&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;wolfgang.laun@...&lt;/a&gt;] &lt;br&gt;
&lt;b&gt;Sent:&lt;/b&gt; Donnerstag, 17. Dezember 2009 18:45&lt;div class=&quot;im&quot;&gt;&lt;br&gt;
&lt;b&gt;To:&lt;/b&gt; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26833948&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users@...&lt;/a&gt;&lt;br&gt;
&lt;/div&gt;&lt;b&gt;Subject:&lt;/b&gt; Re: FW: How to map Java enum to XML element (not #PCDATA) body?&lt;/span&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div class=&quot;h5&quot;&gt;

&lt;p class=&quot;MsoNormal&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 12pt;&quot;&gt;Markus,&lt;br&gt;
&lt;br&gt;
this has to be discussed with a little more background. I understand that you
have an XML schema, which apparently defines &amp;lt;e&amp;gt; with a subordinate
choice with alternatives &amp;lt;v1/&amp;gt;,...&amp;lt;vN/&amp;gt;. No Java code is generated
from this schema; you write the class E by hand.&lt;br&gt;
&lt;br&gt;
One would think that elements &amp;lt;e&amp;gt; occurs in the XML schema, and that&amp;#39;s
why I wonder what these objects E might have to do with the API you are
providing. If you are providing unmarshalling for XML according to the schema, my
proposed solution works. &lt;br&gt;
&lt;br&gt;
Marshalling is slightly different, but you haven&amp;#39;t used this word yet ;-)&lt;br&gt;
&lt;br&gt;
A short sample code of what your API must provide in connection with class E
might help.&lt;br&gt;
&lt;br&gt;
-W&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;/p&gt;

&lt;div&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;On Thu, Dec 17, 2009 at 3:40 PM, Markus Karg &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26833948&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;markus.karg@...&lt;/a&gt;&amp;gt; wrote:&lt;/p&gt;

&lt;div&gt;

&lt;div&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt;Anybody having an idea how to solve
this?&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;div&gt;

&lt;div style=&quot;border-style: solid none none; border-color: -moz-use-text-color; border-width: 1pt medium medium; padding: 3pt 0cm 0cm;&quot;&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt;&quot; lang=&quot;EN-US&quot;&gt;From:&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt;&quot; lang=&quot;EN-US&quot;&gt; Markus Karg [mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26833948&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;markus.karg@...&lt;/a&gt;] &lt;br&gt;

&lt;b&gt;Sent:&lt;/b&gt; Dienstag, 15. Dezember 2009 21:33&lt;br&gt;
&lt;b&gt;To:&lt;/b&gt; &amp;#39;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26833948&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users@...&lt;/a&gt;&amp;#39;&lt;br&gt;
&lt;b&gt;Subject:&lt;/b&gt; RE: How to map Java enum to XML element (not #PCDATA) body?&lt;/span&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt;Wolfgang,&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt;your proposed
solution unfortunately does not work! :-(&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt;You are
assuming that I know locations of any code that is using my enum. But this is
not the case. I am writing a library that anybody can use. The job of providing
a singleton has to be done *inside* my library (i. e. JAXB itself must know
that an instance has to be replaced by another instance *before* providing the
reference to a using instance), not *outside* (not in the caller&amp;#39;s class).
Otherwise each user would have to know about the singleton problem and take
care of it, what is very, very error prone.&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt;I need a
solution that works *within* my library. Somethink like an &amp;quot;Unmarshal
Resolver&amp;quot;. I know I can register unmarshal listeners, but how to tell in
that&amp;#39;s event handler that the outcome is a *different* instance?&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt;Thanks!&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt;Markus&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;div style=&quot;border-style: none none none solid; border-color: -moz-use-text-color -moz-use-text-color -moz-use-text-color blue; border-width: medium medium medium 1.5pt; padding: 0cm 0cm 0cm 4pt;&quot;&gt;

&lt;div&gt;

&lt;div style=&quot;border-style: solid none none; border-color: -moz-use-text-color; border-width: 1pt medium medium; padding: 3pt 0cm 0cm;&quot;&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt;&quot; lang=&quot;EN-US&quot;&gt;From:&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt;&quot; lang=&quot;EN-US&quot;&gt; Wolfgang Laun [mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26833948&amp;i=6&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;wolfgang.laun@...&lt;/a&gt;]
&lt;br&gt;
&lt;b&gt;Sent:&lt;/b&gt; Dienstag, 15. Dezember 2009 20:15&lt;br&gt;
&lt;b&gt;To:&lt;/b&gt; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26833948&amp;i=7&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users@...&lt;/a&gt;&lt;br&gt;
&lt;b&gt;Subject:&lt;/b&gt; Re: How to map Java enum to XML element (not #PCDATA) body?&lt;/span&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 12pt; margin-left: 35.4pt;&quot;&gt;What you want is a unique instance of E for each of the
unique settings of its fields v1, v2,... with a unique instance of V1, V2,...,
respectively.&lt;br&gt;
&lt;br&gt;
Since you are not compiling the Java classes from the XML schema, you could
write all setters of fields of type E so that&lt;br&gt;
&lt;br&gt;
public void setE( E e ){&lt;br&gt;
    this.e = E.getSingleton( e );&lt;br&gt;
}&lt;br&gt;
&lt;br&gt;
E.getSingleton() would have to determine which of e&amp;#39;s fields v1, v2,... is not
null and return the corresponding E.V_1, E.V_2,...&lt;br&gt;
&lt;br&gt;
-W&lt;/p&gt;

&lt;div&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;On Tue, Dec 15, 2009 at 5:58 PM, Markus Karg &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26833948&amp;i=8&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;markus.karg@...&lt;/a&gt;&amp;gt;
wrote:&lt;/p&gt;

&lt;div&gt;

&lt;div&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;Using @XmlEnumValue it is possible to map Java enums to XML
elements, like in this example&amp;gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlRootElement&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;enum&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E {&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;  &lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlEnumValue&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(42, 0, 255);&quot;&gt;&amp;quot;v1&amp;quot;&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;,&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;  &lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlEnumValue&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(42, 0, 255);&quot;&gt;&amp;quot;v2&amp;quot;&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;,&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;  …&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;}&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;While this is working fine in case of #PCDATA values, I now
am experiencing the problem that I need to map values that are not #PCDATA but
in fact are XML elements:&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;For example,&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&amp;lt;e&amp;gt;&amp;lt;v1/&amp;gt;&amp;lt;/e&amp;gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;shall result in the same Java enum instance than&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&amp;lt;e&amp;gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;   
&amp;lt;v1&amp;gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;   
&amp;lt;/v1&amp;gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&amp;lt;/e&amp;gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;and so on.&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;That means, I cannot write&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlEnumValue&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(42, 0, 255);&quot;&gt;&amp;quot;&amp;lt;v1/&amp;gt;&amp;quot;&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;,&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlEnumValue&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(42, 0, 255);&quot;&gt;&amp;quot;&amp;lt;v2/&amp;gt;&amp;quot;&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;,&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;in Java, because that would not result in an instance of B
when unmarshalling a formatted XML file.&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;Can anybody tell me a solution working in JAXB 2.1 that
will solve this problem?&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;I started with a rather complex workaround like this one
(derived from the singleton pattern):&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlAccessorType&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;(&lt;/span&gt;&lt;i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;FIELD&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;)&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlRootElement&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E {&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;  public&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E &lt;/span&gt;&lt;i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; = &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E(&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; V1());&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;  public&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E &lt;/span&gt;&lt;i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; = &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E(&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; V2());&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;  private&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; V1 &lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;v1&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;;&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;  private&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; V2 &lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;v2&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;;&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;  private&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E() { }&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;  private&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E(V1 v1) { &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;this&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;v1&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; = v1; }&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;  private&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E(V2 v2) { &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;this&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;v2&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; = v2; }&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;}&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlRootElement&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; V1 {&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;
&lt;span style=&quot;color: black;&quot;&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlRootElement&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; V2 {&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;
&lt;span style=&quot;color: black;&quot;&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;This perfectly unmarshalls any kind of formatting and
whitespacing of &amp;lt;e&amp;gt;&amp;lt;v1/&amp;gt;&amp;lt;/e&amp;gt; and I am really happy with it so
far, BUT it does not produce singletongs. Instead, I am getting another instance
of E and V1 each time. This is rather bad, since I now must use the equals
operator to compare them, while it would be certainly great to in fact have the
same instances to be able to compare references:&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;if (unmarshalledObject == E.V1)&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;So my questions are:&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;* How can I get singletons, i. e. always the same instance
of E.V1 and E.V2 instead of new copies for each reference?&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;* Ain&amp;#39;t there a simpler way to get enums with dynamically
formatted and whitespaced XML element bodies?&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;BTW, since the XML schema is far out of my control, I am
sorry, no, I cannot change the fact that the body is not a #PCDATA but an XML
element.&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;Thanks a lot!&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;Markus&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;p class=&quot;MsoNormal&quot;&gt; &lt;/p&gt;

&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;

&lt;/div&gt;

&lt;/div&gt;


&lt;/blockquote&gt;&lt;/div&gt;&lt;br&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/FW%3A-How-to-map-Java-enum-to-XML-element-%28not--PCDATA%29-body--tp26828981p26833948.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26833124</id>
	<title>RE: FW: How to map Java enum to XML element (not #PCDATA) body?</title>
	<published>2009-12-17T10:53:45Z</published>
	<updated>2009-12-17T10:53:45Z</updated>
	<author>
		<name>Markus KARG-2</name>
	</author>
	<content type="html">&lt;html xmlns:v=&quot;urn:schemas-microsoft-com:vml&quot; xmlns:o=&quot;urn:schemas-microsoft-com:office:office&quot; xmlns:w=&quot;urn:schemas-microsoft-com:office:word&quot; xmlns:m=&quot;http://schemas.microsoft.com/office/2004/12/omml&quot; xmlns=&quot;http://www.w3.org/TR/REC-html40&quot;&gt;

&lt;head&gt;
&lt;meta http-equiv=Content-Type content=&quot;text/html; charset=us-ascii&quot;&gt;
&lt;meta name=Generator content=&quot;Microsoft Word 12 (filtered medium)&quot;&gt;

&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:shapedefaults v:ext=&quot;edit&quot; spidmax=&quot;1026&quot; /&gt;
&lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:shapelayout v:ext=&quot;edit&quot;&gt;
  &lt;o:idmap v:ext=&quot;edit&quot; data=&quot;1&quot; /&gt;
 &lt;/o:shapelayout&gt;&lt;/xml&gt;&lt;![endif]--&gt;
&lt;/head&gt;

&lt;body lang=DE link=blue vlink=purple&gt;

&lt;div class=Section1&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;Wolfgang,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;I never said that your code is not working at all, but just the
proposed solution it outlines does not work in my particular case. The problem
is that third parties might use class E in conjunction with their own code, e.
g.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;@XmlRootElement&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;public class ThirdPartyElement {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;&amp;nbsp;&amp;nbsp; public E e;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;In that case, the third party author must take care to implement
the singleton support you are proposing. As a result, that singleton support
ends up in lots of places, and if only one of them are broken&amp;#8230;: Happy
searching! ;-)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;The cause is that the unmarshall-Callbacks cannot replace the
current object. It just can modify the object, or it can modify the parent,
what both is suboptimal.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;The solution I just sent to the mailing list solves this
problem, as the singleton stuff in self-contained in the class E itself. So no
third party author has to take care, resulting in no code places which could
break. For me, this looks like the ultimate solution to the problem, but maybe
you have a better idea? :-)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;Regards&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;Markus&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;div style='border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm 4.0pt'&gt;

&lt;div&gt;

&lt;div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'&gt;

&lt;p class=MsoNormal&gt;&lt;b&gt;&lt;span lang=EN-US style='font-size:10.0pt;font-family:
&quot;Tahoma&quot;,&quot;sans-serif&quot;'&gt;From:&lt;/span&gt;&lt;/b&gt;&lt;span lang=EN-US style='font-size:10.0pt;
font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;'&gt; Wolfgang Laun
[mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26833124&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;wolfgang.laun@...&lt;/a&gt;] &lt;br&gt;
&lt;b&gt;Sent:&lt;/b&gt; Donnerstag, 17. Dezember 2009 18:45&lt;br&gt;
&lt;b&gt;To:&lt;/b&gt; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26833124&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users@...&lt;/a&gt;&lt;br&gt;
&lt;b&gt;Subject:&lt;/b&gt; Re: FW: How to map Java enum to XML element (not #PCDATA) body?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='margin-bottom:12.0pt'&gt;Markus,&lt;br&gt;
&lt;br&gt;
this has to be discussed with a little more background. I understand that you
have an XML schema, which apparently defines &amp;lt;e&amp;gt; with a subordinate
choice with alternatives &amp;lt;v1/&amp;gt;,...&amp;lt;vN/&amp;gt;. No Java code is generated
from this schema; you write the class E by hand.&lt;br&gt;
&lt;br&gt;
One would think that elements &amp;lt;e&amp;gt; occurs in the XML schema, and that's
why I wonder what these objects E might have to do with the API you are
providing. If you are providing unmarshalling for XML according to the schema, my
proposed solution works. &lt;br&gt;
&lt;br&gt;
Marshalling is slightly different, but you haven't used this word yet ;-)&lt;br&gt;
&lt;br&gt;
A short sample code of what your API must provide in connection with class E
might help.&lt;br&gt;
&lt;br&gt;
-W&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;div&gt;

&lt;p class=MsoNormal&gt;On Thu, Dec 17, 2009 at 3:40 PM, Markus Karg &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26833124&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;markus.karg@...&lt;/a&gt;&amp;gt; wrote:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;div&gt;

&lt;div&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:11.0pt;color:#1F497D'&gt;Anybody having an idea how to solve
this?&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:11.0pt;color:#1F497D'&gt;&amp;nbsp;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;div&gt;

&lt;div style='border:none;border-top:solid windowtext 1.0pt;padding:3.0pt 0cm 0cm 0cm;
border-color:-moz-use-text-color -moz-use-text-color'&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span lang=EN-US style='font-size:10.0pt'&gt;From:&lt;/span&gt;&lt;/b&gt;&lt;span lang=EN-US style='font-size:10.0pt'&gt; Markus Karg [mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26833124&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;markus.karg@...&lt;/a&gt;] &lt;br&gt;
&lt;b&gt;Sent:&lt;/b&gt; Dienstag, 15. Dezember 2009 21:33&lt;br&gt;
&lt;b&gt;To:&lt;/b&gt; '&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26833124&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users@...&lt;/a&gt;'&lt;br&gt;
&lt;b&gt;Subject:&lt;/b&gt; RE: How to map Java enum to XML element (not #PCDATA) body?&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;color:#1F497D'&gt;Wolfgang,&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;color:#1F497D'&gt;&amp;nbsp;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;color:#1F497D'&gt;your proposed
solution unfortunately does not work! :-(&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;color:#1F497D'&gt;&amp;nbsp;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;color:#1F497D'&gt;You are
assuming that I know locations of any code that is using my enum. But this is
not the case. I am writing a library that anybody can use. The job of providing
a singleton has to be done *inside* my library (i. e. JAXB itself must know
that an instance has to be replaced by another instance *before* providing the
reference to a using instance), not *outside* (not in the caller's class).
Otherwise each user would have to know about the singleton problem and take
care of it, what is very, very error prone.&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;color:#1F497D'&gt;&amp;nbsp;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;color:#1F497D'&gt;I need a
solution that works *within* my library. Somethink like an &amp;quot;Unmarshal
Resolver&amp;quot;. I know I can register unmarshal listeners, but how to tell in
that's event handler that the outcome is a *different* instance?&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;color:#1F497D'&gt;&amp;nbsp;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;color:#1F497D'&gt;Thanks!&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;color:#1F497D'&gt;Markus&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;color:#1F497D'&gt;&amp;nbsp;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;div style='border:none;border-left:solid windowtext 1.5pt;padding:0cm 0cm 0cm 4.0pt;
border-color:-moz-use-text-color -moz-use-text-color -moz-use-text-color blue'&gt;

&lt;div&gt;

&lt;div style='border:none;border-top:solid windowtext 1.0pt;padding:3.0pt 0cm 0cm 0cm;
border-color:-moz-use-text-color -moz-use-text-color'&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span lang=EN-US style='font-size:10.0pt'&gt;From:&lt;/span&gt;&lt;/b&gt;&lt;span lang=EN-US style='font-size:10.0pt'&gt; Wolfgang Laun [mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26833124&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;wolfgang.laun@...&lt;/a&gt;]
&lt;br&gt;
&lt;b&gt;Sent:&lt;/b&gt; Dienstag, 15. Dezember 2009 20:15&lt;br&gt;
&lt;b&gt;To:&lt;/b&gt; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26833124&amp;i=6&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users@...&lt;/a&gt;&lt;br&gt;
&lt;b&gt;Subject:&lt;/b&gt; Re: How to map Java enum to XML element (not #PCDATA) body?&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;margin-bottom:12.0pt;
margin-left:35.4pt'&gt;What you want is a unique instance of E for each of the
unique settings of its fields v1, v2,... with a unique instance of V1, V2,...,
respectively.&lt;br&gt;
&lt;br&gt;
Since you are not compiling the Java classes from the XML schema, you could
write all setters of fields of type E so that&lt;br&gt;
&lt;br&gt;
public void setE( E e ){&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; this.e = E.getSingleton( e );&lt;br&gt;
}&lt;br&gt;
&lt;br&gt;
E.getSingleton() would have to determine which of e's fields v1, v2,... is not
null and return the corresponding E.V_1, E.V_2,...&lt;br&gt;
&lt;br&gt;
-W&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;div&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;On Tue, Dec 15, 2009 at 5:58 PM, Markus Karg &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26833124&amp;i=7&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;markus.karg@...&lt;/a&gt;&amp;gt;
wrote:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;div&gt;

&lt;div&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;Using @XmlEnumValue it is possible to map Java enums to XML
elements, like in this example&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlRootElement&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;enum&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; E {&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt;&amp;nbsp; &lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlEnumValue&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:#2A00FF'&gt;&amp;quot;v1&amp;quot;&lt;/span&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:
10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;,&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt;&amp;nbsp; &lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlEnumValue&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:#2A00FF'&gt;&amp;quot;v2&amp;quot;&lt;/span&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:
10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;,&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt;&amp;nbsp; &amp;#8230;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt;}&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt;&amp;nbsp;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;While this is working fine in case of #PCDATA values, I now
am experiencing the problem that I need to map values that are not #PCDATA but
in fact are XML elements:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;For example,&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;lt;e&amp;gt;&amp;lt;v1/&amp;gt;&amp;lt;/e&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;shall result in the same Java enum instance than&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;lt;e&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;lt;v1&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;lt;/v1&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;lt;/e&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;and so on.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;That means, I cannot write&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlEnumValue&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:#2A00FF'&gt;&amp;quot;&amp;lt;v1/&amp;gt;&amp;quot;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;,&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlEnumValue&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:#2A00FF'&gt;&amp;quot;&amp;lt;v2/&amp;gt;&amp;quot;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;,&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;in Java, because that would not result in an instance of B
when unmarshalling a formatted XML file.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;Can anybody tell me a solution working in JAXB 2.1 that
will solve this problem?&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;I started with a rather complex workaround like this one
(derived from the singleton pattern):&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlAccessorType&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:#0000C0'&gt;FIELD&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;)&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlRootElement&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; E {&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;&amp;nbsp; public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E(&lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V1());&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;&amp;nbsp; public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E(&lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V2());&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt; V1 &lt;/span&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v1&lt;/span&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt; V2 &lt;/span&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v2&lt;/span&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt; E() { }&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt; E(V1 v1) { &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;this&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;.&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v1&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = v1; }&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt; E(V2 v2) { &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;this&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;.&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v2&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = v2; }&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt;}&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlRootElement&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; V1 {&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;
&lt;span style='color:black'&gt;}&lt;/span&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;&amp;nbsp;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlRootElement&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; V2 {&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;
&lt;span style='color:black'&gt;}&lt;/span&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt;&amp;nbsp;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;This perfectly unmarshalls any kind of formatting and
whitespacing of &amp;lt;e&amp;gt;&amp;lt;v1/&amp;gt;&amp;lt;/e&amp;gt; and I am really happy with it so
far, BUT it does not produce singletongs. Instead, I am getting another instance
of E and V1 each time. This is rather bad, since I now must use the equals
operator to compare them, while it would be certainly great to in fact have the
same instances to be able to compare references:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;if (unmarshalledObject == E.V1)&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;So my questions are:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;* How can I get singletons, i. e. always the same instance
of E.V1 and E.V2 instead of new copies for each reference?&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;* Ain't there a simpler way to get enums with dynamically
formatted and whitespaced XML element bodies?&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;BTW, since the XML schema is far out of my control, I am
sorry, no, I cannot change the fact that the body is not a #PCDATA but an XML
element.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;Thanks a lot!&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;Markus&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;/body&gt;

&lt;/html&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/FW%3A-How-to-map-Java-enum-to-XML-element-%28not--PCDATA%29-body--tp26828981p26833124.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26832055</id>
	<title>Re: FW: How to map Java enum to XML element (not #PCDATA) body?</title>
	<published>2009-12-17T09:44:46Z</published>
	<updated>2009-12-17T09:44:46Z</updated>
	<author>
		<name>Wolfgang Laun-2</name>
	</author>
	<content type="html">Markus,&lt;br&gt;&lt;br&gt;this has to be discussed with a little more background. I understand that you have an XML schema, which apparently defines &amp;lt;e&amp;gt; with a subordinate choice with alternatives &amp;lt;v1/&amp;gt;,...&amp;lt;vN/&amp;gt;. No Java code is generated from this schema; you write the class E by hand.&lt;br&gt;
&lt;br&gt;One would think that elements &amp;lt;e&amp;gt; occurs in the XML schema, and that&amp;#39;s why I wonder what these objects E might have to do with the API you are providing. If you are providing unmarshalling for XML according to the schema, my proposed solution works. &lt;br&gt;
&lt;br&gt;Marshalling is slightly different, but you haven&amp;#39;t used this word yet ;-)&lt;br&gt;&lt;br&gt;A short sample code of what your API must provide in connection with class E might help.&lt;br&gt;&lt;br&gt;-W&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;div class=&quot;gmail_quote&quot;&gt;
On Thu, Dec 17, 2009 at 3:40 PM, Markus Karg &lt;span dir=&quot;ltr&quot;&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26832055&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;markus.karg@...&lt;/a&gt;&amp;gt;&lt;/span&gt; wrote:&lt;br&gt;&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;&quot;&gt;









&lt;div link=&quot;blue&quot; vlink=&quot;purple&quot; lang=&quot;DE&quot;&gt;

&lt;div&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt;Anybody having an idea how to solve this?&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;div&gt;

&lt;div style=&quot;border-style: solid none none; border-color: rgb(181, 196, 223) -moz-use-text-color -moz-use-text-color; border-width: 1pt medium medium; padding: 3pt 0cm 0cm;&quot;&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt;&quot; lang=&quot;EN-US&quot;&gt;From:&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt;&quot; lang=&quot;EN-US&quot;&gt; Markus
Karg [mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26832055&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;markus.karg@...&lt;/a&gt;] &lt;br&gt;
&lt;b&gt;Sent:&lt;/b&gt; Dienstag, 15. Dezember 2009 21:33&lt;br&gt;
&lt;b&gt;To:&lt;/b&gt; &amp;#39;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26832055&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users@...&lt;/a&gt;&amp;#39;&lt;br&gt;
&lt;b&gt;Subject:&lt;/b&gt; RE: How to map Java enum to XML element (not #PCDATA) body?&lt;/span&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt;Wolfgang,&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt;your proposed solution
unfortunately does not work! :-(&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt;You are assuming that I know
locations of any code that is using my enum. But this is not the case. I am
writing a library that anybody can use. The job of providing a singleton has to
be done *inside* my library (i. e. JAXB itself must know that an instance has
to be replaced by another instance *before* providing the reference to a using
instance), not *outside* (not in the caller&amp;#39;s class). Otherwise each user would
have to know about the singleton problem and take care of it, what is very,
very error prone.&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt;I need a solution that works
*within* my library. Somethink like an &amp;quot;Unmarshal Resolver&amp;quot;. I know I
can register unmarshal listeners, but how to tell in that&amp;#39;s event handler that
the outcome is a *different* instance?&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt;Thanks!&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt;Markus&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(31, 73, 125);&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;div style=&quot;border-style: none none none solid; border-color: -moz-use-text-color -moz-use-text-color -moz-use-text-color blue; border-width: medium medium medium 1.5pt; padding: 0cm 0cm 0cm 4pt;&quot;&gt;

&lt;div&gt;

&lt;div style=&quot;border-style: solid none none; border-color: rgb(181, 196, 223) -moz-use-text-color -moz-use-text-color; border-width: 1pt medium medium; padding: 3pt 0cm 0cm;&quot;&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt;&quot; lang=&quot;EN-US&quot;&gt;From:&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt;&quot; lang=&quot;EN-US&quot;&gt; Wolfgang
Laun [mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26832055&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;wolfgang.laun@...&lt;/a&gt;] &lt;br&gt;
&lt;b&gt;Sent:&lt;/b&gt; Dienstag, 15. Dezember 2009 20:15&lt;br&gt;
&lt;b&gt;To:&lt;/b&gt; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26832055&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users@...&lt;/a&gt;&lt;br&gt;
&lt;b&gt;Subject:&lt;/b&gt; Re: How to map Java enum to XML element (not #PCDATA) body?&lt;/span&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-right: 0cm; margin-bottom: 12pt; margin-left: 35.4pt;&quot;&gt;What you want is a unique instance of E for each of
the unique settings of its fields v1, v2,... with a unique instance of V1,
V2,..., respectively.&lt;br&gt;
&lt;br&gt;
Since you are not compiling the Java classes from the XML schema, you could
write all setters of fields of type E so that&lt;br&gt;
&lt;br&gt;
public void setE( E e ){&lt;br&gt;
    this.e = E.getSingleton( e );&lt;br&gt;
}&lt;br&gt;
&lt;br&gt;
E.getSingleton() would have to determine which of e&amp;#39;s fields v1, v2,... is not
null and return the corresponding E.V_1, E.V_2,...&lt;br&gt;
&lt;br&gt;
-W&lt;/p&gt;

&lt;div&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;On Tue, Dec 15, 2009 at 5:58 PM,
Markus Karg &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26832055&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;markus.karg@...&lt;/a&gt;&amp;gt;
wrote:&lt;/p&gt;

&lt;div&gt;

&lt;div&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;Using @XmlEnumValue it is possible to map Java enums to XML
elements, like in this example&amp;gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlRootElement&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;enum&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E {&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;  &lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlEnumValue&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(42, 0, 255);&quot;&gt;&amp;quot;v1&amp;quot;&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;,&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;  &lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlEnumValue&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(42, 0, 255);&quot;&gt;&amp;quot;v2&amp;quot;&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;,&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;  …&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;}&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;While this is working fine in case of #PCDATA values, I now
am experiencing the problem that I need to map values that are not #PCDATA but
in fact are XML elements:&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;For example,&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&amp;lt;e&amp;gt;&amp;lt;v1/&amp;gt;&amp;lt;/e&amp;gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;shall result in the same Java enum instance than&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&amp;lt;e&amp;gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;   
&amp;lt;v1&amp;gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;   
&amp;lt;/v1&amp;gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&amp;lt;/e&amp;gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;and so on.&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;That means, I cannot write&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlEnumValue&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(42, 0, 255);&quot;&gt;&amp;quot;&amp;lt;v1/&amp;gt;&amp;quot;&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;,&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlEnumValue&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(42, 0, 255);&quot;&gt;&amp;quot;&amp;lt;v2/&amp;gt;&amp;quot;&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;,&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;in Java, because that would not result in an instance of B
when unmarshalling a formatted XML file.&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;Can anybody tell me a solution working in JAXB 2.1 that
will solve this problem?&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;I started with a rather complex workaround like this one
(derived from the singleton pattern):&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlAccessorType&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;(&lt;/span&gt;&lt;i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;FIELD&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;)&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlRootElement&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E {&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;  public&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E &lt;/span&gt;&lt;i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; = &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E(&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; V1());&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;  public&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E &lt;/span&gt;&lt;i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; = &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E(&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; V2());&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;  private&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; V1 &lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;v1&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;;&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;  private&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; V2 &lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;v2&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;;&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;  private&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E() { }&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;  private&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E(V1 v1) { &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;this&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;v1&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; = v1; }&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;  private&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E(V2 v2) { &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;this&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;v2&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; = v2; }&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;}&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlRootElement&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; V1 {&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;
&lt;span style=&quot;color: black;&quot;&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlRootElement&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; V2 {&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;
&lt;span style=&quot;color: black;&quot;&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;This perfectly unmarshalls any kind of formatting and
whitespacing of &amp;lt;e&amp;gt;&amp;lt;v1/&amp;gt;&amp;lt;/e&amp;gt; and I am really happy with it so
far, BUT it does not produce singletongs. Instead, I am getting another
instance of E and V1 each time. This is rather bad, since I now must use the
equals operator to compare them, while it would be certainly great to in fact
have the same instances to be able to compare references:&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;if (unmarshalledObject == E.V1)&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;So my questions are:&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;* How can I get singletons, i. e. always the same instance
of E.V1 and E.V2 instead of new copies for each reference?&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;* Ain&amp;#39;t there a simpler way to get enums with dynamically
formatted and whitespaced XML element bodies?&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;BTW, since the XML schema is far out of my control, I am
sorry, no, I cannot change the fact that the body is not a #PCDATA but an XML
element.&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;Thanks a lot!&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt;Markus&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;margin-left: 35.4pt;&quot;&gt; &lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;/div&gt;


&lt;/blockquote&gt;&lt;/div&gt;&lt;br&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/FW%3A-How-to-map-Java-enum-to-XML-element-%28not--PCDATA%29-body--tp26828981p26832055.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26830446</id>
	<title>RE: How to map Java enum to XML element (not #PCDATA) body?</title>
	<published>2009-12-17T08:08:48Z</published>
	<updated>2009-12-17T08:08:48Z</updated>
	<author>
		<name>Markus KARG-2</name>
	</author>
	<content type="html">&lt;html xmlns:v=&quot;urn:schemas-microsoft-com:vml&quot; xmlns:o=&quot;urn:schemas-microsoft-com:office:office&quot; xmlns:w=&quot;urn:schemas-microsoft-com:office:word&quot; xmlns:m=&quot;http://schemas.microsoft.com/office/2004/12/omml&quot; xmlns=&quot;http://www.w3.org/TR/REC-html40&quot;&gt;

&lt;head&gt;
&lt;meta http-equiv=Content-Type content=&quot;text/html; charset=us-ascii&quot;&gt;
&lt;meta name=Generator content=&quot;Microsoft Word 12 (filtered medium)&quot;&gt;

&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:shapedefaults v:ext=&quot;edit&quot; spidmax=&quot;1026&quot; /&gt;
&lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:shapelayout v:ext=&quot;edit&quot;&gt;
  &lt;o:idmap v:ext=&quot;edit&quot; data=&quot;1&quot; /&gt;
 &lt;/o:shapelayout&gt;&lt;/xml&gt;&lt;![endif]--&gt;
&lt;/head&gt;

&lt;body lang=DE link=blue vlink=purple&gt;

&lt;div class=Section1&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;Meanwhile I found a solution and think that it seems to be quite
optimal, see below.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;Any comments appreciated (maybe still too complex?)! :-)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlAccessorType&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;FIELD&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;)&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlJavaTypeAdapter&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;(E.&lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;)&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlRootElement&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;()&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;extends&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; XmlAdapter&amp;lt;E,
E&amp;gt; {&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E(V1.&lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;SINGLETON&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;, &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;null&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;);&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E(&lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;null&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;, V2.&lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;SINGLETON&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;);&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E &lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v1&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E &lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v2&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#3F7F5F'&gt;&amp;nbsp; // Singleton&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E() {&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#3F7F5F'&gt;// For &lt;u&gt;unmarshalling&lt;/u&gt;
only.&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;&amp;nbsp; }&lt;/span&gt;&lt;span style='font-size:
10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;&amp;nbsp; &lt;/span&gt;&lt;span style='font-size:
10.0pt;font-family:&quot;Courier New&quot;;color:#3F7F5F'&gt;// &lt;u&gt;Enum&lt;/u&gt;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;&amp;nbsp; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:
10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E(&lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V1 v1, &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V2 v2) {&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;this&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;.&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v1&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = v1;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;this&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;.&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v2&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = v2;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;&amp;nbsp; }&lt;/span&gt;&lt;span style='font-size:
10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#646464'&gt;&amp;nbsp; @Override&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E marshal(&lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E v) &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;throws&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; Exception {&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; v;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;'&gt;&amp;nbsp; &lt;span style='color:black'&gt;}&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#646464'&gt;&amp;nbsp; @Override&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;&amp;nbsp; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:
10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E unmarshal(&lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E v) &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;throws&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; Exception {&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; (v.&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v1&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; != &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;null&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;)&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;return&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;if&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; (v.&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v2&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; != &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;null&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;)&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;return&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; v;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;&amp;nbsp; }&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt;}&lt;/span&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;A @XmlRootElement that itself is it's own @XmlJavaTypeAdapter
and XmlAdapter, mapping itself to itself, actually is nothing else but an
&amp;quot;(Un)marshaller.Listener on steroids&amp;quot;: It is able to replace instances
of itself by other instances on iteself at both, marshalling and unmarshalling.
That trick allows to implement not only highly complex enums, but also any kind
of value-aware (!) factories, like here, a multi-singleton. :-)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;Regards&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;Markus&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;div style='border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm 4.0pt'&gt;

&lt;div&gt;

&lt;div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'&gt;

&lt;p class=MsoNormal&gt;&lt;b&gt;&lt;span lang=EN-US style='font-size:10.0pt;font-family:
&quot;Tahoma&quot;,&quot;sans-serif&quot;'&gt;From:&lt;/span&gt;&lt;/b&gt;&lt;span lang=EN-US style='font-size:10.0pt;
font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;'&gt; Markus Karg [mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26830446&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;markus.karg@...&lt;/a&gt;] &lt;br&gt;
&lt;b&gt;Sent:&lt;/b&gt; Donnerstag, 17. Dezember 2009 15:41&lt;br&gt;
&lt;b&gt;To:&lt;/b&gt; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26830446&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users@...&lt;/a&gt;&lt;br&gt;
&lt;b&gt;Subject:&lt;/b&gt; FW: How to map Java enum to XML element (not #PCDATA) body?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;Anybody having an idea how to solve this?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;div&gt;

&lt;div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;b&gt;&lt;span lang=EN-US style='font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;'&gt;From:&lt;/span&gt;&lt;/b&gt;&lt;span lang=EN-US style='font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;'&gt; Markus
Karg [mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26830446&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;markus.karg@...&lt;/a&gt;] &lt;br&gt;
&lt;b&gt;Sent:&lt;/b&gt; Dienstag, 15. Dezember 2009 21:33&lt;br&gt;
&lt;b&gt;To:&lt;/b&gt; '&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26830446&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users@...&lt;/a&gt;'&lt;br&gt;
&lt;b&gt;Subject:&lt;/b&gt; RE: How to map Java enum to XML element (not #PCDATA) body?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;
font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D'&gt;Wolfgang,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;
font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;
font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D'&gt;your proposed solution
unfortunately does not work! :-(&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;
font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;
font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D'&gt;You are assuming that I know
locations of any code that is using my enum. But this is not the case. I am
writing a library that anybody can use. The job of providing a singleton has to
be done *inside* my library (i. e. JAXB itself must know that an instance has
to be replaced by another instance *before* providing the reference to a using
instance), not *outside* (not in the caller's class). Otherwise each user would
have to know about the singleton problem and take care of it, what is very,
very error prone.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;
font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;
font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D'&gt;I need a solution that works
*within* my library. Somethink like an &amp;quot;Unmarshal Resolver&amp;quot;. I know I
can register unmarshal listeners, but how to tell in that's event handler that
the outcome is a *different* instance?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;
font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;
font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D'&gt;Thanks!&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;
font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D'&gt;Markus&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;
font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;div style='border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm 4.0pt'&gt;

&lt;div&gt;

&lt;div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;b&gt;&lt;span lang=EN-US style='font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;'&gt;From:&lt;/span&gt;&lt;/b&gt;&lt;span lang=EN-US style='font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;'&gt; Wolfgang
Laun [mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26830446&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;wolfgang.laun@...&lt;/a&gt;] &lt;br&gt;
&lt;b&gt;Sent:&lt;/b&gt; Dienstag, 15. Dezember 2009 20:15&lt;br&gt;
&lt;b&gt;To:&lt;/b&gt; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26830446&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users@...&lt;/a&gt;&lt;br&gt;
&lt;b&gt;Subject:&lt;/b&gt; Re: How to map Java enum to XML element (not #PCDATA) body?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:
12.0pt;margin-left:35.4pt'&gt;What you want is a unique instance of E for each of
the unique settings of its fields v1, v2,... with a unique instance of V1,
V2,..., respectively.&lt;br&gt;
&lt;br&gt;
Since you are not compiling the Java classes from the XML schema, you could
write all setters of fields of type E so that&lt;br&gt;
&lt;br&gt;
public void setE( E e ){&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; this.e = E.getSingleton( e );&lt;br&gt;
}&lt;br&gt;
&lt;br&gt;
E.getSingleton() would have to determine which of e's fields v1, v2,... is not
null and return the corresponding E.V_1, E.V_2,...&lt;br&gt;
&lt;br&gt;
-W&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;div&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;On Tue, Dec 15, 2009 at 5:58 PM,
Markus Karg &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26830446&amp;i=6&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;markus.karg@...&lt;/a&gt;&amp;gt;
wrote:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;div&gt;

&lt;div&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;Using @XmlEnumValue it is possible to map Java enums to XML
elements, like in this example&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlRootElement&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;enum&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; E {&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt;&amp;nbsp; &lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlEnumValue&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:#2A00FF'&gt;&amp;quot;v1&amp;quot;&lt;/span&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:
10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;,&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt;&amp;nbsp; &lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlEnumValue&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:#2A00FF'&gt;&amp;quot;v2&amp;quot;&lt;/span&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:
10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;,&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt;&amp;nbsp; &amp;#8230;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt;}&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt;&amp;nbsp;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;While this is working fine in case of #PCDATA values, I now
am experiencing the problem that I need to map values that are not #PCDATA but
in fact are XML elements:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;For example,&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;lt;e&amp;gt;&amp;lt;v1/&amp;gt;&amp;lt;/e&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;shall result in the same Java enum instance than&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;lt;e&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;lt;v1&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;lt;/v1&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;lt;/e&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;and so on.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;That means, I cannot write&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlEnumValue&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:#2A00FF'&gt;&amp;quot;&amp;lt;v1/&amp;gt;&amp;quot;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;,&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlEnumValue&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:#2A00FF'&gt;&amp;quot;&amp;lt;v2/&amp;gt;&amp;quot;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;,&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;in Java, because that would not result in an instance of B
when unmarshalling a formatted XML file.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;Can anybody tell me a solution working in JAXB 2.1 that
will solve this problem?&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;I started with a rather complex workaround like this one
(derived from the singleton pattern):&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlAccessorType&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:#0000C0'&gt;FIELD&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;)&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlRootElement&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; E {&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;&amp;nbsp; public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E(&lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V1());&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;&amp;nbsp; public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E(&lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V2());&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt; V1 &lt;/span&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v1&lt;/span&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt; V2 &lt;/span&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v2&lt;/span&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt; E() { }&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt; E(V1 v1) { &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;this&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;.&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v1&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = v1; }&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt; E(V2 v2) { &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;this&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;.&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v2&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = v2; }&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt;}&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlRootElement&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; V1 {&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;
&lt;span style='color:black'&gt;}&lt;/span&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;&amp;nbsp;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlRootElement&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; V2 {&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;
&lt;span style='color:black'&gt;}&lt;/span&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt;&amp;nbsp;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;This perfectly unmarshalls any kind of formatting and
whitespacing of &amp;lt;e&amp;gt;&amp;lt;v1/&amp;gt;&amp;lt;/e&amp;gt; and I am really happy with it so
far, BUT it does not produce singletongs. Instead, I am getting another instance
of E and V1 each time. This is rather bad, since I now must use the equals
operator to compare them, while it would be certainly great to in fact have the
same instances to be able to compare references:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;if (unmarshalledObject == E.V1)&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;So my questions are:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;* How can I get singletons, i. e. always the same instance
of E.V1 and E.V2 instead of new copies for each reference?&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;* Ain't there a simpler way to get enums with dynamically
formatted and whitespaced XML element bodies?&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;BTW, since the XML schema is far out of my control, I am
sorry, no, I cannot change the fact that the body is not a #PCDATA but an XML
element.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;Thanks a lot!&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;Markus&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;/body&gt;

&lt;/html&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/FW%3A-How-to-map-Java-enum-to-XML-element-%28not--PCDATA%29-body--tp26828981p26830446.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26828981</id>
	<title>FW: How to map Java enum to XML element (not #PCDATA) body?</title>
	<published>2009-12-17T06:40:33Z</published>
	<updated>2009-12-17T06:40:33Z</updated>
	<author>
		<name>Markus KARG-2</name>
	</author>
	<content type="html">&lt;html xmlns:v=&quot;urn:schemas-microsoft-com:vml&quot; xmlns:o=&quot;urn:schemas-microsoft-com:office:office&quot; xmlns:w=&quot;urn:schemas-microsoft-com:office:word&quot; xmlns:m=&quot;http://schemas.microsoft.com/office/2004/12/omml&quot; xmlns=&quot;http://www.w3.org/TR/REC-html40&quot;&gt;

&lt;head&gt;
&lt;META HTTP-EQUIV=&quot;Content-Type&quot; CONTENT=&quot;text/html; charset=us-ascii&quot;&gt;
&lt;meta name=Generator content=&quot;Microsoft Word 12 (filtered medium)&quot;&gt;

&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:shapedefaults v:ext=&quot;edit&quot; spidmax=&quot;1026&quot; /&gt;
&lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:shapelayout v:ext=&quot;edit&quot;&gt;
  &lt;o:idmap v:ext=&quot;edit&quot; data=&quot;1&quot; /&gt;
 &lt;/o:shapelayout&gt;&lt;/xml&gt;&lt;![endif]--&gt;
&lt;/head&gt;

&lt;body lang=DE link=blue vlink=purple&gt;

&lt;div class=Section1&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;Anybody having an idea how to solve this?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;div&gt;

&lt;div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;b&gt;&lt;span lang=EN-US style='font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;'&gt;From:&lt;/span&gt;&lt;/b&gt;&lt;span lang=EN-US style='font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;'&gt; Markus
Karg [mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26828981&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;markus.karg@...&lt;/a&gt;] &lt;br&gt;
&lt;b&gt;Sent:&lt;/b&gt; Dienstag, 15. Dezember 2009 21:33&lt;br&gt;
&lt;b&gt;To:&lt;/b&gt; '&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26828981&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users@...&lt;/a&gt;'&lt;br&gt;
&lt;b&gt;Subject:&lt;/b&gt; RE: How to map Java enum to XML element (not #PCDATA) body?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;
font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D'&gt;Wolfgang,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;
font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;
font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D'&gt;your proposed solution
unfortunately does not work! :-(&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;
font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;
font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D'&gt;You are assuming that I know
locations of any code that is using my enum. But this is not the case. I am
writing a library that anybody can use. The job of providing a singleton has to
be done *inside* my library (i. e. JAXB itself must know that an instance has
to be replaced by another instance *before* providing the reference to a using
instance), not *outside* (not in the caller's class). Otherwise each user would
have to know about the singleton problem and take care of it, what is very,
very error prone.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;
font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;
font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D'&gt;I need a solution that works
*within* my library. Somethink like an &amp;quot;Unmarshal Resolver&amp;quot;. I know I
can register unmarshal listeners, but how to tell in that's event handler that
the outcome is a *different* instance?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;
font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;
font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D'&gt;Thanks!&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;
font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D'&gt;Markus&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;span style='font-size:11.0pt;
font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;div style='border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm 4.0pt'&gt;

&lt;div&gt;

&lt;div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;b&gt;&lt;span lang=EN-US style='font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;'&gt;From:&lt;/span&gt;&lt;/b&gt;&lt;span lang=EN-US style='font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;'&gt; Wolfgang
Laun [mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26828981&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;wolfgang.laun@...&lt;/a&gt;] &lt;br&gt;
&lt;b&gt;Sent:&lt;/b&gt; Dienstag, 15. Dezember 2009 20:15&lt;br&gt;
&lt;b&gt;To:&lt;/b&gt; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26828981&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users@...&lt;/a&gt;&lt;br&gt;
&lt;b&gt;Subject:&lt;/b&gt; Re: How to map Java enum to XML element (not #PCDATA) body?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:
12.0pt;margin-left:35.4pt'&gt;What you want is a unique instance of E for each of
the unique settings of its fields v1, v2,... with a unique instance of V1,
V2,..., respectively.&lt;br&gt;
&lt;br&gt;
Since you are not compiling the Java classes from the XML schema, you could
write all setters of fields of type E so that&lt;br&gt;
&lt;br&gt;
public void setE( E e ){&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; this.e = E.getSingleton( e );&lt;br&gt;
}&lt;br&gt;
&lt;br&gt;
E.getSingleton() would have to determine which of e's fields v1, v2,... is not
null and return the corresponding E.V_1, E.V_2,...&lt;br&gt;
&lt;br&gt;
-W&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;div&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;On Tue, Dec 15, 2009 at 5:58 PM,
Markus Karg &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26828981&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;markus.karg@...&lt;/a&gt;&amp;gt;
wrote:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;div&gt;

&lt;div&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;Using @XmlEnumValue it is possible to map Java enums to XML
elements, like in this example&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlRootElement&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;enum&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; E {&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt;&amp;nbsp; &lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlEnumValue&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:#2A00FF'&gt;&amp;quot;v1&amp;quot;&lt;/span&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:
10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;,&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt;&amp;nbsp; &lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlEnumValue&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:#2A00FF'&gt;&amp;quot;v2&amp;quot;&lt;/span&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:
10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;,&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt;&amp;nbsp; &amp;#8230;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt;}&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt;&amp;nbsp;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;While this is working fine in case of #PCDATA values, I now
am experiencing the problem that I need to map values that are not #PCDATA but
in fact are XML elements:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;For example,&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;lt;e&amp;gt;&amp;lt;v1/&amp;gt;&amp;lt;/e&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;shall result in the same Java enum instance than&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;lt;e&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;lt;v1&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;lt;/v1&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;lt;/e&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;and so on.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;That means, I cannot write&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlEnumValue&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:#2A00FF'&gt;&amp;quot;&amp;lt;v1/&amp;gt;&amp;quot;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;,&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlEnumValue&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:#2A00FF'&gt;&amp;quot;&amp;lt;v2/&amp;gt;&amp;quot;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;,&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;in Java, because that would not result in an instance of B
when unmarshalling a formatted XML file.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;Can anybody tell me a solution working in JAXB 2.1 that
will solve this problem?&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;I started with a rather complex workaround like this one
(derived from the singleton pattern):&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlAccessorType&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:
&quot;Courier New&quot;;color:#0000C0'&gt;FIELD&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;)&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlRootElement&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; E {&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;&amp;nbsp; public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E(&lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V1());&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;&amp;nbsp; public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E(&lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V2());&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt; V1 &lt;/span&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v1&lt;/span&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt; V2 &lt;/span&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v2&lt;/span&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt; E() { }&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt; E(V1 v1) { &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;this&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;.&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v1&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = v1; }&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt; E(V2 v2) { &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;this&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;.&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v2&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = v2; }&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt;}&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlRootElement&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; V1 {&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;
&lt;span style='color:black'&gt;}&lt;/span&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;&amp;nbsp;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#646464'&gt;@XmlRootElement&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:#7F0055'&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt; V2 {&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;
&lt;span style='color:black'&gt;}&lt;/span&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt;&amp;nbsp;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;This perfectly unmarshalls any kind of formatting and
whitespacing of &amp;lt;e&amp;gt;&amp;lt;v1/&amp;gt;&amp;lt;/e&amp;gt; and I am really happy with it so
far, BUT it does not produce singletongs. Instead, I am getting another
instance of E and V1 each time. This is rather bad, since I now must use the
equals operator to compare them, while it would be certainly great to in fact
have the same instances to be able to compare references:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;if (unmarshalledObject == E.V1)&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;So my questions are:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;* How can I get singletons, i. e. always the same instance
of E.V1 and E.V2 instead of new copies for each reference?&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;* Ain't there a simpler way to get enums with dynamically
formatted and whitespaced XML element bodies?&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;BTW, since the XML schema is far out of my control, I am
sorry, no, I cannot change the fact that the body is not a #PCDATA but an XML
element.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;Thanks a lot!&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:35.4pt'&gt;Markus&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;p class=MsoNormal style='margin-left:35.4pt'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;/body&gt;

&lt;/html&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/FW%3A-How-to-map-Java-enum-to-XML-element-%28not--PCDATA%29-body--tp26828981p26828981.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26828473</id>
	<title>Provider and Licence question</title>
	<published>2009-12-17T06:05:08Z</published>
	<updated>2009-12-17T06:05:08Z</updated>
	<author>
		<name>Muller, Anthony</name>
	</author>
	<content type="html">&lt;META HTTP-EQUIV=&quot;Content-Type&quot; CONTENT=&quot;text/html; charset=iso-8859-1&quot;&gt;
&lt;html xmlns:v=&quot;urn:schemas-microsoft-com:vml&quot; xmlns:o=&quot;urn:schemas-microsoft-com:office:office&quot; xmlns:w=&quot;urn:schemas-microsoft-com:office:word&quot; xmlns:x=&quot;urn:schemas-microsoft-com:office:excel&quot; xmlns:p=&quot;urn:schemas-microsoft-com:office:powerpoint&quot; xmlns:a=&quot;urn:schemas-microsoft-com:office:access&quot; xmlns:dt=&quot;uuid:C2F41010-65B3-11d1-A29F-00AA00C14882&quot; xmlns:s=&quot;uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882&quot; xmlns:rs=&quot;urn:schemas-microsoft-com:rowset&quot; xmlns:Z=&quot;urn:schemas-microsoft-com:&quot; xmlns:b=&quot;urn:schemas-microsoft-com:office:publisher&quot; xmlns:ss=&quot;urn:schemas-microsoft-com:office:spreadsheet&quot; xmlns:c=&quot;urn:schemas-microsoft-com:office:component:spreadsheet&quot; xmlns:odc=&quot;urn:schemas-microsoft-com:office:odc&quot; xmlns:oa=&quot;urn:schemas-microsoft-com:office:activation&quot; xmlns:html=&quot;http://www.w3.org/TR/REC-html40&quot; xmlns:q=&quot;http://schemas.xmlsoap.org/soap/envelope/&quot; xmlns:rtc=&quot;http://microsoft.com/officenet/conferencing&quot; xmlns:D=&quot;DAV:&quot; xmlns:Repl=&quot;http://schemas.microsoft.com/repl/&quot; xmlns:mt=&quot;http://schemas.microsoft.com/sharepoint/soap/meetings/&quot; xmlns:x2=&quot;http://schemas.microsoft.com/office/excel/2003/xml&quot; xmlns:ppda=&quot;http://www.passport.com/NameSpace.xsd&quot; xmlns:ois=&quot;http://schemas.microsoft.com/sharepoint/soap/ois/&quot; xmlns:dir=&quot;http://schemas.microsoft.com/sharepoint/soap/directory/&quot; xmlns:ds=&quot;http://www.w3.org/2000/09/xmldsig#&quot; xmlns:dsp=&quot;http://schemas.microsoft.com/sharepoint/dsp&quot; xmlns:udc=&quot;http://schemas.microsoft.com/data/udc&quot; xmlns:xsd=&quot;http://www.w3.org/2001/XMLSchema&quot; xmlns:sub=&quot;http://schemas.microsoft.com/sharepoint/soap/2002/1/alerts/&quot; xmlns:ec=&quot;http://www.w3.org/2001/04/xmlenc#&quot; xmlns:sp=&quot;http://schemas.microsoft.com/sharepoint/&quot; xmlns:sps=&quot;http://schemas.microsoft.com/sharepoint/soap/&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xmlns:udcs=&quot;http://schemas.microsoft.com/data/udc/soap&quot; xmlns:udcxf=&quot;http://schemas.microsoft.com/data/udc/xmlfile&quot; xmlns:udcp2p=&quot;http://schemas.microsoft.com/data/udc/parttopart&quot; xmlns:wf=&quot;http://schemas.microsoft.com/sharepoint/soap/workflow/&quot; xmlns:dsss=&quot;http://schemas.microsoft.com/office/2006/digsig-setup&quot; xmlns:dssi=&quot;http://schemas.microsoft.com/office/2006/digsig&quot; xmlns:mdssi=&quot;http://schemas.openxmlformats.org/package/2006/digital-signature&quot; xmlns:mver=&quot;http://schemas.openxmlformats.org/markup-compatibility/2006&quot; xmlns:m=&quot;http://schemas.microsoft.com/office/2004/12/omml&quot; xmlns:mrels=&quot;http://schemas.openxmlformats.org/package/2006/relationships&quot; xmlns:spwp=&quot;http://microsoft.com/sharepoint/webpartpages&quot; xmlns:ex12t=&quot;http://schemas.microsoft.com/exchange/services/2006/types&quot; xmlns:ex12m=&quot;http://schemas.microsoft.com/exchange/services/2006/messages&quot; xmlns:pptsl=&quot;http://schemas.microsoft.com/sharepoint/soap/SlideLibrary/&quot; xmlns:spsl=&quot;http://microsoft.com/webservices/SharePointPortalServer/PublishedLinksService&quot; xmlns:st=&quot;&amp;#1;&quot; xmlns=&quot;http://www.w3.org/TR/REC-html40&quot;&gt;

&lt;head&gt;

&lt;meta name=Generator content=&quot;Microsoft Word 12 (filtered medium)&quot;&gt;

&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:shapedefaults v:ext=&quot;edit&quot; spidmax=&quot;1026&quot; /&gt;
&lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:shapelayout v:ext=&quot;edit&quot;&gt;
  &lt;o:idmap v:ext=&quot;edit&quot; data=&quot;1&quot; /&gt;
 &lt;/o:shapelayout&gt;&lt;/xml&gt;&lt;![endif]--&gt;
&lt;/head&gt;

&lt;body lang=FR link=blue vlink=purple&gt;

&lt;div class=Section1&gt;

&lt;p class=MsoNormal&gt;&lt;span style='color:#1F497D'&gt;Hello, &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span lang=EN-US style='color:#1F497D'&gt;My question is about:
https://jaxb2-commons.dev.java.net/&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span lang=EN-US style='color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span lang=EN-US style='color:#1F497D'&gt;It is not very clear
for me... But who is developing &amp;quot;JAXB2-Commons&amp;quot;? Is it Sun?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span lang=EN-US style='color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span lang=EN-US style='color:#1F497D'&gt;Another question is:
what is the license of &amp;quot;JAXB2-Commons&amp;quot;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span lang=EN-US style='color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span lang=EN-US style='color:#1F497D'&gt;Regards,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span lang=EN-US style='color:#1F497D'&gt;Anthony MÜLLER&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span lang=EN-US style='color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;div&gt;

&lt;div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'&gt;

&lt;p class=MsoNormal&gt;&lt;b&gt;&lt;span lang=EN-US style='font-size:10.0pt;font-family:
&quot;Tahoma&quot;,&quot;sans-serif&quot;'&gt;From:&lt;/span&gt;&lt;/b&gt;&lt;span lang=EN-US style='font-size:10.0pt;
font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;'&gt; Muller, Anthony &lt;br&gt;
&lt;b&gt;Sent:&lt;/b&gt; jeudi 17 décembre 2009 14:56&lt;br&gt;
&lt;b&gt;To:&lt;/b&gt; '&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26828473&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users@...&lt;/a&gt;'&lt;br&gt;
&lt;b&gt;Subject:&lt;/b&gt; subscribe&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/body&gt;

&lt;/html&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Provider-and-Licence-question-tp26828473p26828473.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26828536</id>
	<title>Provider and Licence question</title>
	<published>2009-12-17T06:02:00Z</published>
	<updated>2009-12-17T06:02:00Z</updated>
	<author>
		<name>Muller, Anthony</name>
	</author>
	<content type="html">&lt;META HTTP-EQUIV=&quot;Content-Type&quot; CONTENT=&quot;text/html; charset=iso-8859-1&quot;&gt;
&lt;html xmlns:v=&quot;urn:schemas-microsoft-com:vml&quot; xmlns:o=&quot;urn:schemas-microsoft-com:office:office&quot; xmlns:w=&quot;urn:schemas-microsoft-com:office:word&quot; xmlns:x=&quot;urn:schemas-microsoft-com:office:excel&quot; xmlns:p=&quot;urn:schemas-microsoft-com:office:powerpoint&quot; xmlns:a=&quot;urn:schemas-microsoft-com:office:access&quot; xmlns:dt=&quot;uuid:C2F41010-65B3-11d1-A29F-00AA00C14882&quot; xmlns:s=&quot;uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882&quot; xmlns:rs=&quot;urn:schemas-microsoft-com:rowset&quot; xmlns:Z=&quot;urn:schemas-microsoft-com:&quot; xmlns:b=&quot;urn:schemas-microsoft-com:office:publisher&quot; xmlns:ss=&quot;urn:schemas-microsoft-com:office:spreadsheet&quot; xmlns:c=&quot;urn:schemas-microsoft-com:office:component:spreadsheet&quot; xmlns:odc=&quot;urn:schemas-microsoft-com:office:odc&quot; xmlns:oa=&quot;urn:schemas-microsoft-com:office:activation&quot; xmlns:html=&quot;http://www.w3.org/TR/REC-html40&quot; xmlns:q=&quot;http://schemas.xmlsoap.org/soap/envelope/&quot; xmlns:rtc=&quot;http://microsoft.com/officenet/conferencing&quot; xmlns:D=&quot;DAV:&quot; xmlns:Repl=&quot;http://schemas.microsoft.com/repl/&quot; xmlns:mt=&quot;http://schemas.microsoft.com/sharepoint/soap/meetings/&quot; xmlns:x2=&quot;http://schemas.microsoft.com/office/excel/2003/xml&quot; xmlns:ppda=&quot;http://www.passport.com/NameSpace.xsd&quot; xmlns:ois=&quot;http://schemas.microsoft.com/sharepoint/soap/ois/&quot; xmlns:dir=&quot;http://schemas.microsoft.com/sharepoint/soap/directory/&quot; xmlns:ds=&quot;http://www.w3.org/2000/09/xmldsig#&quot; xmlns:dsp=&quot;http://schemas.microsoft.com/sharepoint/dsp&quot; xmlns:udc=&quot;http://schemas.microsoft.com/data/udc&quot; xmlns:xsd=&quot;http://www.w3.org/2001/XMLSchema&quot; xmlns:sub=&quot;http://schemas.microsoft.com/sharepoint/soap/2002/1/alerts/&quot; xmlns:ec=&quot;http://www.w3.org/2001/04/xmlenc#&quot; xmlns:sp=&quot;http://schemas.microsoft.com/sharepoint/&quot; xmlns:sps=&quot;http://schemas.microsoft.com/sharepoint/soap/&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xmlns:udcs=&quot;http://schemas.microsoft.com/data/udc/soap&quot; xmlns:udcxf=&quot;http://schemas.microsoft.com/data/udc/xmlfile&quot; xmlns:udcp2p=&quot;http://schemas.microsoft.com/data/udc/parttopart&quot; xmlns:wf=&quot;http://schemas.microsoft.com/sharepoint/soap/workflow/&quot; xmlns:dsss=&quot;http://schemas.microsoft.com/office/2006/digsig-setup&quot; xmlns:dssi=&quot;http://schemas.microsoft.com/office/2006/digsig&quot; xmlns:mdssi=&quot;http://schemas.openxmlformats.org/package/2006/digital-signature&quot; xmlns:mver=&quot;http://schemas.openxmlformats.org/markup-compatibility/2006&quot; xmlns:m=&quot;http://schemas.microsoft.com/office/2004/12/omml&quot; xmlns:mrels=&quot;http://schemas.openxmlformats.org/package/2006/relationships&quot; xmlns:spwp=&quot;http://microsoft.com/sharepoint/webpartpages&quot; xmlns:ex12t=&quot;http://schemas.microsoft.com/exchange/services/2006/types&quot; xmlns:ex12m=&quot;http://schemas.microsoft.com/exchange/services/2006/messages&quot; xmlns:pptsl=&quot;http://schemas.microsoft.com/sharepoint/soap/SlideLibrary/&quot; xmlns:spsl=&quot;http://microsoft.com/webservices/SharePointPortalServer/PublishedLinksService&quot; xmlns:st=&quot;&amp;#1;&quot; xmlns=&quot;http://www.w3.org/TR/REC-html40&quot;&gt;

&lt;head&gt;

&lt;meta name=Generator content=&quot;Microsoft Word 12 (filtered medium)&quot;&gt;

&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:shapedefaults v:ext=&quot;edit&quot; spidmax=&quot;1026&quot; /&gt;
&lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:shapelayout v:ext=&quot;edit&quot;&gt;
  &lt;o:idmap v:ext=&quot;edit&quot; data=&quot;1&quot; /&gt;
 &lt;/o:shapelayout&gt;&lt;/xml&gt;&lt;![endif]--&gt;
&lt;/head&gt;

&lt;body lang=FR link=blue vlink=purple&gt;

&lt;div class=Section1&gt;

&lt;p class=MsoNormal&gt;&lt;span style='color:#1F497D'&gt;Hello, &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span lang=EN-US style='color:#1F497D'&gt;My question is about:
https://jaxb2-commons.dev.java.net/&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span lang=EN-US style='color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span lang=EN-US style='color:#1F497D'&gt;It is not very clear
for me... But who is developing &amp;quot;JAXB2-Commons&amp;quot;? Is it Sun?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span lang=EN-US style='color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span lang=EN-US style='color:#1F497D'&gt;Another question is:
what is the license of &amp;quot;JAXB2-Commons&amp;quot;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span lang=EN-US style='color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span lang=EN-US style='color:#1F497D'&gt;Regards,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span lang=EN-US style='color:#1F497D'&gt;Anthony MÜLLER&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span lang=EN-US style='color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;div&gt;

&lt;div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'&gt;

&lt;p class=MsoNormal&gt;&lt;b&gt;&lt;span lang=EN-US style='font-size:10.0pt;font-family:
&quot;Tahoma&quot;,&quot;sans-serif&quot;'&gt;From:&lt;/span&gt;&lt;/b&gt;&lt;span lang=EN-US style='font-size:10.0pt;
font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;'&gt; Muller, Anthony &lt;br&gt;
&lt;b&gt;Sent:&lt;/b&gt; jeudi 17 décembre 2009 14:56&lt;br&gt;
&lt;b&gt;To:&lt;/b&gt; '&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26828536&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users@...&lt;/a&gt;'&lt;br&gt;
&lt;b&gt;Subject:&lt;/b&gt; subscribe&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/body&gt;

&lt;/html&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Provider-and-Licence-question-tp26828536p26828536.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26818877</id>
	<title>Re: JAXB Commons Lang Plugin 2.2 is released</title>
	<published>2009-12-16T13:35:52Z</published>
	<updated>2009-12-16T13:35:52Z</updated>
	<author>
		<name>Hanson Char</name>
	</author>
	<content type="html">For now I&amp;#39;ve just changed it from 2.2 to 2.1.8.  You can try re-downloading it from the usual place.&lt;br&gt;&lt;br&gt;&lt;div class=&quot;gmail_quote&quot;&gt;On Wed, Dec 16, 2009 at 9:16 AM,  &lt;span dir=&quot;ltr&quot;&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26818877&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;david@...&lt;/a&gt;&amp;gt;&lt;/span&gt; wrote:&lt;br&gt;
&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;&quot;&gt;&lt;div class=&quot;im&quot;&gt;On Mon, 14 Dec 2009, Hanson Char wrote:&lt;br&gt;
&lt;br&gt;
&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;&quot;&gt;
&lt;a href=&quot;https://jaxb2-commons.dev.java.net/commons-lang-plugin/index.html#Enhance091213&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;https://jaxb2-commons.dev.java.net/commons-lang-plugin/index.html#Enhance091213&lt;/a&gt;&lt;br&gt;
&lt;/blockquote&gt;&lt;/div&gt;
It depends on this artifact which I cannot find:&lt;br&gt;
&amp;lt;dependency&amp;gt;&lt;br&gt;
  &amp;lt;groupId&amp;gt;com.sun.xml&amp;lt;/groupId&amp;gt;&lt;br&gt;
  &amp;lt;artifactId&amp;gt;jaxb-xjc&amp;lt;/artifactId&amp;gt;&lt;br&gt;
  &amp;lt;version&amp;gt;2.2&amp;lt;/version&amp;gt;&lt;br&gt;
  &amp;lt;/dependency&amp;gt;&lt;br&gt;
&lt;br&gt;
Can they both get uploaded to central?&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
--&lt;br&gt;
David J. M. Karlsen - +47 90 68 22 43&lt;br&gt;
&lt;a href=&quot;http://www.davidkarlsen.com&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;http://www.davidkarlsen.com&lt;/a&gt;&lt;br&gt;
&lt;a href=&quot;http://mp3.davidkarlsen.com&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;http://mp3.davidkarlsen.com&lt;/a&gt;&lt;br&gt;
Sent from my bog-standard SMTP client&lt;br&gt;
&lt;br&gt;
---------------------------------------------------------------------&lt;br&gt;
To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26818877&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-unsubscribe@...&lt;/a&gt;&lt;br&gt;
For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26818877&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-help@...&lt;/a&gt;&lt;br&gt;
&lt;br&gt;
&lt;/blockquote&gt;&lt;/div&gt;&lt;br&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/JAXB-Commons-Lang-Plugin-2.2-is-released-tp26782167p26818877.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26818835</id>
	<title>Re: JAXB Commons Lang Plugin 2.2 is released</title>
	<published>2009-12-16T13:32:32Z</published>
	<updated>2009-12-16T13:32:32Z</updated>
	<author>
		<name>Pavel Bucek</name>
	</author>
	<content type="html">damn, stupid c&amp;p error, sorry.
&lt;br&gt;&lt;br&gt;I meant
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;lt;repositories&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;repository&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;id&amp;gt;maven2-repository.dev.java.net&amp;lt;/id&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;name&amp;gt;Java.net Repository for Maven&amp;lt;/name&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;url&amp;gt;&lt;a href=&quot;http://download.java.net/maven/2/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://download.java.net/maven/2/&lt;/a&gt;&amp;lt;/url&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;layout&amp;gt;default&amp;lt;/layout&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/repository&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp;&amp;lt;/repositories&amp;gt;
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Pavel Bucek wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Yes, they will be but its not possible right now, because we 
&lt;br&gt;&amp;gt; discovered that somebody published jaxb-api-2.2 two years ago (!) so 
&lt;br&gt;&amp;gt; this has to be removed/replaced before pushing jaxb-impl-2.2, 
&lt;br&gt;&amp;gt; jaxb-xjc-2.2 and jaxb1-impl-2.2
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Please do not publish to maven central without our approval.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Thanks,
&lt;br&gt;&amp;gt; Pavel
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ps.: in the meantime, add this to your pom file:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;repositories&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;repository&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;id&amp;gt;java.net2&amp;lt;/id&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;name&amp;gt;java net maven 2 repository&amp;lt;/name&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;url&amp;gt;&lt;a href=&quot;http://maven.glassfish.org/content/groups/glassfish&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://maven.glassfish.org/content/groups/glassfish&lt;/a&gt;&amp;lt;/url&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;/repository&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;/repositories&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; and it should work.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26818835&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;david@...&lt;/a&gt; wrote:
&lt;br&gt;&amp;gt;&amp;gt; On Mon, 14 Dec 2009, Hanson Char wrote:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&quot;https://jaxb2-commons.dev.java.net/commons-lang-plugin/index.html#Enhance091213&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://jaxb2-commons.dev.java.net/commons-lang-plugin/index.html#Enhance091213&lt;/a&gt;&amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; It depends on this artifact which I cannot find:
&lt;br&gt;&amp;gt;&amp;gt; &amp;lt;dependency&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;lt;groupId&amp;gt;com.sun.xml&amp;lt;/groupId&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;lt;artifactId&amp;gt;jaxb-xjc&amp;lt;/artifactId&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;lt;version&amp;gt;2.2&amp;lt;/version&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;lt;/dependency&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Can they both get uploaded to central?
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; -- 
&lt;br&gt;&amp;gt;&amp;gt; David J. M. Karlsen - +47 90 68 22 43
&lt;br&gt;&amp;gt;&amp;gt; &lt;a href=&quot;http://www.davidkarlsen.com&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.davidkarlsen.com&lt;/a&gt;&lt;br&gt;&amp;gt;&amp;gt; &lt;a href=&quot;http://mp3.davidkarlsen.com&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mp3.davidkarlsen.com&lt;/a&gt;&lt;br&gt;&amp;gt;&amp;gt; Sent from my bog-standard SMTP client
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; ---------------------------------------------------------------------
&lt;br&gt;&amp;gt;&amp;gt; To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26818835&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-unsubscribe@...&lt;/a&gt;
&lt;br&gt;&amp;gt;&amp;gt; For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26818835&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-help@...&lt;/a&gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ---------------------------------------------------------------------
&lt;br&gt;&amp;gt; To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26818835&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-unsubscribe@...&lt;/a&gt;
&lt;br&gt;&amp;gt; For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26818835&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-help@...&lt;/a&gt;
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26818835&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26818835&amp;i=6&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/JAXB-Commons-Lang-Plugin-2.2-is-released-tp26782167p26818835.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26818536</id>
	<title>Re: JAXB Commons Lang Plugin 2.2 is released</title>
	<published>2009-12-16T13:10:49Z</published>
	<updated>2009-12-16T13:10:49Z</updated>
	<author>
		<name>Pavel Bucek</name>
	</author>
	<content type="html">Yes, they will be but its not possible right now, because we discovered 
&lt;br&gt;that somebody published jaxb-api-2.2 two years ago (!) so this has to be 
&lt;br&gt;removed/replaced before pushing jaxb-impl-2.2, jaxb-xjc-2.2 and 
&lt;br&gt;jaxb1-impl-2.2
&lt;br&gt;&lt;br&gt;Please do not publish to maven central without our approval.
&lt;br&gt;&lt;br&gt;Thanks,
&lt;br&gt;Pavel
&lt;br&gt;&lt;br&gt;ps.: in the meantime, add this to your pom file:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;lt;repositories&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;repository&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;id&amp;gt;java.net2&amp;lt;/id&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;name&amp;gt;java net maven 2 repository&amp;lt;/name&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;url&amp;gt;&lt;a href=&quot;http://maven.glassfish.org/content/groups/glassfish&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://maven.glassfish.org/content/groups/glassfish&lt;/a&gt;&amp;lt;/url&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/repository&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;lt;/repositories&amp;gt;
&lt;br&gt;&lt;br&gt;and it should work.
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26818536&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;david@...&lt;/a&gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; On Mon, 14 Dec 2009, Hanson Char wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &lt;a href=&quot;https://jaxb2-commons.dev.java.net/commons-lang-plugin/index.html#Enhance091213&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://jaxb2-commons.dev.java.net/commons-lang-plugin/index.html#Enhance091213&lt;/a&gt;&amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt; It depends on this artifact which I cannot find:
&lt;br&gt;&amp;gt; &amp;lt;dependency&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;lt;groupId&amp;gt;com.sun.xml&amp;lt;/groupId&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;lt;artifactId&amp;gt;jaxb-xjc&amp;lt;/artifactId&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;lt;version&amp;gt;2.2&amp;lt;/version&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;lt;/dependency&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Can they both get uploaded to central?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; -- 
&lt;br&gt;&amp;gt; David J. M. Karlsen - +47 90 68 22 43
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://www.davidkarlsen.com&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.davidkarlsen.com&lt;/a&gt;&lt;br&gt;&amp;gt; &lt;a href=&quot;http://mp3.davidkarlsen.com&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mp3.davidkarlsen.com&lt;/a&gt;&lt;br&gt;&amp;gt; Sent from my bog-standard SMTP client
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ---------------------------------------------------------------------
&lt;br&gt;&amp;gt; To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26818536&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-unsubscribe@...&lt;/a&gt;
&lt;br&gt;&amp;gt; For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26818536&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-help@...&lt;/a&gt;
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26818536&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26818536&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/JAXB-Commons-Lang-Plugin-2.2-is-released-tp26782167p26818536.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26814873</id>
	<title>Re: JAXB Commons Lang Plugin 2.2 is released</title>
	<published>2009-12-16T09:16:09Z</published>
	<updated>2009-12-16T09:16:09Z</updated>
	<author>
		<name>davidkarlsen</name>
	</author>
	<content type="html">On Mon, 14 Dec 2009, Hanson Char wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; &lt;a href=&quot;https://jaxb2-commons.dev.java.net/commons-lang-plugin/index.html#Enhance091213&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://jaxb2-commons.dev.java.net/commons-lang-plugin/index.html#Enhance091213&lt;/a&gt;&lt;br&gt;It depends on this artifact which I cannot find:
&lt;br&gt;&amp;lt;dependency&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp;&amp;lt;groupId&amp;gt;com.sun.xml&amp;lt;/groupId&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp;&amp;lt;artifactId&amp;gt;jaxb-xjc&amp;lt;/artifactId&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp;&amp;lt;version&amp;gt;2.2&amp;lt;/version&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp;&amp;lt;/dependency&amp;gt;
&lt;br&gt;&lt;br&gt;Can they both get uploaded to central?
&lt;br&gt;&lt;br&gt;&lt;br&gt;--
&lt;br&gt;David J. M. Karlsen - +47 90 68 22 43
&lt;br&gt;&lt;a href=&quot;http://www.davidkarlsen.com&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.davidkarlsen.com&lt;/a&gt;&lt;br&gt;&lt;a href=&quot;http://mp3.davidkarlsen.com&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mp3.davidkarlsen.com&lt;/a&gt;&lt;br&gt;Sent from my bog-standard SMTP client
&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26814873&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26814873&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;div class=&quot;signature&quot;&gt;&lt;a href=&quot;http://www.davidkarlsen.com&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.davidkarlsen.com&lt;/a&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/JAXB-Commons-Lang-Plugin-2.2-is-released-tp26782167p26814873.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26801301</id>
	<title>RE: How to map Java enum to XML element (not #PCDATA) body?</title>
	<published>2009-12-15T12:33:02Z</published>
	<updated>2009-12-15T12:33:02Z</updated>
	<author>
		<name>Markus KARG-2</name>
	</author>
	<content type="html">&lt;html xmlns:v=&quot;urn:schemas-microsoft-com:vml&quot; xmlns:o=&quot;urn:schemas-microsoft-com:office:office&quot; xmlns:w=&quot;urn:schemas-microsoft-com:office:word&quot; xmlns:m=&quot;http://schemas.microsoft.com/office/2004/12/omml&quot; xmlns=&quot;http://www.w3.org/TR/REC-html40&quot;&gt;

&lt;head&gt;
&lt;META HTTP-EQUIV=&quot;Content-Type&quot; CONTENT=&quot;text/html; charset=us-ascii&quot;&gt;
&lt;meta name=Generator content=&quot;Microsoft Word 12 (filtered medium)&quot;&gt;

&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:shapedefaults v:ext=&quot;edit&quot; spidmax=&quot;1026&quot; /&gt;
&lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:shapelayout v:ext=&quot;edit&quot;&gt;
  &lt;o:idmap v:ext=&quot;edit&quot; data=&quot;1&quot; /&gt;
 &lt;/o:shapelayout&gt;&lt;/xml&gt;&lt;![endif]--&gt;
&lt;/head&gt;

&lt;body lang=DE link=blue vlink=purple&gt;

&lt;div class=Section1&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;Wolfgang,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;your proposed solution unfortunately does not work! :-(&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;You are assuming that I know locations of any code that is using
my enum. But this is not the case. I am writing a library that anybody can use.
The job of providing a singleton has to be done *inside* my library (i. e. JAXB
itself must know that an instance has to be replaced by another instance
*before* providing the reference to a using instance), not *outside* (not in
the caller's class). Otherwise each user would have to know about the singleton
problem and take care of it, what is very, very error prone.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;I need a solution that works *within* my library. Somethink like
an &amp;quot;Unmarshal Resolver&amp;quot;. I know I can register unmarshal listeners,
but how to tell in that's event handler that the outcome is a *different*
instance?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;Thanks!&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;Markus&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;div style='border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm 4.0pt'&gt;

&lt;div&gt;

&lt;div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'&gt;

&lt;p class=MsoNormal&gt;&lt;b&gt;&lt;span lang=EN-US style='font-size:10.0pt;font-family:
&quot;Tahoma&quot;,&quot;sans-serif&quot;'&gt;From:&lt;/span&gt;&lt;/b&gt;&lt;span lang=EN-US style='font-size:10.0pt;
font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;'&gt; Wolfgang Laun
[mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26801301&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;wolfgang.laun@...&lt;/a&gt;] &lt;br&gt;
&lt;b&gt;Sent:&lt;/b&gt; Dienstag, 15. Dezember 2009 20:15&lt;br&gt;
&lt;b&gt;To:&lt;/b&gt; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26801301&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users@...&lt;/a&gt;&lt;br&gt;
&lt;b&gt;Subject:&lt;/b&gt; Re: How to map Java enum to XML element (not #PCDATA) body?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='margin-bottom:12.0pt'&gt;What you want is a unique
instance of E for each of the unique settings of its fields v1, v2,... with a
unique instance of V1, V2,..., respectively.&lt;br&gt;
&lt;br&gt;
Since you are not compiling the Java classes from the XML schema, you could
write all setters of fields of type E so that&lt;br&gt;
&lt;br&gt;
public void setE( E e ){&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; this.e = E.getSingleton( e );&lt;br&gt;
}&lt;br&gt;
&lt;br&gt;
E.getSingleton() would have to determine which of e's fields v1, v2,... is not
null and return the corresponding E.V_1, E.V_2,...&lt;br&gt;
&lt;br&gt;
-W&lt;br&gt;
&lt;br&gt;
&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;div&gt;

&lt;p class=MsoNormal&gt;On Tue, Dec 15, 2009 at 5:58 PM, Markus Karg &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26801301&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;markus.karg@...&lt;/a&gt;&amp;gt; wrote:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;div&gt;

&lt;div&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;Using
@XmlEnumValue it is possible to map Java enums to XML elements, like in this
example&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlRootElement&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;enum&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E {&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;&amp;nbsp; &lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlEnumValue&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#2A00FF'&gt;&amp;quot;v1&amp;quot;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;,&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;&amp;nbsp; &lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlEnumValue&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#2A00FF'&gt;&amp;quot;v2&amp;quot;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;,&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;&amp;nbsp; &amp;#8230;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;}&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;&amp;nbsp;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;While
this is working fine in case of #PCDATA values, I now am experiencing the
problem that I need to map values that are not #PCDATA but in fact are XML
elements:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;For
example,&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;lt;e&amp;gt;&amp;lt;v1/&amp;gt;&amp;lt;/e&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;shall
result in the same Java enum instance than&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;lt;e&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;v1&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/v1&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;lt;/e&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;and
so on.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;That
means, I cannot write&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlEnumValue&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#2A00FF'&gt;&amp;quot;&amp;lt;v1/&amp;gt;&amp;quot;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;,&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlEnumValue&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#2A00FF'&gt;&amp;quot;&amp;lt;v2/&amp;gt;&amp;quot;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;,&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;in
Java, because that would not result in an instance of B when unmarshalling a
formatted XML file.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;Can
anybody tell me a solution working in JAXB 2.1 that will solve this problem?&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;I
started with a rather complex workaround like this one (derived from the
singleton pattern):&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlAccessorType&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;FIELD&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;)&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlRootElement&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E {&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E(&lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V1());&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E(&lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V2());&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V1 &lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v1&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V2 &lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v2&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E() { }&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E(V1 v1) { &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;this&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;.&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v1&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = v1; }&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E(V2 v2) { &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;this&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;.&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v2&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = v2; }&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;}&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlRootElement&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V1 {&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt; &lt;span style='color:black'&gt;}&lt;/span&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#646464'&gt;&amp;nbsp;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlRootElement&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V2 {&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt; &lt;span style='color:black'&gt;}&lt;/span&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;&amp;nbsp;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;This
perfectly unmarshalls any kind of formatting and whitespacing of
&amp;lt;e&amp;gt;&amp;lt;v1/&amp;gt;&amp;lt;/e&amp;gt; and I am really happy with it so far, BUT it
does not produce singletongs. Instead, I am getting another instance of E and
V1 each time. This is rather bad, since I now must use the equals operator to
compare them, while it would be certainly great to in fact have the same
instances to be able to compare references:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;if
(unmarshalledObject == E.V1)&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;So
my questions are:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;*
How can I get singletons, i. e. always the same instance of E.V1 and E.V2
instead of new copies for each reference?&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;*
Ain't there a simpler way to get enums with dynamically formatted and
whitespaced XML element bodies?&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;BTW,
since the XML schema is far out of my control, I am sorry, no, I cannot change
the fact that the body is not a #PCDATA but an XML element.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;Thanks
a lot!&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;Markus&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;/body&gt;

&lt;/html&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/How-to-map-Java-enum-to-XML-element-%28not--PCDATA%29-body--tp26798040p26801301.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26801084</id>
	<title>RE: How to map Java enum to XML element (not #PCDATA) body?</title>
	<published>2009-12-15T12:17:16Z</published>
	<updated>2009-12-15T12:17:16Z</updated>
	<author>
		<name>Markus KARG-2</name>
	</author>
	<content type="html">&lt;html xmlns:v=&quot;urn:schemas-microsoft-com:vml&quot; xmlns:o=&quot;urn:schemas-microsoft-com:office:office&quot; xmlns:w=&quot;urn:schemas-microsoft-com:office:word&quot; xmlns:m=&quot;http://schemas.microsoft.com/office/2004/12/omml&quot; xmlns=&quot;http://www.w3.org/TR/REC-html40&quot;&gt;

&lt;head&gt;
&lt;META HTTP-EQUIV=&quot;Content-Type&quot; CONTENT=&quot;text/html; charset=us-ascii&quot;&gt;
&lt;meta name=Generator content=&quot;Microsoft Word 12 (filtered medium)&quot;&gt;

&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:shapedefaults v:ext=&quot;edit&quot; spidmax=&quot;1026&quot; /&gt;
&lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:shapelayout v:ext=&quot;edit&quot;&gt;
  &lt;o:idmap v:ext=&quot;edit&quot; data=&quot;1&quot; /&gt;
 &lt;/o:shapelayout&gt;&lt;/xml&gt;&lt;![endif]--&gt;
&lt;/head&gt;

&lt;body lang=DE link=blue vlink=purple&gt;

&lt;div class=Section1&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;Wolfgang, thank you. The solution is so pretty obvious that I
wonder why I actually asked the question. ;-)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;Thanks a lot!&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;Markus&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
color:#1F497D'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;div style='border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm 4.0pt'&gt;

&lt;div&gt;

&lt;div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'&gt;

&lt;p class=MsoNormal&gt;&lt;b&gt;&lt;span lang=EN-US style='font-size:10.0pt;font-family:
&quot;Tahoma&quot;,&quot;sans-serif&quot;'&gt;From:&lt;/span&gt;&lt;/b&gt;&lt;span lang=EN-US style='font-size:10.0pt;
font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;'&gt; Wolfgang Laun
[mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26801084&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;wolfgang.laun@...&lt;/a&gt;] &lt;br&gt;
&lt;b&gt;Sent:&lt;/b&gt; Dienstag, 15. Dezember 2009 20:15&lt;br&gt;
&lt;b&gt;To:&lt;/b&gt; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26801084&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users@...&lt;/a&gt;&lt;br&gt;
&lt;b&gt;Subject:&lt;/b&gt; Re: How to map Java enum to XML element (not #PCDATA) body?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='margin-bottom:12.0pt'&gt;What you want is a unique
instance of E for each of the unique settings of its fields v1, v2,... with a
unique instance of V1, V2,..., respectively.&lt;br&gt;
&lt;br&gt;
Since you are not compiling the Java classes from the XML schema, you could
write all setters of fields of type E so that&lt;br&gt;
&lt;br&gt;
public void setE( E e ){&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; this.e = E.getSingleton( e );&lt;br&gt;
}&lt;br&gt;
&lt;br&gt;
E.getSingleton() would have to determine which of e's fields v1, v2,... is not
null and return the corresponding E.V_1, E.V_2,...&lt;br&gt;
&lt;br&gt;
-W&lt;br&gt;
&lt;br&gt;
&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;div&gt;

&lt;p class=MsoNormal&gt;On Tue, Dec 15, 2009 at 5:58 PM, Markus Karg &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26801084&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;markus.karg@...&lt;/a&gt;&amp;gt; wrote:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;div&gt;

&lt;div&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;Using
@XmlEnumValue it is possible to map Java enums to XML elements, like in this
example&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlRootElement&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;enum&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E {&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;&amp;nbsp; &lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlEnumValue&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#2A00FF'&gt;&amp;quot;v1&amp;quot;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;,&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;&amp;nbsp; &lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlEnumValue&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#2A00FF'&gt;&amp;quot;v2&amp;quot;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;,&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;&amp;nbsp; &amp;#8230;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;}&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;&amp;nbsp;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;While
this is working fine in case of #PCDATA values, I now am experiencing the
problem that I need to map values that are not #PCDATA but in fact are XML
elements:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;For
example,&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;lt;e&amp;gt;&amp;lt;v1/&amp;gt;&amp;lt;/e&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;shall
result in the same Java enum instance than&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;lt;e&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;v1&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/v1&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;lt;/e&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;and
so on.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;That
means, I cannot write&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlEnumValue&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#2A00FF'&gt;&amp;quot;&amp;lt;v1/&amp;gt;&amp;quot;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;,&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlEnumValue&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#2A00FF'&gt;&amp;quot;&amp;lt;v2/&amp;gt;&amp;quot;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;,&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;in
Java, because that would not result in an instance of B when unmarshalling a
formatted XML file.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;Can
anybody tell me a solution working in JAXB 2.1 that will solve this problem?&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;I
started with a rather complex workaround like this one (derived from the
singleton pattern):&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlAccessorType&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;FIELD&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;)&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlRootElement&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E {&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E(&lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V1());&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E(&lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V2());&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V1 &lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v1&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V2 &lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v2&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E() { }&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E(V1 v1) { &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;this&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;.&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v1&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = v1; }&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E(V2 v2) { &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;this&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;.&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v2&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = v2; }&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;}&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlRootElement&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V1 {&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt; &lt;span style='color:black'&gt;}&lt;/span&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#646464'&gt;&amp;nbsp;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlRootElement&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V2 {&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt; &lt;span style='color:black'&gt;}&lt;/span&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;&amp;nbsp;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;This
perfectly unmarshalls any kind of formatting and whitespacing of
&amp;lt;e&amp;gt;&amp;lt;v1/&amp;gt;&amp;lt;/e&amp;gt; and I am really happy with it so far, BUT it
does not produce singletongs. Instead, I am getting another instance of E and
V1 each time. This is rather bad, since I now must use the equals operator to
compare them, while it would be certainly great to in fact have the same
instances to be able to compare references:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;if
(unmarshalledObject == E.V1)&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;So
my questions are:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;*
How can I get singletons, i. e. always the same instance of E.V1 and E.V2
instead of new copies for each reference?&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;*
Ain't there a simpler way to get enums with dynamically formatted and
whitespaced XML element bodies?&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;BTW,
since the XML schema is far out of my control, I am sorry, no, I cannot change
the fact that the body is not a #PCDATA but an XML element.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;Thanks
a lot!&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'&gt;Markus&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;

&lt;/body&gt;

&lt;/html&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/How-to-map-Java-enum-to-XML-element-%28not--PCDATA%29-body--tp26798040p26801084.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26800131</id>
	<title>Re: How to map Java enum to XML element (not #PCDATA) body?</title>
	<published>2009-12-15T11:15:13Z</published>
	<updated>2009-12-15T11:15:13Z</updated>
	<author>
		<name>Wolfgang Laun-2</name>
	</author>
	<content type="html">What you want is a unique instance of E for each of the unique settings of its fields v1, v2,... with a unique instance of V1, V2,..., respectively.&lt;br&gt;&lt;br&gt;Since you are not compiling the Java classes from the XML schema, you could write all setters of fields of type E so that&lt;br&gt;
&lt;br&gt;public void setE( E e ){&lt;br&gt;    this.e = E.getSingleton( e );&lt;br&gt;}&lt;br&gt;&lt;br&gt;E.getSingleton() would have to determine which of e&amp;#39;s fields v1, v2,... is not null and return the corresponding E.V_1, E.V_2,...&lt;br&gt;&lt;br&gt;-W&lt;br&gt;
&lt;br&gt;&lt;br&gt;&lt;div class=&quot;gmail_quote&quot;&gt;On Tue, Dec 15, 2009 at 5:58 PM, Markus Karg &lt;span dir=&quot;ltr&quot;&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26800131&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;markus.karg@...&lt;/a&gt;&amp;gt;&lt;/span&gt; wrote:&lt;br&gt;&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;&quot;&gt;









&lt;div link=&quot;blue&quot; vlink=&quot;purple&quot; lang=&quot;DE&quot;&gt;

&lt;div&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;Using @XmlEnumValue it is possible to map Java enums to XML
elements, like in this example&amp;gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlRootElement&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;enum&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E {&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;  &lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlEnumValue&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(42, 0, 255);&quot;&gt;&amp;quot;v1&amp;quot;&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;,&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;  &lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlEnumValue&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(42, 0, 255);&quot;&gt;&amp;quot;v2&amp;quot;&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;,&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;  …&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;}&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;While this is working fine in case of #PCDATA values, I now
am experiencing the problem that I need to map values that are not #PCDATA but
in fact are XML elements:&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;For example,&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&amp;lt;e&amp;gt;&amp;lt;v1/&amp;gt;&amp;lt;/e&amp;gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;shall result in the same Java enum instance than&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&amp;lt;e&amp;gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;   
&amp;lt;v1&amp;gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;   
&amp;lt;/v1&amp;gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&amp;lt;/e&amp;gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;and so on.&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;That means, I cannot write&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlEnumValue&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(42, 0, 255);&quot;&gt;&amp;quot;&amp;lt;v1/&amp;gt;&amp;quot;&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlEnumValue&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(42, 0, 255);&quot;&gt;&amp;quot;&amp;lt;v2/&amp;gt;&amp;quot;&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;in Java, because that would not result in an instance of B
when unmarshalling a formatted XML file.&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;Can anybody tell me a solution working in JAXB 2.1 that will
solve this problem?&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;I started with a rather complex workaround like this one
(derived from the singleton pattern):&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlAccessorType&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;(&lt;/span&gt;&lt;i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;FIELD&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlRootElement&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E {&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;  public&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E &lt;/span&gt;&lt;i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; = &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E(&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; V1());&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;  public&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E &lt;/span&gt;&lt;i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; = &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E(&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; V2());&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;  private&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; V1 &lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;v1&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;;&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;  private&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; V2 &lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;v2&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;;&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;  private&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E() { }&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;  private&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E(V1 v1) { &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;this&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;v1&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; = v1; }&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;  private&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; E(V2 v2) { &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;this&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);&quot;&gt;v2&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; = v2; }&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt;}&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlRootElement&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; V1 {&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt; &lt;span style=&quot;color: black;&quot;&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot; style=&quot;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(100, 100, 100);&quot;&gt;@XmlRootElement&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);&quot;&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; V2 {&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt; &lt;span style=&quot;color: black;&quot;&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;


&lt;p class=&quot;MsoNormal&quot; style=&quot;&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;&quot;&gt; &lt;/span&gt;&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;This perfectly unmarshalls any kind of formatting and
whitespacing of &amp;lt;e&amp;gt;&amp;lt;v1/&amp;gt;&amp;lt;/e&amp;gt; and I am really happy with it so
far, BUT it does not produce singletongs. Instead, I am getting another
instance of E and V1 each time. This is rather bad, since I now must use the
equals operator to compare them, while it would be certainly great to in fact
have the same instances to be able to compare references:&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;if (unmarshalledObject == E.V1)&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;So my questions are:&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;* How can I get singletons, i. e. always the same instance
of E.V1 and E.V2 instead of new copies for each reference?&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;* Ain&amp;#39;t there a simpler way to get enums with dynamically
formatted and whitespaced XML element bodies?&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;BTW, since the XML schema is far out of my control, I am
sorry, no, I cannot change the fact that the body is not a #PCDATA but an XML
element.&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt; &lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;Thanks a lot!&lt;/p&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;Markus&lt;/p&gt;

&lt;/div&gt;

&lt;/div&gt;


&lt;/blockquote&gt;&lt;/div&gt;&lt;br&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/How-to-map-Java-enum-to-XML-element-%28not--PCDATA%29-body--tp26798040p26800131.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26798040</id>
	<title>How to map Java enum to XML element (not #PCDATA) body?</title>
	<published>2009-12-15T08:58:28Z</published>
	<updated>2009-12-15T08:58:28Z</updated>
	<author>
		<name>Markus KARG-2</name>
	</author>
	<content type="html">&lt;html xmlns:v=&quot;urn:schemas-microsoft-com:vml&quot; xmlns:o=&quot;urn:schemas-microsoft-com:office:office&quot; xmlns:w=&quot;urn:schemas-microsoft-com:office:word&quot; xmlns:m=&quot;http://schemas.microsoft.com/office/2004/12/omml&quot; xmlns=&quot;http://www.w3.org/TR/REC-html40&quot;&gt;

&lt;head&gt;
&lt;meta http-equiv=Content-Type content=&quot;text/html; charset=us-ascii&quot;&gt;
&lt;meta name=Generator content=&quot;Microsoft Word 12 (filtered medium)&quot;&gt;

&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:shapedefaults v:ext=&quot;edit&quot; spidmax=&quot;1026&quot; /&gt;
&lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:shapelayout v:ext=&quot;edit&quot;&gt;
  &lt;o:idmap v:ext=&quot;edit&quot; data=&quot;1&quot; /&gt;
 &lt;/o:shapelayout&gt;&lt;/xml&gt;&lt;![endif]--&gt;
&lt;/head&gt;

&lt;body lang=DE link=blue vlink=purple&gt;

&lt;div class=Section1&gt;

&lt;p class=MsoNormal&gt;Using @XmlEnumValue it is possible to map Java enums to XML
elements, like in this example&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlRootElement&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;enum&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E {&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;&amp;nbsp; &lt;/span&gt;&lt;span style='font-size:
10.0pt;font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlEnumValue&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#2A00FF'&gt;&amp;quot;v1&amp;quot;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;&amp;nbsp; &lt;/span&gt;&lt;span style='font-size:
10.0pt;font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlEnumValue&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#2A00FF'&gt;&amp;quot;v2&amp;quot;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;&amp;nbsp; &amp;#8230;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;
color:black'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;While this is working fine in case of #PCDATA values, I now
am experiencing the problem that I need to map values that are not #PCDATA but
in fact are XML elements:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;For example,&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;lt;e&amp;gt;&amp;lt;v1/&amp;gt;&amp;lt;/e&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;shall result in the same Java enum instance than&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;lt;e&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;lt;v1&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;lt;/v1&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-family:&quot;Courier New&quot;'&gt;&amp;lt;/e&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;and so on.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;That means, I cannot write&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlEnumValue&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#2A00FF'&gt;&amp;quot;&amp;lt;v1/&amp;gt;&amp;quot;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;,&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlEnumValue&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#2A00FF'&gt;&amp;quot;&amp;lt;v2/&amp;gt;&amp;quot;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;) &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;,&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;in Java, because that would not result in an instance of B
when unmarshalling a formatted XML file.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;Can anybody tell me a solution working in JAXB 2.1 that will
solve this problem?&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;I started with a rather complex workaround like this one
(derived from the singleton pattern):&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlAccessorType&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;(&lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;FIELD&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;)&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlRootElement&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E {&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_1&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E(&lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V1());&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E &lt;/span&gt;&lt;i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;V_2&lt;/span&gt;&lt;/i&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E(&lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V2());&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V1 &lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v1&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V2 &lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v2&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;;&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E() { }&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E(V1 v1) { &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;this&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;.&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v1&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = v1; }&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;&amp;nbsp; private&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; E(V2 v2) { &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;this&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt;.&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#0000C0'&gt;v2&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; = v2; }&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;}&lt;/span&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlRootElement&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V1 {&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt; &lt;span style='color:black'&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#646464'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#646464'&gt;@XmlRootElement&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:#7F0055'&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;final&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; &lt;/span&gt;&lt;b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:#7F0055'&gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;;color:black'&gt; V2 {&lt;/span&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Courier New&quot;'&gt; &lt;span style='color:black'&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;span style='font-size:10.0pt;
font-family:&quot;Courier New&quot;;color:black'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;This perfectly unmarshalls any kind of formatting and
whitespacing of &amp;lt;e&amp;gt;&amp;lt;v1/&amp;gt;&amp;lt;/e&amp;gt; and I am really happy with it so
far, BUT it does not produce singletongs. Instead, I am getting another
instance of E and V1 each time. This is rather bad, since I now must use the
equals operator to compare them, while it would be certainly great to in fact
have the same instances to be able to compare references:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;if (unmarshalledObject == E.V1)&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;So my questions are:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;* How can I get singletons, i. e. always the same instance
of E.V1 and E.V2 instead of new copies for each reference?&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;* Ain't there a simpler way to get enums with dynamically
formatted and whitespaced XML element bodies?&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;BTW, since the XML schema is far out of my control, I am
sorry, no, I cannot change the fact that the body is not a #PCDATA but an XML
element.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;Thanks a lot!&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;Markus&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;/div&gt;

&lt;/body&gt;

&lt;/html&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/How-to-map-Java-enum-to-XML-element-%28not--PCDATA%29-body--tp26798040p26798040.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26782167</id>
	<title>JAXB Commons Lang Plugin 2.2 is released</title>
	<published>2009-12-14T10:08:35Z</published>
	<updated>2009-12-14T10:08:35Z</updated>
	<author>
		<name>Hanson Char</name>
	</author>
	<content type="html">&lt;a href=&quot;https://jaxb2-commons.dev.java.net/commons-lang-plugin/index.html#Enhance091213&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://jaxb2-commons.dev.java.net/commons-lang-plugin/index.html#Enhance091213&lt;/a&gt;&lt;br&gt;&lt;br&gt;To enable this plugin to work with Java 6.&lt;br&gt;
&lt;br&gt;Cheers,&lt;br&gt;Hanson&lt;br&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/JAXB-Commons-Lang-Plugin-2.2-is-released-tp26782167p26782167.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26768725</id>
	<title>JAXB Fluent API 2.2 is released</title>
	<published>2009-12-13T11:08:01Z</published>
	<updated>2009-12-13T11:08:01Z</updated>
	<author>
		<name>Hanson Char</name>
	</author>
	<content type="html">&lt;a href=&quot;https://jaxb2-commons.dev.java.net/fluent-api/index.html#Enhance091213&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://jaxb2-commons.dev.java.net/fluent-api/index.html#Enhance091213&lt;/a&gt;&lt;br&gt;&lt;br&gt;To enable this plugin to work with Java 6.&lt;br&gt;&lt;br&gt;Cheers,&lt;br&gt;
Hanson&lt;br&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/JAXB-Fluent-API-2.2-is-released-tp26768725p26768725.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26744560</id>
	<title>[ANN] JAXB 2.2 is released</title>
	<published>2009-12-11T05:47:14Z</published>
	<updated>2009-12-11T05:47:14Z</updated>
	<author>
		<name>Martin Grebac</name>
	</author>
	<content type="html">JAXB team would like to announce availability of the JAXB RI 2.2
&lt;br&gt;[1] (see changelog [2]). The release contains updated version of JAXB api implementation
&lt;br&gt;with few improvements targeted mostly for JAX-WS 2.2 integration. 
&lt;br&gt;&lt;br&gt;If you want to work with the new JAXB api version on JDK 6 which itself contains older JAXB
&lt;br&gt;implementation, make sure you follow the endorsed dir setup as described in [4].
&lt;br&gt;&lt;br&gt;As usual, if you have any thoughts or comments, please post them to
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26744560&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users@...&lt;/a&gt;. For bug reports and feature enhancement
&lt;br&gt;requests, please use IssueTracker [3].
&lt;br&gt;&lt;br&gt;[1] &lt;a href=&quot;https://jaxb.dev.java.net/2.2/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://jaxb.dev.java.net/2.2/&lt;/a&gt;&lt;br&gt;[2] &lt;a href=&quot;https://jaxb.dev.java.net/nonav/2.2/docs/changelog2.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://jaxb.dev.java.net/nonav/2.2/docs/changelog2.html&lt;/a&gt;&lt;br&gt;[3] &lt;a href=&quot;https://jaxb.dev.java.net/issues/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://jaxb.dev.java.net/issues/&lt;/a&gt;&lt;br&gt;[4] &lt;a href=&quot;https://jaxb.dev.java.net/guide/Migrating_JAXB_2_0_applications_to_JavaSE_6.html#Using_JAXB_2_1_or_JAXB_2_2_with_JavaSE_6&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://jaxb.dev.java.net/guide/Migrating_JAXB_2_0_applications_to_JavaSE_6.html#Using_JAXB_2_1_or_JAXB_2_2_with_JavaSE_6&lt;/a&gt;&lt;br&gt;--
&lt;br&gt;Martin Grebac
&lt;br&gt;Sun Microsystems &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26744560&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;martin.grebac@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26744560&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26744560&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-ANN--JAXB-2.2-is-released-tp26744560p26744560.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26744583</id>
	<title>JAXB 2.2 is released</title>
	<published>2009-12-11T05:47:14Z</published>
	<updated>2009-12-11T05:47:14Z</updated>
	<author>
		<name>Martin Grebac</name>
	</author>
	<content type="html">JAXB team would like to announce availability of the JAXB RI 2.2
&lt;br&gt;[1] (see changelog [2]). The release contains updated version of JAXB api implementation
&lt;br&gt;with few improvements targeted mostly for JAX-WS 2.2 integration. 
&lt;br&gt;&lt;br&gt;If you want to work with the new JAXB api version on JDK 6 which itself contains older JAXB
&lt;br&gt;implementation, make sure you follow the endorsed dir setup as described in [4].
&lt;br&gt;&lt;br&gt;As usual, if you have any thoughts or comments, please post them to
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26744583&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users@...&lt;/a&gt;. For bug reports and feature enhancement
&lt;br&gt;requests, please use IssueTracker [3].
&lt;br&gt;&lt;br&gt;[1] &lt;a href=&quot;https://jaxb.dev.java.net/2.2/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://jaxb.dev.java.net/2.2/&lt;/a&gt;&lt;br&gt;[2] &lt;a href=&quot;https://jaxb.dev.java.net/nonav/2.2/docs/changelog2.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://jaxb.dev.java.net/nonav/2.2/docs/changelog2.html&lt;/a&gt;&lt;br&gt;[3] &lt;a href=&quot;https://jaxb.dev.java.net/issues/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://jaxb.dev.java.net/issues/&lt;/a&gt;&lt;br&gt;[4] &lt;a href=&quot;https://jaxb.dev.java.net/guide/Migrating_JAXB_2_0_applications_to_JavaSE_6.html#Using_JAXB_2_1_or_JAXB_2_2_with_JavaSE_6&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://jaxb.dev.java.net/guide/Migrating_JAXB_2_0_applications_to_JavaSE_6.html#Using_JAXB_2_1_or_JAXB_2_2_with_JavaSE_6&lt;/a&gt;&lt;br&gt;--
&lt;br&gt;Martin Grebac
&lt;br&gt;Sun Microsystems &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26744583&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;martin.grebac@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26744583&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;announce-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26744583&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;announce-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-announce-f13498.html&quot; embed=&quot;fixTarget[13498]&quot; target=&quot;_top&quot; &gt;java.net - jaxb announce&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/JAXB-2.2-is-released-tp26744583p26744583.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26742459</id>
	<title>Re: maven-jaxb2-plugin disappeared (again) ?</title>
	<published>2009-12-11T03:13:58Z</published>
	<updated>2009-12-11T03:13:58Z</updated>
	<author>
		<name>Aleksei Valikov</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;&amp;gt; There is no trace of
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; org.jvnet.jaxb2.maven2:maven-jaxb2-plugin
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; i.e. there is no 'jaxb2' dir in &lt;a href=&quot;http://download.java.net/maven/2/org/jvnet/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://download.java.net/maven/2/org/jvnet/&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Last week it was there... any ideas what now ?
&lt;br&gt;&lt;br&gt;Hm...
&lt;br&gt;&lt;br&gt;&lt;br&gt;Anyway, I've started triggered a build on Hudson, the artifact will be
&lt;br&gt;uploaded within the next hour.
&lt;br&gt;&lt;br&gt;Bye,
&lt;br&gt;/lexi
&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26742459&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26742459&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/maven-jaxb2-plugin-disappeared-%28again%29---tp26741922p26742459.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26742213</id>
	<title>Re: maven-jaxb2-plugin disappeared (again) ?</title>
	<published>2009-12-11T02:50:42Z</published>
	<updated>2009-12-11T02:50:42Z</updated>
	<author>
		<name>Martin Grebac</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&amp;nbsp;this might have been caused by the javanet outage. Stay tuned, we'll 
&lt;br&gt;investigate. Sorry about the inconvenience.
&lt;br&gt;&amp;nbsp; MartiNG
&lt;br&gt;&lt;br&gt;seko wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; There is no trace of
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; org.jvnet.jaxb2.maven2:maven-jaxb2-plugin
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; i.e. there is no 'jaxb2' dir in &lt;a href=&quot;http://download.java.net/maven/2/org/jvnet/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://download.java.net/maven/2/org/jvnet/&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Last week it was there... any ideas what now ?
&lt;br&gt;&amp;gt; --
&lt;br&gt;&amp;gt; Seko
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; 
&lt;/div&gt;&lt;br&gt;-- 
&lt;br&gt;Martin Grebac, &lt;a href=&quot;http://blogs.sun.com/mgrebac&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://blogs.sun.com/mgrebac&lt;/a&gt;&lt;br&gt;&lt;br&gt;Web Technologies &amp; Standards
&lt;br&gt;Sun Microsystems Czech
&lt;br&gt;&lt;br&gt;ICQ: 93478885
&lt;br&gt;&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26742213&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26742213&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/maven-jaxb2-plugin-disappeared-%28again%29---tp26741922p26742213.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26741922</id>
	<title>maven-jaxb2-plugin disappeared (again) ?</title>
	<published>2009-12-11T02:30:12Z</published>
	<updated>2009-12-11T02:30:12Z</updated>
	<author>
		<name>seko</name>
	</author>
	<content type="html">There is no trace of
&lt;br&gt;&lt;br&gt;org.jvnet.jaxb2.maven2:maven-jaxb2-plugin
&lt;br&gt;&lt;br&gt;i.e. there is no 'jaxb2' dir in &lt;a href=&quot;http://download.java.net/maven/2/org/jvnet/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://download.java.net/maven/2/org/jvnet/&lt;/a&gt;&lt;br&gt;&lt;br&gt;Last week it was there... any ideas what now ?
&lt;br&gt;--
&lt;br&gt;Seko
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/maven-jaxb2-plugin-disappeared-%28again%29---tp26741922p26741922.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26734226</id>
	<title>jaxb and webservice issue BARE ,Wrapped ,JAXB</title>
	<published>2009-12-10T12:45:42Z</published>
	<updated>2009-12-10T12:45:42Z</updated>
	<author>
		<name>csergiu77</name>
	</author>
	<content type="html">I have a webservice generated from a wsdl that has this:
&lt;br&gt;&lt;br&gt;@SOAPBinding(style=SOAPBinding.Style.DOCUMENT, use=SOAPBinding.Use.LITERAL,parameterStyle=SOAPBinding.ParameterStyle.WRAPPED)
&lt;br&gt;&lt;br&gt;But i want to create my own class that that uses JAXB to unmarshall the SOAP message (due to various reason)
&lt;br&gt;&lt;br&gt;Now the problem is that if i generate classes based on schema that the original wsdl has I end up with like I would have a ParameterStyle.BARE web service....and it does NOT work to unmarshal using jaxb :((
&lt;br&gt;because of namespace related issues.
&lt;br&gt;&lt;br&gt;How can i specify to jaxb to generate classes takeing into consideration that i hava a WRapped style soap messgae not BARE...???
&lt;br&gt;&lt;br&gt;THANK YOU !!!&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/jaxb-and-webservice-issue-BARE-%2CWrapped-%2CJAXB-tp26734226p26734226.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26733906</id>
	<title>Re: ClassCastException: com.sun.xml.bind.v2.runtime.JAXBContextImpl  in WebLogic 10</title>
	<published>2009-12-10T12:21:05Z</published>
	<updated>2009-12-10T12:21:05Z</updated>
	<author>
		<name>Wolfgang Laun-2</name>
	</author>
	<content type="html">Great. FYI, this has triggered issue 726, which helps to improve JAXB code.&lt;br&gt;Thanks.&lt;br&gt;-W&lt;br&gt;&lt;br&gt;&lt;div class=&quot;gmail_quote&quot;&gt;On Thu, Dec 10, 2009 at 5:29 PM, KARR, DAVID (ATTCINW) &lt;span dir=&quot;ltr&quot;&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26733906&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dk068x@...&lt;/a&gt;&amp;gt;&lt;/span&gt; wrote:&lt;br&gt;
&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;&quot;&gt;
&lt;div&gt;&amp;gt; -----Original Message-----&lt;br&gt;
&amp;gt; From: KARR, DAVID (ATTCINW)&lt;br&gt;
&amp;gt; Sent: Wednesday, December 09, 2009 2:45 PM&lt;br&gt;
&amp;gt; To: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26733906&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users@...&lt;/a&gt;&lt;br&gt;
&lt;/div&gt;&lt;div&gt;&amp;gt; Subject: ClassCastException:&lt;br&gt;
&amp;gt; com.sun.xml.bind.v2.runtime.JAXBContextImpl in WebLogic 10&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; I&amp;#39;m running WebLogic 10MP1.  I&amp;#39;m constructing an application that uses&lt;br&gt;
&amp;gt; CXF, which uses jaxb-api-2.1.jar and jaxb-impl-2.1.12.jar.&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; After I put those jars into WEB-INF/lib and restarted, I got the&lt;br&gt;
&amp;gt; following:&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; java.lang.ClassCastException:&lt;br&gt;
&amp;gt; com.sun.xml.bind.v2.runtime.JAXBContextImpl&lt;br&gt;
&amp;gt;       at&lt;br&gt;
&amp;gt; javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:150)&lt;br&gt;
&amp;gt;       at javax.xml.bind.ContextFinder.find(ContextFinder.java:286)&lt;br&gt;
&amp;gt;       at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:372)&lt;br&gt;
&amp;gt;       at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:337)&lt;br&gt;
&amp;gt;       at&lt;br&gt;
&amp;gt;&lt;br&gt;
org.apache.cxf.wsdl.JAXBExtensionHelper.createJAXBContext(JAXBExtension&lt;br&gt;
&amp;gt; H&lt;br&gt;
&amp;gt; elper.java:196)&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; I&amp;#39;m using &amp;quot;prefer-web-inf-classes&amp;quot; in weblogic.xml and&lt;br&gt;
&amp;gt; &amp;quot;prefer-application-packages&amp;quot; in weblogic-application.xml (specifying&lt;br&gt;
&amp;gt; &amp;quot;javax.wsdl.*&amp;quot; and &amp;quot;com.sun.xml.bind.v2.*&amp;quot;).&lt;br&gt;
&lt;br&gt;
&lt;/div&gt;It appears that after I constructed an EAR for this project, put my jars&lt;br&gt;
into the EAR, and set &amp;quot;prefer-application-packages&amp;quot;, I stopped getting&lt;br&gt;
this error.&lt;br&gt;
&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;
---------------------------------------------------------------------&lt;br&gt;
To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26733906&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-unsubscribe@...&lt;/a&gt;&lt;br&gt;
For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26733906&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-help@...&lt;/a&gt;&lt;br&gt;
&lt;br&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;br&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/ClassCastException%3A-com.sun.xml.bind.v2.runtime.JAXBContextImpl-in-WebLogic-10-tp26719107p26733906.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26730333</id>
	<title>RE: ClassCastException: com.sun.xml.bind.v2.runtime.JAXBContextImpl in WebLogic 10</title>
	<published>2009-12-10T08:29:47Z</published>
	<updated>2009-12-10T08:29:47Z</updated>
	<author>
		<name>KARR, DAVID (ATTCINW)</name>
	</author>
	<content type="html">&lt;div class='shrinkable-quote'&gt;&amp;gt; -----Original Message-----
&lt;br&gt;&amp;gt; From: KARR, DAVID (ATTCINW)
&lt;br&gt;&amp;gt; Sent: Wednesday, December 09, 2009 2:45 PM
&lt;br&gt;&amp;gt; To: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26730333&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users@...&lt;/a&gt;
&lt;br&gt;&amp;gt; Subject: ClassCastException:
&lt;br&gt;&amp;gt; com.sun.xml.bind.v2.runtime.JAXBContextImpl in WebLogic 10
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I'm running WebLogic 10MP1. &amp;nbsp;I'm constructing an application that uses
&lt;br&gt;&amp;gt; CXF, which uses jaxb-api-2.1.jar and jaxb-impl-2.1.12.jar.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; After I put those jars into WEB-INF/lib and restarted, I got the
&lt;br&gt;&amp;gt; following:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; java.lang.ClassCastException:
&lt;br&gt;&amp;gt; com.sun.xml.bind.v2.runtime.JAXBContextImpl
&lt;br&gt;&amp;gt; 	at
&lt;br&gt;&amp;gt; javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:150)
&lt;br&gt;&amp;gt; 	at javax.xml.bind.ContextFinder.find(ContextFinder.java:286)
&lt;br&gt;&amp;gt; 	at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:372)
&lt;br&gt;&amp;gt; 	at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:337)
&lt;br&gt;&amp;gt; 	at
&lt;br&gt;&amp;gt;
&lt;/div&gt;org.apache.cxf.wsdl.JAXBExtensionHelper.createJAXBContext(JAXBExtension
&lt;br&gt;&amp;gt; H
&lt;br&gt;&amp;gt; elper.java:196)
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I'm using &amp;quot;prefer-web-inf-classes&amp;quot; in weblogic.xml and
&lt;br&gt;&amp;gt; &amp;quot;prefer-application-packages&amp;quot; in weblogic-application.xml (specifying
&lt;br&gt;&amp;gt; &amp;quot;javax.wsdl.*&amp;quot; and &amp;quot;com.sun.xml.bind.v2.*&amp;quot;).
&lt;br&gt;&lt;br&gt;It appears that after I constructed an EAR for this project, put my jars
&lt;br&gt;into the EAR, and set &amp;quot;prefer-application-packages&amp;quot;, I stopped getting
&lt;br&gt;this error.
&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26730333&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26730333&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/ClassCastException%3A-com.sun.xml.bind.v2.runtime.JAXBContextImpl-in-WebLogic-10-tp26719107p26730333.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26729706</id>
	<title>RE:  Re: Compute xs:any and xs:attribute</title>
	<published>2009-12-10T07:53:24Z</published>
	<updated>2009-12-10T07:53:24Z</updated>
	<author>
		<name>Lulseged</name>
	</author>
	<content type="html">&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0 Transitional//EN&quot;&gt;
&lt;HTML&gt;&lt;HEAD&gt;&lt;TITLE&gt;&lt;/TITLE&gt;
&lt;META http-equiv=Content-Type content=&quot;text/html; charset=us-ascii&quot;&gt;
&lt;META content=&quot;MSHTML 6.00.6001.18319&quot; name=GENERATOR&gt;&lt;/HEAD&gt;
&lt;BODY&gt;&lt;!-- Converted from text/plain format --&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;Hi&lt;BR&gt;&amp;nbsp;Thanks&lt;BR&gt;&lt;BR&gt;&amp;nbsp;What I mean 
was to separate xs:any and xs:attribute from the document with the namespaces 
defining them.&lt;BR&gt;&lt;BR&gt;&amp;nbsp;An example is:&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;lt;?xml version=&quot;1.0&quot; 
encoding=&quot;UTF-8&quot;?&amp;gt;&lt;BR&gt;&amp;lt;resource-lists 
xmlns=&quot;urn:ietf:params:xml:ns:resource-lists&quot; 
xmlns:ou=&quot;urn:oma:xml:xdm:resource-list:oma-uriusage&quot;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
xmlns:oxe=&quot;urn:oma:xml:xdm:extensions&quot; 
xmlns:oga=&quot;urn:oma:xml:poc:group-advertisement&quot; 
xmlns:opu=&quot;urn:oma:xml:poc:oma-pocusage&quot;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
xmlns:oiu=&quot;urn:oma:xml:im:oma-imusage&quot;&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;list 
name=&quot;bookmarkedGroups&quot;&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;entry 
uri=&quot;sip:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26729706&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;group1_joebloggs@...&lt;/a&gt;&quot;&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;display-name&amp;gt;Joe Bloggs&amp;#8217;s golf 
team&amp;lt;/display-name&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT color=#ff0000&gt;&amp;lt;ou:uriusages&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;oxe:common-usage 
id=&quot;a1&quot;&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;oga:group-advertisement&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;oga:note&amp;gt;This group will meet 
next week&amp;lt;/oga:note&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;oga:group 
type=&quot;dialed-in&quot;&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;oga:display-name&amp;gt;Joe Bloggs&amp;#8217;s 
golf team&amp;lt;/oga:display-name&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;oga:uri&amp;gt;sip:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26729706&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;group1_joebloggs@...&lt;/a&gt;&amp;lt;/oga:uri&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;oxe:group-media&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;oxe:all-media-except&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;oxe:file-transfer 
/&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;/oxe:all-media-except&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;/oxe:group-media&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;oxe:supported-services&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;oxe:service enabler=&quot;poc&quot; 
/&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;oxe:service enabler=&quot;im&quot; 
/&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;/oxe:supported-services&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;/oga:group&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;/oga:group-advertisement&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;/oxe:common-usage&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;opu:pocusage&amp;gt;chat&amp;lt;/opu:pocusage&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;oiu:imusage&amp;gt;chat&amp;lt;/oiu:imusage&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;/ou:uriusages&amp;gt;&lt;BR&gt;&lt;/FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;/entry&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;entry 
uri=&quot;sip:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26729706&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;group1_bob@...&lt;/a&gt;&quot;&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;display-name&amp;gt;Bob&amp;#8217;s ski 
friends&amp;lt;/display-name&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT color=#ff0000&gt;&amp;lt;ou:uriusages&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;opu:pocusage&amp;gt;prearranged&amp;lt;/opu:pocusage&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;/ou:uriusages&amp;gt;&lt;BR&gt;&lt;/FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;/entry&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;/list&amp;gt;&lt;BR&gt;&amp;lt;/resource-lists&amp;gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;DIV&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;&lt;/FONT&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;&lt;/FONT&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;&lt;FONT color=#0000ff&gt;The red part is not 
defined by the default namespace (&lt;/FONT&gt;&lt;FONT color=#000000&gt;urn:ietf:params:xml:ns:resource-lists). &lt;/FONT&gt;&lt;/DIV&gt;
&lt;P&gt;&lt;FONT color=#0000ff&gt;If I separate this document I get one document which is 
defined by a known namespace: &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff&gt;&lt;/FONT&gt;&amp;lt;?xml version=&quot;1.0&quot; 
encoding=&quot;UTF-8&quot;?&amp;gt;&lt;BR&gt;&amp;lt;resource-lists 
xmlns=&quot;urn:ietf:params:xml:ns:resource-lists&quot; 
&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;list 
name=&quot;bookmarkedGroups&quot;&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;entry 
uri=&quot;sip:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26729706&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;group1_joebloggs@...&lt;/a&gt;&quot;&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;display-name&amp;gt;Joe Bloggs&amp;#8217;s golf 
team&amp;lt;/display-name&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/entry&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;entry 
uri=&quot;sip:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26729706&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;group1_bob@...&lt;/a&gt;&quot;&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;display-name&amp;gt;Bob&amp;#8217;s ski 
friends&amp;lt;/display-name&amp;gt;&lt;FONT color=#ff0000&gt;&lt;BR&gt;&lt;/FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;/entry&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;/list&amp;gt;&lt;BR&gt;&amp;lt;/resource-lists&amp;gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff&gt;The red parts will be computed as follows with the name 
spaces defining it:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff&gt;This document will be saved in a structured way. 
(Relational database)&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&amp;gt;&lt;BR&gt;&amp;lt;resource-lists 
xmlns=&quot;urn:ietf:params:xml:ns:resource-lists&quot; 
xmlns:ou=&quot;urn:oma:xml:xdm:resource-list:oma-uriusage&quot;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
xmlns:oxe=&quot;urn:oma:xml:xdm:extensions&quot; 
xmlns:oga=&quot;urn:oma:xml:poc:group-advertisement&quot; 
xmlns:opu=&quot;urn:oma:xml:poc:oma-pocusage&quot;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
xmlns:oiu=&quot;urn:oma:xml:im:oma-imusage&quot;&amp;gt;&lt;BR&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#ff0000&gt;&amp;lt;ou:uriusages&amp;gt;&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#ff0000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;oxe:common-usage 
id=&quot;a1&quot;&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;oga:group-advertisement&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;oga:note&amp;gt;This group will meet next 
week&amp;lt;/oga:note&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;oga:group 
type=&quot;dialed-in&quot;&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;oga:display-name&amp;gt;Joe Bloggs&amp;#8217;s golf 
team&amp;lt;/oga:display-name&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;oga:uri&amp;gt;sip:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26729706&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;group1_joebloggs@...&lt;/a&gt;&amp;lt;/oga:uri&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;oxe:group-media&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;oxe:all-media-except&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;oxe:file-transfer 
/&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;/oxe:all-media-except&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;/oxe:group-media&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;oxe:supported-services&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;oxe:service enabler=&quot;poc&quot; 
/&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;oxe:service enabler=&quot;im&quot; 
/&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;/oxe:supported-services&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/oga:group&amp;gt;&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#ff0000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;/oga:group-advertisement&amp;gt;&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#ff0000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;/oxe:common-usage&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;opu:pocusage&amp;gt;chat&amp;lt;/opu:pocusage&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;oiu:imusage&amp;gt;chat&amp;lt;/oiu:imusage&amp;gt;&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#ff0000&gt;&amp;lt;/ou:uriusages&amp;gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#000000&gt;&amp;lt;/resource-lists&amp;gt;&lt;/FONT&gt;&lt;BR&gt;&lt;/P&gt;&lt;/FONT&gt;
&lt;DIV&gt;&lt;FONT color=#0000ff&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&amp;gt;&lt;BR&gt;&amp;lt;resource-lists 
xmlns=&quot;urn:ietf:params:xml:ns:resource-lists&quot; 
xmlns:ou=&quot;urn:oma:xml:xdm:resource-list:oma-uriusage&quot;&amp;gt;&lt;BR&gt;&lt;FONT color=#ff0000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;ou:uriusages&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;lt;opu:pocusage&amp;gt;prearranged&amp;lt;/opu:pocusage&amp;gt;&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT color=#ff0000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/ou:uriusages&amp;gt;&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&amp;lt;/resource-lists&amp;gt;&lt;BR&gt;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT color=#0000ff&gt;These two documents will be saved in a database as 
CLOB/BLOB.&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT color=#0000ff&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT color=#0000ff&gt;When returning the whole document, all these fragments 
will be put togther by my application.&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT color=#0000ff&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT color=#0000ff&gt;But my problem is how to compute/separate, put the name 
spaces needed for these 2 documents.&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT color=#0000ff&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT color=#0000ff&gt;Lulseged&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;BR&gt;-----Original Message-----&lt;BR&gt;From: 
&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26729706&amp;i=6&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;aleksei.valikov@...&lt;/a&gt; [&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26729706&amp;i=7&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;aleksei.valikov@...&lt;/a&gt;] On 
Behalf Of Aleksei Valikov&lt;BR&gt;Sent: den 10 december 2009 16:02&lt;BR&gt;To: 
&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26729706&amp;i=8&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users@...&lt;/a&gt;&lt;BR&gt;Subject: Re: Compute xs:any and 
xs:attribute&lt;BR&gt;&lt;BR&gt;Hi,&lt;BR&gt;&lt;BR&gt;&amp;gt;&amp;nbsp; I am saving xml documents structured 
in a relational database. But it&lt;BR&gt;&amp;gt; will not work if the schema defining 
the xml document contains xs:any&lt;BR&gt;&amp;gt; or 
xs:anyAttribute.&lt;BR&gt;&amp;gt;&lt;BR&gt;&amp;gt;&amp;nbsp; Is there anyway where I can compute 
xs:any or xs:attribute and its&lt;BR&gt;&amp;gt; namespace separatly?&lt;BR&gt;&lt;BR&gt;What do you 
mean by &quot;compute separately&quot;?&lt;BR&gt;&lt;BR&gt;&amp;gt; I am not going to parse these xs:any 
or xs:attribute in my application&lt;BR&gt;&amp;gt; but need to return back when asked by 
an external application which&lt;BR&gt;&amp;gt; created these xs:any and xs:attribute 
types.&lt;BR&gt;&lt;BR&gt;Well, you have to store them somewhere. Consider storing 
@XmlAnyElement as BLOB/CLOB in the database and @XmlAnyAttribute as 
string/string map.&lt;BR&gt;&lt;BR&gt;&amp;gt;&amp;nbsp; This will help me to save the xs:any or 
xs:attribute types as they&lt;BR&gt;&amp;gt; are together with the namespaces defined in a 
model and the rest of&lt;BR&gt;&amp;gt; the xml document will be modeled i a relational 
database.&lt;BR&gt;&lt;BR&gt;ps. Are you aware of Hyperjaxb3?&lt;BR&gt;See &lt;A href=&quot;http://confluence.highsource.org/display/HJ3/Home&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://confluence.highsource.org/display/HJ3/Home&lt;/A&gt;&lt;BR&gt;&lt;BR&gt;Bye.&lt;BR&gt;/lexi&lt;BR&gt;&lt;BR&gt;---------------------------------------------------------------------&lt;BR&gt;To 
unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26729706&amp;i=9&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-unsubscribe@...&lt;/a&gt;&lt;BR&gt;For additional 
commands, e-mail: 
&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26729706&amp;i=10&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-help@...&lt;/a&gt;&lt;BR&gt;&lt;BR&gt;&lt;/DIV&gt;&lt;/FONT&gt;&lt;/BODY&gt;&lt;/HTML&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Compute-xs%3Aany-and-xs%3Aattribute-tp26728437p26729706.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26728711</id>
	<title>Re: Compute xs:any and xs:attribute</title>
	<published>2009-12-10T07:02:21Z</published>
	<updated>2009-12-10T07:02:21Z</updated>
	<author>
		<name>Aleksei Valikov</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;nbsp;I am saving xml documents structured in a relational database. But it will
&lt;br&gt;&amp;gt; not work if the schema defining the xml document contains xs:any or
&lt;br&gt;&amp;gt; xs:anyAttribute.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;Is there anyway where I can compute xs:any or xs:attribute and its
&lt;br&gt;&amp;gt; namespace separatly?
&lt;br&gt;&lt;br&gt;What do you mean by &amp;quot;compute separately&amp;quot;?
&lt;br&gt;&lt;br&gt;&amp;gt; I am not going to parse these xs:any or xs:attribute in
&lt;br&gt;&amp;gt; my application but need to return back when asked by an external application
&lt;br&gt;&amp;gt; which created these xs:any and xs:attribute types.
&lt;br&gt;&lt;br&gt;Well, you have to store them somewhere. Consider storing
&lt;br&gt;@XmlAnyElement as BLOB/CLOB in the database and @XmlAnyAttribute as
&lt;br&gt;string/string map.
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;nbsp;This will help me to save the xs:any or xs:attribute types as they are
&lt;br&gt;&amp;gt; together with the namespaces defined in a model and the rest of the xml
&lt;br&gt;&amp;gt; document will be modeled i a relational database.
&lt;br&gt;&lt;br&gt;ps. Are you aware of Hyperjaxb3?
&lt;br&gt;See &lt;a href=&quot;http://confluence.highsource.org/display/HJ3/Home&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://confluence.highsource.org/display/HJ3/Home&lt;/a&gt;&lt;br&gt;&lt;br&gt;Bye.
&lt;br&gt;/lexi
&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26728711&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26728711&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Compute-xs%3Aany-and-xs%3Aattribute-tp26728437p26728711.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26728434</id>
	<title>Re: Generate from schemas which resides within jars?</title>
	<published>2009-12-10T06:47:43Z</published>
	<updated>2009-12-10T06:47:43Z</updated>
	<author>
		<name>Aleksei Valikov</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;&amp;gt; Is it possible to have JAXB2 generate code from schemas when they are within
&lt;br&gt;&amp;gt; a jar which is on the classpath - or do I have to point to the actual files?
&lt;br&gt;&lt;br&gt;XJC loads schemas via URL, so you can use JAR URL
&lt;br&gt;(jar:file:/c:/almanac/my.jar!/com/acme/foo.xsd) to point to your
&lt;br&gt;schema. You can also use catalog file to remap &amp;quot;public URL&amp;quot; like
&lt;br&gt;&lt;a href=&quot;http://www.acme.com/foo.xsd&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.acme.com/foo.xsd&lt;/a&gt;&amp;nbsp;onto &amp;quot;system URL&amp;quot; like JAR URL mentioned
&lt;br&gt;above or even use an own catalog resolver.
&lt;br&gt;You can find few hints here:
&lt;br&gt;&lt;br&gt;&lt;a href=&quot;https://maven-jaxb2-plugin.dev.java.net/docs/guide.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://maven-jaxb2-plugin.dev.java.net/docs/guide.html&lt;/a&gt;&lt;br&gt;&lt;br&gt;Bye.
&lt;br&gt;/lexi
&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26728434&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26728434&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Generate-from-schemas-which-resides-within-jars--tp26728165p26728434.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26728437</id>
	<title>Compute xs:any and xs:attribute</title>
	<published>2009-12-10T06:43:47Z</published>
	<updated>2009-12-10T06:43:47Z</updated>
	<author>
		<name>Lulseged</name>
	</author>
	<content type="html">&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 3.2//EN&quot;&gt;
&lt;HTML&gt;
&lt;HEAD&gt;
&lt;META HTTP-EQUIV=&quot;Content-Type&quot; CONTENT=&quot;text/html; charset=us-ascii&quot;&gt;
&lt;META NAME=&quot;Generator&quot; CONTENT=&quot;MS Exchange Server version 6.5.7654.12&quot;&gt;
&lt;TITLE&gt;Compute xs:any and xs:attribute&lt;/TITLE&gt;
&lt;/HEAD&gt;
&lt;BODY&gt;
&lt;!-- Converted from text/rtf format --&gt;

&lt;P&gt;&lt;FONT SIZE=2 FACE=&quot;Verdana&quot;&gt;Hi&lt;/FONT&gt;
&lt;/P&gt;

&lt;P&gt;&lt;FONT SIZE=2 FACE=&quot;Verdana&quot;&gt;&amp;nbsp;I am saving xml documents structured in a relational database. But it will not work if the schema defining the xml document contains xs:any or xs:anyAttribute.&lt;/FONT&gt;&lt;/P&gt;

&lt;P&gt;&lt;FONT SIZE=2 FACE=&quot;Verdana&quot;&gt;&amp;nbsp;Is there anyway where I can compute xs:any or xs:attribute and its namespace separatly? I am not going to parse these xs:any or xs:attribute in my application but need to return back when asked by an external application which created these xs:any and xs:attribute types.&lt;/FONT&gt;&lt;/P&gt;

&lt;P&gt;&lt;FONT SIZE=2 FACE=&quot;Verdana&quot;&gt;&amp;nbsp;This will help me to save the xs:any or xs:attribute types as they are together with the namespaces defined in a model and the rest of the xml document will be modeled i a relational database.&lt;/FONT&gt;&lt;/P&gt;

&lt;P&gt;&lt;FONT SIZE=2 FACE=&quot;Verdana&quot;&gt;Lulseged&lt;/FONT&gt;
&lt;/P&gt;

&lt;/BODY&gt;
&lt;/HTML&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Compute-xs%3Aany-and-xs%3Aattribute-tp26728437p26728437.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26728165</id>
	<title>Generate from schemas which resides within jars?</title>
	<published>2009-12-10T06:31:09Z</published>
	<updated>2009-12-10T06:31:09Z</updated>
	<author>
		<name>davidkarlsen</name>
	</author>
	<content type="html">Hi.
&lt;br&gt;&lt;br&gt;Is it possible to have JAXB2 generate code from schemas when they are 
&lt;br&gt;within a jar which is on the classpath - or do I have to point to the 
&lt;br&gt;actual files?
&lt;br&gt;&lt;br&gt;--
&lt;br&gt;David J. M. Karlsen - +47 90 68 22 43
&lt;br&gt;&lt;a href=&quot;http://www.davidkarlsen.com&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.davidkarlsen.com&lt;/a&gt;&lt;br&gt;&lt;a href=&quot;http://mp3.davidkarlsen.com&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mp3.davidkarlsen.com&lt;/a&gt;&lt;br&gt;Sent from my bog-standard SMTP client
&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26728165&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26728165&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;div class=&quot;signature&quot;&gt;&lt;a href=&quot;http://www.davidkarlsen.com&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.davidkarlsen.com&lt;/a&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Generate-from-schemas-which-resides-within-jars--tp26728165p26728165.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26726709</id>
	<title>Re: ClassCastException: com.sun.xml.bind.v2.runtime.JAXBContextImpl  in WebLogic 10</title>
	<published>2009-12-10T04:51:03Z</published>
	<updated>2009-12-10T04:51:03Z</updated>
	<author>
		<name>ricointx</name>
	</author>
	<content type="html">&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;div style=&quot;font-family:times new roman,new york,times,serif;font-size:12pt&quot;&gt;&lt;div&gt;Weblogic has an older version of JAXB embedded in it. Can't tell you which version because I'm away from work.&lt;br&gt;&lt;br&gt;Rico&lt;br&gt;&lt;/div&gt;&lt;div style=&quot;font-family: times new roman,new york,times,serif; font-size: 12pt;&quot;&gt;&lt;br&gt;&lt;div style=&quot;font-family: times new roman,new york,times,serif; font-size: 12pt;&quot;&gt;&lt;font face=&quot;Tahoma&quot; size=&quot;2&quot;&gt;&lt;hr size=&quot;1&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;From:&lt;/span&gt;&lt;/b&gt; Wolfgang Laun &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26726709&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;wolfgang.laun@...&lt;/a&gt;&amp;gt;&lt;br&gt;&lt;b&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;To:&lt;/span&gt;&lt;/b&gt; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26726709&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users@...&lt;/a&gt;&lt;br&gt;&lt;b&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;Sent:&lt;/span&gt;&lt;/b&gt; Thu, December 10, 2009 6:14:20 AM&lt;br&gt;&lt;b&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;Subject:&lt;/span&gt;&lt;/b&gt; Re: ClassCastException: com.sun.xml.bind.v2.runtime.JAXBContextImpl  in WebLogic 10&lt;br&gt;&lt;/font&gt;&lt;br&gt;
This stack trace line&lt;br&gt;&amp;nbsp;&amp;nbsp; at javax.xml.bind.ContextFinder.find(ContextFinder.java:286)&lt;br&gt;doesn't match the source from JAXB 2.1.12.&lt;br&gt;&lt;br&gt;Are you sure that there is no other jaxb-api.jar anywhere in the class path?&lt;br&gt;
&lt;br&gt;What jdk version are you using?&lt;br&gt;&lt;br&gt;-W&lt;br&gt;&lt;br&gt;&lt;div class=&quot;gmail_quote&quot;&gt;On Wed, Dec 9, 2009 at 11:45 PM, KARR, DAVID (ATTCINW) &lt;span dir=&quot;ltr&quot;&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26726709&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dk068x@...&lt;/a&gt;&amp;gt;&lt;/span&gt; wrote:&lt;br&gt;
&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;&quot;&gt;I'm running WebLogic 10MP1. &amp;nbsp;I'm constructing an application that uses&lt;br&gt;
CXF, which uses jaxb-api-2.1.jar and jaxb-impl-2.1.12.jar.&lt;br&gt;
&lt;br&gt;
After I put those jars into WEB-INF/lib and restarted, I got the&lt;br&gt;
following:&lt;br&gt;
&lt;br&gt;
java.lang.ClassCastException:&lt;br&gt;
com.sun.xml.bind.v2.runtime.JAXBContextImpl&lt;br&gt;
 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;at&lt;br&gt;
javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:150)&lt;br&gt;
 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;at javax.xml.bind.ContextFinder.find(ContextFinder.java:286)&lt;br&gt;
 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:372)&lt;br&gt;
 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:337)&lt;br&gt;
 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;at&lt;br&gt;
org.apache.cxf.wsdl.JAXBExtensionHelper.createJAXBContext(JAXBExtensionH&lt;br&gt;
elper.java:196)&lt;br&gt;
&lt;br&gt;
I'm using &quot;prefer-web-inf-classes&quot; in weblogic.xml and&lt;br&gt;
&quot;prefer-application-packages&quot; in weblogic-application.xml (specifying&lt;br&gt;
&quot;javax.wsdl.*&quot; and &quot;com.sun.xml.bind.v2.*&quot;).&lt;br&gt;
&lt;br&gt;
In my searches, I've found other people who have run into this in&lt;br&gt;
WebLogic and other servers, but I haven't found anyone who's resolved&lt;br&gt;
this problem.&lt;br&gt;
&lt;br&gt;
---------------------------------------------------------------------&lt;br&gt;
To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26726709&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-unsubscribe@...&lt;/a&gt;&lt;br&gt;
For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26726709&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-help@...&lt;/a&gt;&lt;br&gt;
&lt;br&gt;
&lt;/blockquote&gt;&lt;/div&gt;&lt;br&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;!-- cg6.c201.mail.mud.yahoo.com compressed/chunked Wed Dec  9 04:55:55 PST 2009 --&gt;
&lt;/div&gt;&lt;/body&gt;&lt;/html&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/ClassCastException%3A-com.sun.xml.bind.v2.runtime.JAXBContextImpl-in-WebLogic-10-tp26719107p26726709.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26726294</id>
	<title>Re: ClassCastException: com.sun.xml.bind.v2.runtime.JAXBContextImpl  in WebLogic 10</title>
	<published>2009-12-10T04:14:20Z</published>
	<updated>2009-12-10T04:14:20Z</updated>
	<author>
		<name>Wolfgang Laun-2</name>
	</author>
	<content type="html">This stack trace line&lt;br&gt;   at javax.xml.bind.ContextFinder.find(ContextFinder.java:286)&lt;br&gt;doesn&amp;#39;t match the source from JAXB 2.1.12.&lt;br&gt;&lt;br&gt;Are you sure that there is no other jaxb-api.jar anywhere in the class path?&lt;br&gt;
&lt;br&gt;What jdk version are you using?&lt;br&gt;&lt;br&gt;-W&lt;br&gt;&lt;br&gt;&lt;div class=&quot;gmail_quote&quot;&gt;On Wed, Dec 9, 2009 at 11:45 PM, KARR, DAVID (ATTCINW) &lt;span dir=&quot;ltr&quot;&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26726294&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dk068x@...&lt;/a&gt;&amp;gt;&lt;/span&gt; wrote:&lt;br&gt;
&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;&quot;&gt;I&amp;#39;m running WebLogic 10MP1.  I&amp;#39;m constructing an application that uses&lt;br&gt;
CXF, which uses jaxb-api-2.1.jar and jaxb-impl-2.1.12.jar.&lt;br&gt;
&lt;br&gt;
After I put those jars into WEB-INF/lib and restarted, I got the&lt;br&gt;
following:&lt;br&gt;
&lt;br&gt;
java.lang.ClassCastException:&lt;br&gt;
com.sun.xml.bind.v2.runtime.JAXBContextImpl&lt;br&gt;
        at&lt;br&gt;
javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:150)&lt;br&gt;
        at javax.xml.bind.ContextFinder.find(ContextFinder.java:286)&lt;br&gt;
        at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:372)&lt;br&gt;
        at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:337)&lt;br&gt;
        at&lt;br&gt;
org.apache.cxf.wsdl.JAXBExtensionHelper.createJAXBContext(JAXBExtensionH&lt;br&gt;
elper.java:196)&lt;br&gt;
&lt;br&gt;
I&amp;#39;m using &amp;quot;prefer-web-inf-classes&amp;quot; in weblogic.xml and&lt;br&gt;
&amp;quot;prefer-application-packages&amp;quot; in weblogic-application.xml (specifying&lt;br&gt;
&amp;quot;javax.wsdl.*&amp;quot; and &amp;quot;com.sun.xml.bind.v2.*&amp;quot;).&lt;br&gt;
&lt;br&gt;
In my searches, I&amp;#39;ve found other people who have run into this in&lt;br&gt;
WebLogic and other servers, but I haven&amp;#39;t found anyone who&amp;#39;s resolved&lt;br&gt;
this problem.&lt;br&gt;
&lt;br&gt;
---------------------------------------------------------------------&lt;br&gt;
To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26726294&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-unsubscribe@...&lt;/a&gt;&lt;br&gt;
For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26726294&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-help@...&lt;/a&gt;&lt;br&gt;
&lt;br&gt;
&lt;/blockquote&gt;&lt;/div&gt;&lt;br&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/ClassCastException%3A-com.sun.xml.bind.v2.runtime.JAXBContextImpl-in-WebLogic-10-tp26719107p26726294.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26719107</id>
	<title>ClassCastException: com.sun.xml.bind.v2.runtime.JAXBContextImpl in WebLogic 10</title>
	<published>2009-12-09T14:45:28Z</published>
	<updated>2009-12-09T14:45:28Z</updated>
	<author>
		<name>KARR, DAVID (ATTCINW)</name>
	</author>
	<content type="html">I'm running WebLogic 10MP1. &amp;nbsp;I'm constructing an application that uses
&lt;br&gt;CXF, which uses jaxb-api-2.1.jar and jaxb-impl-2.1.12.jar.
&lt;br&gt;&lt;br&gt;After I put those jars into WEB-INF/lib and restarted, I got the
&lt;br&gt;following:
&lt;br&gt;&lt;br&gt;java.lang.ClassCastException:
&lt;br&gt;com.sun.xml.bind.v2.runtime.JAXBContextImpl
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at
&lt;br&gt;javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:150)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at javax.xml.bind.ContextFinder.find(ContextFinder.java:286)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:372)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:337)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; at
&lt;br&gt;org.apache.cxf.wsdl.JAXBExtensionHelper.createJAXBContext(JAXBExtensionH
&lt;br&gt;elper.java:196)
&lt;br&gt;&lt;br&gt;I'm using &amp;quot;prefer-web-inf-classes&amp;quot; in weblogic.xml and
&lt;br&gt;&amp;quot;prefer-application-packages&amp;quot; in weblogic-application.xml (specifying
&lt;br&gt;&amp;quot;javax.wsdl.*&amp;quot; and &amp;quot;com.sun.xml.bind.v2.*&amp;quot;).
&lt;br&gt;&lt;br&gt;In my searches, I've found other people who have run into this in
&lt;br&gt;WebLogic and other servers, but I haven't found anyone who's resolved
&lt;br&gt;this problem.
&lt;br&gt;&lt;br&gt;---------------------------------------------------------------------
&lt;br&gt;To unsubscribe, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26719107&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-unsubscribe@...&lt;/a&gt;
&lt;br&gt;For additional commands, e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26719107&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;users-help@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/ClassCastException%3A-com.sun.xml.bind.v2.runtime.JAXBContextImpl-in-WebLogic-10-tp26719107p26719107.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26709337</id>
	<title>Re: error &quot;Type mismatch: cannot convert from XmlAccessType to  AccessType&quot;</title>
	<published>2009-12-09T04:20:21Z</published>
	<updated>2009-12-09T04:20:21Z</updated>
	<author>
		<name>maven apache</name>
	</author>
	<content type="html">Thank you very much!!!&lt;div&gt;Though I am not exactly sure your meaning(not your problem but my own poor knowledge of jaxb),but I check out a new version of jaxb-api.jar, and replace the old one,it works, the problem is resolved now.&lt;/div&gt;
&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Thanks!!!!! &lt;br&gt;&lt;br&gt;&lt;div class=&quot;gmail_quote&quot;&gt;2009/12/9 Wolfgang Laun &lt;span dir=&quot;ltr&quot;&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26709337&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;wolfgang.laun@...&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br&gt;&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;&quot;&gt;
&lt;div class=&quot;im&quot;&gt;On Wed, Dec 9, 2009 at 12:32 PM, maven apache &lt;span dir=&quot;ltr&quot;&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26709337&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;apachemaven0@...&lt;/a&gt;&amp;gt;&lt;/span&gt; wrote:&lt;br&gt;&lt;/div&gt;&lt;div class=&quot;gmail_quote&quot;&gt;&lt;div class=&quot;im&quot;&gt;
&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;border-left:1px solid rgb(204, 204, 204);margin:0pt 0pt 0pt 0.8ex;padding-left:1ex&quot;&gt;
&lt;br&gt;&lt;br&gt;&lt;div class=&quot;gmail_quote&quot;&gt;2009/12/9 Wolfgang Laun &lt;span dir=&quot;ltr&quot;&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26709337&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;wolfgang.laun@...&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br&gt;&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;border-left:1px solid rgb(204, 204, 204);margin:0pt 0pt 0pt 0.8ex;padding-left:1ex&quot;&gt;


You are running JAXB runtime bundled with JDK 6 against JAva sources compiled with&lt;br&gt;a much older JAXB&amp;#39;s schema compiler xjc.&lt;br&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Sorry ,because I am not &lt;span style=&quot;font-family:arial,sans-serif;line-height:20px&quot;&gt; familiar with jaxb( I used to work with xmlbeans..),&lt;span style=&quot;font-family:arial;line-height:normal&quot;&gt; so do you mean my jdk version should be lower?&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;


&lt;div&gt;Because this is a third-part project, I do not have the schema. So I do not know which xjc they use.&lt;/div&gt;&lt;div&gt;In fact , not matter I use 1.5 or 1.6 ,the problem exists still.&lt;/div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;
This is revealing because JDK 1.5 came without JAXB support. This means that somewhere you have&lt;br&gt;
very old jaxb runtime jars containing the obsolete annotation class AccessType.&lt;br&gt;&lt;br&gt;Stick with JDK 1.6.&lt;br&gt;&lt;br&gt;I suggest you locate all jars (wherever they might be, referred to from Eclipse) and run&lt;br&gt;   jar -tf jaxb-api.jar | grep AccessType &lt;br&gt;

If this doesn&amp;#39;t show&lt;br&gt;   javax/xml/bind/annotation/XmlAccessType.class&lt;br&gt;but&lt;br&gt;   javax/xml/bind/annotation/AccessType.class&lt;br&gt;then throw it (and all others near it!) away.&lt;br&gt; &lt;/div&gt;&lt;div class=&quot;im&quot;&gt;&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;border-left:1px solid rgb(204, 204, 204);margin:0pt 0pt 0pt 0.8ex;padding-left:1ex&quot;&gt;

&lt;div class=&quot;gmail_quote&quot;&gt;&lt;br&gt;&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;border-left:1px solid rgb(204, 204, 204);margin:0pt 0pt 0pt 0.8ex;padding-left:1ex&quot;&gt;&lt;br&gt;PPS: Screenshots are nice, but the important info is hidden, i.e., the comment header&lt;br&gt;

of the generated Java source.&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;The header is here: &lt;a href=&quot;http://imagebin.org/74721&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;http://imagebin.org/74721&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;div&gt;
&lt;br&gt;Ugh, the timestamp is from June 2005, which is a liability. You&amp;#39;ll just have to hope that&lt;br&gt;
the code generated then doesn&amp;#39;t contain any snags. Alert the &amp;quot;third party&amp;quot; to the&lt;br&gt;pending risk.&lt;br&gt;&lt;br&gt;If you don&amp;#39;t have the schema (which is the usual way of communicating an XML interface,&lt;br&gt;NOT the Java classes that were generated in some setup), you should try and get it, or else&lt;br&gt;

hope that it hasn&amp;#39;t changed since.&lt;br&gt;&lt;br&gt;Cheers&lt;br&gt;-W&lt;br&gt;&lt;/div&gt;&lt;/div&gt;&lt;br&gt;
&lt;/blockquote&gt;&lt;/div&gt;&lt;br&gt;&lt;/div&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/java.net---jaxb-users-f13500.html&quot; embed=&quot;fixTarget[13500]&quot; target=&quot;_top&quot; &gt;java.net - jaxb users&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/error-%22Type-mismatch%3A-cannot-convert-from-XmlAccessType-to--AccessType%22-tp26704148p26709337.html" />
</entry>

</feed>
