2016-11-01 11 views
0

私のWebサービスのJavaクラスがこのメディアタイプがサポートされない415エラーが発生するのはなぜですか?

@Path("/signUp") 
public class SignUpService{ 
    (POST) 
    @Path("/sendCode") 
    @Consumes(Media_APPLICATION_JSON) 
    @Produces(Media_APPLICATION_JSON) 
    public String signUp(Incoming streamingData){ 
     //some logic goes here 
     return someString; 
    } 
    return someString; 
} 

//上記のコードで容赦ようになり、私は私は、Apache上で動作しているサーバーのコードを持って

を次のように私は問題をrecollect.Realことができるものに基づいて、それを入力しました私のMacではtomcatを使用し、POSTMANを使用してJSON本体でPOSTリクエストを送信するときに動作します。

私はAWS Ubuntuのtomcatに同じコードをデプロイしましたが、Media Typeがサポートされていない415エラーが発生します。しかし、GETリクエストはローカルマシンとAWSの両方のデプロイメントでうまく動作しています。

+0

[Request Dumper Filter](https://tomcat.apache.org/tomcat-8.0-doc/config/filter.html#Request_Dumper_Filter)を追加して、どのヘッダーがリクエストに含まれているかを確認してください。 – Andreas

答えて

0

解決策を見つけました。私はクラスレベルで

@Consumes(Media_APPLICATION_JSON) 
@Produces(Media_APPLICATION_JSON) 

を追加しませんでした。以下の変更を行う

は、Mavenを使用した場合のpom.xmlに以下の依存関係を追加

@Path("/signUp") 
@Consumes(Media_APPLICATION_JSON) 
@Produces(Media_APPLICATION_JSON) 
public class SignUpService{ 
0

この問題を解決するには、クラスレベルで次のアノテーションを追加する必要はありません。

@Consumes(Media_APPLICATION_JSON) @Produces(Media_APPLICATION_JSON)

はあなたがジャージの@consume注釈のコンテンツタイプと一致する必要があります要求にヘッダーで送信されているコンテンツタイプを確認する必要があります。

関連する問題