2013-09-06 2 views
2

Нашел этот пример, именно то, что я хочу: MOXy's @XmlVariableNode - Using a Map's Key as the Node Name, но не повезло использовать его в приложении для моего Джерси 2.2.Как использовать @XmlVariableNode в Джерси?

@XmlVariableNode("key") на MapAdapter.AdapterdMap.entry дает ошибку компиляции:

XmlVariableNode cannot be resolved to a type

ответ

1

Причина в том, org.eclipse.persistence.oxm.annotations.XmlVariableNode доступен только в org.eclipse.persistence.moxy (EclipseLink Moxy) 2.5.1 и 2.6.0, которые доступны только в ночной сборке на данный момент.

Чтобы заставить его работать с Джерси 2.2, который использует 2.5.0 из EclipseLink Moxy, используйте следующие зависимости pom.xml:

<dependency> 
    <groupId>org.glassfish.jersey.media</groupId> 
    <artifactId>jersey-media-moxy</artifactId> 
    <version>2.2</version> 
    <exclusions> 
     <!-- To get early access to org.eclipse.persistence.oxm.annotations.XmlVariableNode --> 
     <!-- TODO get rid of exclusion and use jersey.version=2.3 when it's released --> 
     <exclusion> 
      <groupId>org.eclipse.persistence</groupId> 
      <artifactId>org.eclipse.persistence.moxy</artifactId> 
      <!--<version>2.5.0</version>--> 
     </exclusion> 
    </exclusions> 
</dependency> 
<dependency> 
    <!-- To get early access to org.eclipse.persistence.oxm.annotations.XmlVariableNode --> 
    <groupId>org.eclipse.persistence</groupId> 
    <artifactId>org.eclipse.persistence.moxy</artifactId> 
    <version>2.5.1-RC1</version> 
</dependency> 

и вы будете нуждаться в хранилище SNAPSHOT, а также:

<repositories> 
    <repository> 
     <id>oss.sonatype.org</id> 
     <name>OSS Sonatype Staging</name> 
     <url>https://oss.sonatype.org/content/groups/staging</url> 
    </repository> 
</repositories> 

Обратите внимание, что 2.5.1-RC1 - это [более] стабильная сборка, в качестве альтернативы вы можете использовать 2.5.1-SNAPSHOT или 2.6.0-SNAPSHOT. Для получения дополнительной информации см зависимостей

Всякий раз, когда они выпускают новую версию, вы можете удалить снимок/RC тег, чтобы посмотреть новости: http://wiki.eclipse.org/EclipseLink; the proposed 2.5.1 date is 27th September 2013

Согласно Jersey's Road Map 2.3 выходит 23 сентября 2013 года, поэтому невозможно включить 2.5.1 ..., поэтому, возможно, 2.4, до тех пор ... ждать его ... исключения зависимости.

Смежные вопросы