2012-04-08 4 views
0

Я пытаюсь сделать веб-сервис с Jax-RS (используя Glassfish 3.1.1, все RI). Класс Question аннотируется с помощью @XmlRootElement и имеет этот метод. Я не аннотировал его с любыми аннотациями Jax-RS. Я ожидал, что вы получите один элемент ответов, в котором есть все элементы ответа внутри ... но это явно не так. Как мне это? Класс Answer также аннотируется с помощью @XmlRootElement.Веб-служба Java генерирует неправильный ответ

@OneToMany(cascade = CascadeType.ALL) 
public List<Answer> getAnswers() { 
    return answers; 
} 

Это ответ:

<questions> 
<question> 
    <answers> 
     <correct>true</correct> 
     <description>Answer one</description> 
     <id>1</id> 
    </answers> 
    <answers> 
     <correct>false</correct> 
     <description>Answer two</description> 
     <id>2</id> 
    </answers> 
    <description>Question One</description> 
    <id>1</id> 
    <imageName>hello.png</imageName> 
    <status>SUBMITTED</status> 
</question> 
... 
</questions> 
+0

Пожалуйста, обратите внимание, показывая другие классы вы ссылаетесь. Если проблема существует в этом коде, мы не можем помочь вам определить ее :(Возможно, также покажем пример ответа, который вы ожидаете. – jmort253

+0

Но я уже дал вам ответ? Это XML. – LuckyLuke

+0

Извините, это wasn я не понимаю, что вы пытались сделать, поскольку вы упоминаете другие классы - например, неуловимый класс вопросов - которые вы не указали. Похоже, кто-то мог ответить хотя. :) – jmort253

ответ

1

аннотаций вы ищете является XMLElementWrapper

@XMLElementWrapper("answers") 
@XMLElement("answer") 
private List<Answer> answers; 

Если вам

<answers> 
    <answer>...</answer> 
    <answer>...</answer> 
</answer> 
+0

Спасибо! Теперь это работает. – LuckyLuke

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