2017-08-08 3 views
1

ジャクソンエラー:java.lang.NoSuchMethodErrorの: `com.fasterxml.jackson.databind.JsonNode.asText(Ljava/LANG /文字列;)Ljava/LANG/STRING`私はJWTの認証トークンを検証しようとした

JWTVerifier verifier = JWT.require(Algorithm.HMAC256("secret")).withIssuer("siat").build(); 
String token=httpRequest.getParameter("token"); 
DecodedJWT decodedJWT = verifier.verify(token); 

例外スタックトレースです:

java.lang.NoSuchMethodError: com.fasterxml.jackson.databind.JsonNode.asText(Ljava/lang/String;)Ljava/lang/String; 
+0

使用しているjava-jwtのバージョンはどれですか? –

+0

@ KDavid-Valerio 3.1.0

+0

あなたの 'pom.xml 'を質問に追加してください。 – unwichtich

答えて

1

文句を言う方法がある

ジャクソンデータバインド瓶の正しいバージョンを引っ張っているかどうか、あなたの依存関係グラフをチェック2.4.0以降ジャクソンdatabind.jar

何とかあなたのクラスパスにjarファイルの古いバージョンを持っている場合は、それが必要なメソッドを提供しませんのバージョンで使用できます。

+0

ありがとうございます。この問題は、POMファイルとGlassFishモジュールの依存関係が矛盾していました。 –

+1

@CHHIBIAMOR – Rizwan

1

あなたはMVN Repository、例えば、任意のMavenのリポジトリ内のjava-JWT依存関係を確認した場合、あなたよSEコンパイルがジャクソン・データバインドの必要なバージョンの依存関係の間(つまり、java.lang.NoSuchMethodErrorの例外をスローするものです) 。

あなたの場合、java-jwt 3.1.0バージョンでは、jackson-databindバージョン2.8.4または新しいバージョン2.9.0が必要です。

関連する問題