2012-02-10 21 views
1

私はJAX RSアーキテクチャの初心者です。JAX RS、json出力で配列が見つかりません

@XmlRootElement 
public class DatoBase 

    { 

     private int _id; 
     private String _name; 
     private int[] _listId; 

//...here all get and set methods 
} 

このクラスには、配列(_listId)が正しく初期化されているのがわかります。 私は私のウェブサービス、DatoBaseのことを正しくistantiateとPOST新しい要素を作った、と私は、この要素を取得するための方法を作った、それは次のとおりです。

DATIは次のように宣言されている
@GET 
    @Produces("application/json") 
    @Path("{id}") 
    public DatoBase GetDato(@PathParam("id") int dId) 
    { 
     return dati.get(dId); 
    } 

private TreeMap<Integer,DatoBase> dati = new TreeMap<Integer,DatoBase>(); 

私はすでに投稿した要素を取得しようとするけど、私はこの構造を参照してください。

{"id":"0","name":"Dato10"}

私はこの出力で(3つの要素で初期化された)私の_listId構造を見ることができません。

私はこのような出力を期待:

{"id":"0","name":"Dato10","listId":[...]}

誰も私を助けてもらえますか理由を教えて? ありがとう

+0

あなたのクラスにjavax.xml.bind.annotation.XmlRootElementでアノテートしましたか? (あなたのコードの書式も見てください) – perissf

+0

はい私は正しく注釈を付けました。私はこのスレッドで報告することを忘れています。 – Marco

答えて

0

@XmlElementWrapperで配列に注釈を付ける必要があります。

@XmlElementWrapper 
private int[] _listId; 

さらなる参照のためにhereを参照してください。

関連する問題