Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #20480 > unrolled thread

Seeking info on JAXB and custom annotations

Started bySebastian <sebastian@undisclosed.invalid>
First post2012-12-19 00:06 +0100
Last post2012-12-19 19:23 +0100
Articles 4 — 2 participants

Back to article view | Back to comp.lang.java.programmer


Contents

  Seeking info on JAXB and custom annotations Sebastian <sebastian@undisclosed.invalid> - 2012-12-19 00:06 +0100
    Re: Seeking info on JAXB and custom annotations Arne Vajhøj <arne@vajhoej.dk> - 2012-12-18 20:17 -0500
      Re: Seeking info on JAXB and custom annotations Sebastian <sebastian@undisclosed.invalid> - 2012-12-19 12:49 +0100
        Re: Seeking info on JAXB and custom annotations Sebastian <sebastian@undisclosed.invalid> - 2012-12-19 19:23 +0100

#20480 — Seeking info on JAXB and custom annotations

FromSebastian <sebastian@undisclosed.invalid>
Date2012-12-19 00:06 +0100
SubjectSeeking info on JAXB and custom annotations
Message-ID<kaqsov$hf1$1@news.albasani.net>
Does anyone know if (and how) it is possible to

a) generate Java classes with custom annotations from xsd schema, using 
xjc? (The annotations would be on fields, but placing them on the 
corresponding getters would be acceptable.) I have googled a bit, and 
one possibiliy appears to be the annox plugin.

b) marshall/unmarshall these classes to XML and back with JAXB, 
preserving the custom annotations? I have found no helpful information 
on this part of the problem.

By "custom annotations" I mean non-JAXB annotations that would be 
written by me.

-- Sebastian

[toc] | [next] | [standalone]


#20497

FromArne Vajhøj <arne@vajhoej.dk>
Date2012-12-18 20:17 -0500
Message-ID<50d11591$0$290$14726298@news.sunsite.dk>
In reply to#20480
On 12/18/2012 6:06 PM, Sebastian wrote:
> Does anyone know if (and how) it is possible to
>
> a) generate Java classes with custom annotations from xsd schema, using
> xjc? (The annotations would be on fields, but placing them on the
> corresponding getters would be acceptable.) I have googled a bit, and
> one possibiliy appears to be the annox plugin.

What form would the annotations have in the schema?

XML schema annotations does not seem to be a good match for
Java annotations.

> b) marshall/unmarshall these classes to XML and back with JAXB,
> preserving the custom annotations? I have found no helpful information
> on this part of the problem.

You do not marshall/unmarshall classes. You marshall/unmarshall
objects. But annotations are per class not per object.

I think clarification is needed.

Arne

[toc] | [prev] | [next] | [standalone]


#20517

FromSebastian <sebastian@undisclosed.invalid>
Date2012-12-19 12:49 +0100
Message-ID<kas9gj$q31$1@news.albasani.net>
In reply to#20497
Am 19.12.2012 02:17, schrieb Arne Vajhøj:
> On 12/18/2012 6:06 PM, Sebastian wrote:
>> Does anyone know if (and how) it is possible to
>>
>> a) generate Java classes with custom annotations from xsd schema, using
>> xjc? (The annotations would be on fields, but placing them on the
>> corresponding getters would be acceptable.) I have googled a bit, and
>> one possibiliy appears to be the annox plugin.
>
> What form would the annotations have in the schema?
>
> XML schema annotations does not seem to be a good match for
> Java annotations.

The Annotate Plugin page has a good explanation:
http://confluence.highsource.org/display/J2B/Annotate+Plugin

See also the Annox user guide for the view that
in fact Java annotations can be elegantly expressed as XML elements.
http://confluence.highsource.org/display/ANX/User+guide

Unfortunately, I have not been able to get the plugin to work so far, 
and am looking for alternative recommendations.

>> b) marshall/unmarshall these classes to XML and back with JAXB,
>> preserving the custom annotations? I have found no helpful information
>> on this part of the problem.
>
> You do not marshall/unmarshall classes. You marshall/unmarshall
> objects. But annotations are per class not per object.
>
> I think clarification is needed.
>
> Arne

I guess I was confused here by the fact that the XML representation of 
an object generated by JAXB will not contain annotation elements, but of 
course the annotation is part of the Java class that will be 
instantiated when unmarshalling.

(I am talking of custom annotation available at runtime via reflection, 
i. e. defined in the annotation class with 
@Retention(RetentionPolicy.RUNTIME). I want to be able to inspect the 
annotation on an object after it has been unmarshalled.)

-- Sebastian



[toc] | [prev] | [next] | [standalone]


#20574

FromSebastian <sebastian@undisclosed.invalid>
Date2012-12-19 19:23 +0100
Message-ID<kat0iv$9n9$1@news.albasani.net>
In reply to#20517
Am 19.12.2012 12:49, schrieb Sebastian:
> Am 19.12.2012 02:17, schrieb Arne Vajhøj:
>> On 12/18/2012 6:06 PM, Sebastian wrote:
>>> Does anyone know if (and how) it is possible to
>>>
>>> a) generate Java classes with custom annotations from xsd schema, using
>>> xjc? (The annotations would be on fields, but placing them on the
>>> corresponding getters would be acceptable.) I have googled a bit, and
>>> one possibiliy appears to be the annox plugin.
>[snip]

Please don't bother, I retract the question. Meanwhile, I've been able 
to integrate the Annotate Plugin for xjc into my maven build, and 
generating the annotations works just fine.

-- Sebastian

[toc] | [prev] | [standalone]


Back to top | Article view | comp.lang.java.programmer


csiph-web