JavaのRESTfulWebサービスにJerseyを使用しています。私はPHPクライアントからそれらを消費しています。私はそれを次のようにJSONでうまく動作させています:
PHP :( httpful pharを使用)
$uri="http://localhost:8080/YYYYY/rest/common/json";
$r = \Httpful\Request::post($uri)
->body({"name":"MyName"})->send();
return $r;
Java RESTful WS:
@POST
@Path(value="json")
@Produces(MediaType.TEXT_HTML)
@Consumes(MediaType.APPLICATION_JSON)
public String jsonTest(final JaxData data)
{
System.out.println(data.toString());
return "this is the name: "+data.name;
}
Javaバインディングクラス:
@XmlRootElement
public class JaxData {
@XmlElement public String name;
}
今私がしたいのは、次のJSON構造を送信することです。
{
"title":"MyTitle",
"names":[
{
"name":"nameOne"
},
{
"name":"nameTwo"
}
],
"city":"MyCity",
"country": "MyCountry"
}
ご覧のとおり、Javaのプリミティブ型とは別に、オブジェクト内にオブジェクトを送信したいと思います。Java側からこれを行うにはどうすればよいですか?ありがとうございました!