{"record":{"id":"887d0a44df5fe940","repo":"jwtk/jjwt","slug":"the-specified-signingkeyresolver-implementation-do-887d0a","errorCode":null,"errorMessage":"The specified SigningKeyResolver implementation does not support content JWS signing key resolution.  Consider overriding either the resolveSigningKey(JwsHeader, byte[]) method or, for HMAC algorithms, the resolveSigningKeyBytes(JwsHeader, byte[]) method.","messagePattern":"The specified SigningKeyResolver implementation does not support content JWS signing key resolution\\.  Consider overriding either the resolveSigningKey\\(JwsHeader, byte\\[\\]\\) method or, for HMAC algorithms, the resolveSigningKeyBytes\\(JwsHeader, byte\\[\\]\\) method\\.","errorType":"exception","errorClass":"UnsupportedJwtException","httpStatus":null,"severity":"error","filePath":"api/src/main/java/io/jsonwebtoken/SigningKeyResolverAdapter.java","lineNumber":118,"sourceCode":"    public byte[] resolveSigningKeyBytes(JwsHeader header, Claims claims) {\n        throw new UnsupportedJwtException(\"The specified SigningKeyResolver implementation does not support \" +\n                \"Claims JWS signing key resolution.  Consider overriding either the \" +\n                \"resolveSigningKey(JwsHeader, Claims) method or, for HMAC algorithms, the \" +\n                \"resolveSigningKeyBytes(JwsHeader, Claims) method.\");\n    }\n\n    /**\n     * Convenience method invoked by {@link #resolveSigningKey(JwsHeader, byte[])} that obtains the necessary signing\n     * key bytes.  This implementation simply throws an exception: if the JWS parsed is a content JWS, you must\n     * override this method or the {@link #resolveSigningKey(JwsHeader, byte[])} method instead.\n     *\n     * @param header  the parsed {@link JwsHeader}\n     * @param content the byte array payload\n     * @return the signing key bytes to use to verify the JWS signature.\n     */\n    @SuppressWarnings(\"unused\")\n    public byte[] resolveSigningKeyBytes(JwsHeader header, byte[] content) {\n        throw new UnsupportedJwtException(\"The specified SigningKeyResolver implementation does not support \" +\n                \"content JWS signing key resolution.  Consider overriding either the \" +\n                \"resolveSigningKey(JwsHeader, byte[]) method or, for HMAC algorithms, the \" +\n                \"resolveSigningKeyBytes(JwsHeader, byte[]) method.\");\n    }\n}\n","sourceCodeStart":100,"sourceCodeEnd":124,"githubUrl":"https://github.com/jwtk/jjwt/blob/fb71496164c71442d08adec4571d9616ed5e1b8d/api/src/main/java/io/jsonwebtoken/SigningKeyResolverAdapter.java#L100-L124","documentation":"Error \"The specified SigningKeyResolver implementation does not support content JWS signing key resolution.  Consider overriding either the resolveSigningKey(JwsHeader, byte[]) method or, for HMAC algorithms, the resolveSigningKeyBytes(JwsHeader, byte[]) method.\" thrown in jwtk/jjwt.","triggerScenarios":"Thrown at api/src/main/java/io/jsonwebtoken/SigningKeyResolverAdapter.java:118 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Override resolveSigningKey(JwsHeader, byte[]) or resolveSigningKeyBytes(JwsHeader, byte[]) in your SigningKeyResolverAdapter to handle content (payload) JWSs.","Use a Claims-specific resolver only when parsing Claims JWSs; for byte-payload JWSs implement the byte[] variants.","Consider extending SigningKeyResolverAdapter only for the JWS type you actually parse, or implement SigningKeyResolver directly."],"exampleFix":null,"handlingStrategy":"fallback","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"fb71496164c71442d08adec4571d9616ed5e1b8d","analyzedAt":"2026-09-09T00:33:09.982Z","contentChangedAt":"2026-09-09T00:33:09.982Z","schemaVersion":2},"datasetVersion":"2026-09-17T15:17:12.973Z"}