2012-02-02 7 views
2

次のJAX-RSサービスがあります。JSONリクエストのデータフィールドにアクセスする方法JAX-RSでFlexクライアントから送信

@Path("config") 
public class ConfigurationResponder { 

    @GET 
    @Produces({"application/json"}) 
    @Consumes({"application/json"}) 
    public SomeResponse handleMessage() { 

     SomeResponse response = new SomeResponse(); 
     // calculations... 
     return response; 
    } 
} 

私はFlexクライアントでリクエストを作成します。

var message:Object = {}; 
message.type = "get_configuration"; 
message.data = "some data"; 

var request:URLRequest = new URLRequest(fullUrl); 
request.contentRype = "application/json"; 
request.data = message; 
request.method = URLRequestMethod.GET; 

var loader:URLLoader = ... 
loader.load(request); 

JAX-RSサービスはリクエストを受信して​​、いくつかのダミー応答で正常に応答するが、私はrequest.dataフィールドにアクセスできません。

リクエストメッセージ(この特定の例では{"type":"get_configuration","data":"some data"})のデータにアクセスするにはどうすればよいですか?私は私が

public SomeResponse handleMessage(Object message) {... 

ようhandleMessage方法にいくつかのパラメータを追加することになってると思いますが、これはまったく機能しません。リクエストは415応答を得ました。

答えて

2

クエリ引数をメソッドの引数として登録するには、@QueryParamを使用する必要があります。

public SomeResponse handleMessage(@QueryParam("query") String data) { 
    // ... 
} 
+0

10x。なぜ 'データ'の代わりに 'クエリー'なのか - 私は本当にわかりませんが、Flex URLRequestクラスを適切な方法で使用しなかったと思います。 – fiction

+0

ようこそ。申し訳ありませんが、私はそれを使ったことはありません。 – BalusC

関連する問題