1

技術スタック: Java 1.6、JAXB、Spring 3、JAX-RS (RESTEasy)、XSD

こんにちは、

Spring と JAX-RS を使用して、RestFul Web サービスを作成しています。

生成された応答にセッター情報が含まれていることを除いて、すべてが正常に機能しています。

  {
    ...

    "setName": true,
    "setId": true,
    "setAddress": true,
    "setAge": true,
}

何が原因なのかわからない?どうすればこれをオフにできますか?

アディ

更新 1:

PersonRequest クラスは JAXB によって生成され、すべての javax.xml.bind.annotation.* 注釈を含みます。

@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = { "personResponse " })
@XmlRootElement(name = "PersonResponse ")
public class PersonResponse {

    @XmlElement(name = "Name", required = true)
    protected String name;

    @XmlElement(name = "Id", required = true)
    protected String id;

    // and the setters and getters



}

リソースは次のようになります。

@Component
@Path("/person")
public class PersonImpl implements Person {

    @Override
    @GET
    @Produces({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, "application/x-amf" })
    @Path("v1")
    public PersonResponse getPerson() {

       ....
       ....
    }


}

** UPDATE 2 ** これは、Content-Type が json の場合にのみ発生します。Content Type が「xml」の場合、セッターは返されません。それが役立つ場合。

4

2 に答える 2

0

問題はxjbファイルにありました。詳細については、ここの関連する質問を参照してください。

于 2012-10-12T14:09:45.200 に答える
0

スタックの他の部分がドメイン モデルに余分なフィールドを織り込んでいると思われます (つまり、一部の ORM ライブラリがこれを行います)。java.lang.reflectAPI を使用して、 ClassLoader.

于 2012-09-27T12:12:09.747 に答える