sainaen
13906d3746
Implement type conversions of integral claim values
...
Jackson chooses the target type for JSON numbers based on their value,
while deserializing without correct typing information present.
This leads to a confusing behavior:
String token = Jwts.builder()
.claim("byte", (byte) 42)
.claim("short", (short) 42)
.claim("int", 42)
.claim("long_small", (long) 42)
.claim("long_big", ((long) Integer.MAX_VALUE) + 42)
.compact();
Claims claims = (Claims) Jwts.parser().parse(token).getBody();
claims.get("int", Integer.class); // => 42
claims.get("long_big", Long.class); // => ((long) Integer.MAX_VALUE) + 42
claims.get("long_small", Long.class); // throws RequiredTypeException: required=Long, found=Integer
claims.get("short", Short.class); // throws RequiredTypeException: required=Short, found=Integer
claims.get("byte", Byte.class); // throws RequiredTypeException: required=Byte, found=Integer
With this commit, `DefaultClaims.getClaim(String, Class<T>)` will
correctly handle cases when required type is `Long`, `Integer`, `Short`
or `Byte`: check that value fits in the required type and cast to it.
// ... setup is the same as above
claims.get("int", Integer.class); // => 42
claims.get("long_big", Long.class); // => ((long) Integer.MAX_VALUE) + 42
claims.get("long_small", Long.class); // => (long) 42
claims.get("short", Short.class); // => (short) 42
claims.get("byte", Byte.class); // => (byte) 42
Fixes #142 .
2016-09-20 12:49:01 +03:00
Les Hazlewood
8966c3a912
Added minor update to jackson version docs
2016-09-12 17:50:24 -07:00
Les Hazlewood
29241c3b66
[maven-release-plugin] prepare for next development iteration
2016-09-12 17:37:12 -07:00
Les Hazlewood
c86c775caf
[maven-release-plugin] prepare release 0.7.0
2016-09-12 17:37:08 -07:00
Les Hazlewood
67dbc7701f
Merge pull request #167 from jwtk/0.7.0-release-prep
...
0.7.0 release prep
2016-09-12 17:34:54 -07:00
Les Hazlewood
cfeeb6e5cd
Added release notes and doc update for the 0.7.0 release.
2016-09-12 17:23:18 -07:00
Les Hazlewood
0da903f214
Added release notes and doc update for the 0.7.0 release.
2016-09-12 17:22:41 -07:00
Les Hazlewood
c13362dafa
Added release notes and doc update for the 0.7.0 release.
2016-09-12 17:20:47 -07:00
Les Hazlewood
b13650dc60
Merge branch '61-edits' and MichaelSims-master
2016-09-12 16:44:33 -07:00
Les Hazlewood
6c4b58e4fe
edits to exception message to be a little more helpful and to ensure previous GH issue tests passed
2016-09-12 16:40:52 -07:00
Les Hazlewood
ab4f9ff9e8
edits to exception message to be a little more helpful and to ensure previous GH issue tests passed
2016-09-12 16:39:17 -07:00
Les Hazlewood
8f1b528d8c
Minor edits to @MichaelSims pull request - prepping for release
2016-09-12 16:12:30 -07:00
Les Hazlewood
a06e35cf84
Merge branch 'MichaelSims-master' into 61-edits
2016-09-12 16:04:54 -07:00
Les Hazlewood
ff932e9838
Merge branch 'master' of https://github.com/MichaelSims/jjwt into MichaelSims-master
...
# Conflicts:
# src/main/java/io/jsonwebtoken/impl/DefaultJwtParser.java
2016-09-12 16:03:53 -07:00
Les Hazlewood
af01cca922
122: added code comments so readers understand that JWT mandates seconds, not milliseconds
2016-09-12 10:37:34 -07:00
Les Hazlewood
5b15b9363e
Merge pull request #165 from jwtk/107-ex-msg-utc-format
...
107: ensured exception message printed UTC times correctly
2016-09-11 14:09:44 -07:00
Les Hazlewood
1974069561
107: ensured exception message printed UTC times correctly
2016-09-11 14:04:20 -07:00
Les Hazlewood
0f63ec8012
Merge pull request #117 from matzon/master
...
implement hashCode and equals in JwtMap
2016-09-11 12:57:02 -07:00
Les Hazlewood
0fb8ffcb76
Merge pull request #164 from jwtk/161-lib-versions
...
161: upgraded library versions to latest stable
2016-09-11 12:54:43 -07:00
Les Hazlewood
55fcf190cc
Merge pull request #162 from maurociancio/patch-2
...
Fix typo.
2016-09-11 12:49:44 -07:00
Les Hazlewood
79e95856a4
161: upgraded library versions to latest stable
2016-09-11 12:48:48 -07:00
Mauro Ciancio
77dcd9a9b3
Fix typo
2016-09-08 11:56:17 -03:00
Les Hazlewood
f522abe2cb
Merge pull request #158 from benbenw/parser-perf
...
improve jwt parser memory allocation
2016-08-31 12:23:20 -04:00
Les Hazlewood
8e26b937f6
Merge pull request #159 from benbenw/ignore-eclipse
...
add eclipse files to gitignore
2016-08-31 12:21:53 -04:00
benoit
d13d2eeffe
add eclipse files to gitignore
2016-08-31 16:54:10 +02:00
benoit
9735d1ad98
improve jwt parser memory allocation
...
re-use buffer instead of creating new ones
avoid creating unneeded buffers in the Strings util methods
Stop continuously copying array with StringBuilder#deleteCharAt
work directly on StringBuilder instead of creating a temporary String
test added to cover the modified methods
2016-08-31 16:39:42 +02:00
Michael Sims
3fb794ee91
#61 : Add support for clock skew to JwtParser for exp and nbf claims
2016-08-29 16:34:00 -05:00
Les Hazlewood
0408313d3f
Merge pull request #150 from mike9005/patch-1
...
Fix ES512 description typo in README
2016-07-21 13:08:54 -07:00
Michael Collis
c5ae6f53f1
Fix ES512 description typo in README
2016-07-21 15:30:36 -04:00
Les Hazlewood
3bd425a63d
updated coveralls logo
2016-07-04 12:16:16 -07:00
Les Hazlewood
e55ea34e95
Merge pull request #105 from aarondav/patch-2
...
Avoid potentially critical vulnerability in ECDSA signature validation
2016-07-04 11:56:48 -07:00
Les Hazlewood
8e6e165c1d
Merge pull request #141 from jwtk/coveralls_jacoco
...
updated to jacoco as only jacoco supports java 8
2016-07-04 11:52:20 -07:00
Les Hazlewood
07534487d3
Merge pull request #132 from alexanderkjall/patch-1
...
javadoc typo
2016-07-04 11:51:28 -07:00
Micah Silverman
82f4b0a696
updated to jacoco as only jacoco supports java 8 per: https://github.com/trautonen/coveralls-maven-plugin#faq
2016-07-04 01:01:42 -04:00
Les Hazlewood
09c96ce305
Merge pull request #140 from jwtk/readme_update
...
Readme update and move Changelog to its own file
2016-07-03 12:36:53 -07:00
Micah Silverman
7a2808af12
Expanded on intro section.
2016-07-03 12:29:13 -04:00
Micah Silverman
b053834dae
Updated README with more examples
2016-07-03 12:29:13 -04:00
Micah Silverman
78cb1707d7
moved older jackson section back into readme
2016-07-03 12:29:13 -04:00
Micah Silverman
0899261074
Separated CHANGELOG from README
2016-07-03 12:29:13 -04:00
Les Hazlewood
ceac032f11
Merge pull request #137 from martintreurnicht/master
...
Fixed ECDSA Signing and verification
2016-06-30 14:11:08 -07:00
Martin Treurnicht
c3e5f95242
Added more descriptive backwards compatibility information
2016-06-30 13:46:07 -07:00
Martin Treurnicht
174e1b13b8
Add back swarm test for 100% coverage
2016-06-28 12:19:54 -07:00
Martin Treurnicht
61510dfca5
Cleanup as per request of https://github.com/lhazlewood
2016-06-28 12:12:40 -07:00
Martin Treurnicht
c60deebb64
Removed java 8 dependencies in test
2016-06-27 16:02:06 -07:00
Martin Treurnicht
a73e0044b8
Fixed ECDSA Signing and verification to use R + S curve points as per spec https://tools.ietf.org/html/rfc7515#page-45
2016-06-27 15:43:35 -07:00
Alexander Kjäll
26a14fd3c3
javadoc typo
...
Updated the number of bits for the HS512 algorithm in the javadoc comment.
2016-06-13 14:40:35 +02:00
Brian Matzon
f08386c63b
formatting
2016-06-08 00:20:23 +02:00
Brian Matzon
4be4912cb2
moved Java test into groovy
2016-06-06 23:43:52 +02:00
Brian Matzon
39ee58a511
implement hashCode and equals in JwtMap
2016-04-27 12:15:36 +02:00
Les Hazlewood
29f980c5c9
coverage improvements. Removed unnecessary line from DefaultClaims
2016-04-17 14:26:28 -07:00