JSON 経由でフォーム エントリを別のクライアント リソースに送信すると、415 エラーが発生します。以下のコードのターゲット URI ("/message") は、フォームを使用していない場合 (つまり、テスト モック オブジェクトで "/message" をヒット) に機能します。
フォームの値を取得し、ターゲット リソースに投稿するコードを次に示します。やらなければならないことがありませんか?
私は以下を使用しています:
- レストレット: 2.1 RC5
- GAE: 1.6.1
フォームレストレット:
@Post
public void handlePost(Representation entity) {
final Form webForm = new Form(entity);
MessageEntity newMessage = new MessageEntity();
String subject = webForm.getFirstValue("subject");
String sendto = webForm.getFirstValue("email");
String message = webForm.getFirstValue("message");
newMessage.setCategoryID(subject);
newMessage.setAccountID(sendto);
newMessage.setMessageText(message);
ClientResource cr = new ClientResource(getRootRef()+ "/message");
cr.post(newMessage, MediaType.APPLICATION_JSON);
}
ターゲット リソース (「/メッセージ」)
@Post("json")
public void HandleRequest(MessageEntity messageEntity) {
// Logic here
}
さらに情報が必要な場合はお知らせください
ありがとう!