jerseyとiのフォームからデータを取得しようとしていますが、これは簡単な作業ですが、何かPOSTしようとするとエラーが発生します。Jersey 2.0を使用してフォームをPOSTする方法
Caused by: java.lang.IllegalStateException: The @FormParam is utilized when the content type of the request entity is not application/x-www-form-urlencoded
at org.glassfish.jersey.server.internal.inject.FormParamValueFactoryProvider$FormParamValueFactory.ensureValidRequest(FormParamValueFactoryProvider.java:126)
at org.glassfish.jersey.server.internal.inject.FormParamValueFactoryProvider$FormParamValueFactory.getForm(FormParamValueFactoryProvider.java:111)
at org.glassfish.jersey.server.internal.inject.FormParamValueFactoryProvider$FormParamValueFactory.get(FormParamValueFactoryProvider.java:94)
at org.glassfish.jersey.server.internal.inject.AbstractHttpContextValueFactory.provide(AbstractHttpContextValueFactory.java:65)
at org.glassfish.jersey.server.spi.internal.ParameterValueHelper.getParameterValues(ParameterValueHelper.java:80)
... 36 more
これはスタックトレースの関連する部分だと思います。 今のコードのために私が使用しています:
@POST
@Path("/delete")
@Produces("application/json")
public String delete(@FormParam("id")String id){
をそして私はこのようなテストhtmlページを使用してPOSTしようとしています:私はそれを動作させるためにしようとしませんが、チャンスきた
<form action="<path to the server>/delete" method="post">
primary_id: <input type="text" name="primary_id" /><br />
<input type="submit" value="Submit" />
</form>
。私はmultipart-form-dataで@Consumes()アノテーションを追加しようとしましたが、実際には動作させることはできません。私は誰かが私に手を差し伸べることを望む。
トライ消費します(アプリケーション/ x-www-form-urlencodedで) – basiljames
私が試してみましたが、同じ結果を持っていました。 – XFCC