Copybara import of the project:

  - 6389c7c69453355ea6e3a998210e89361112d86f Initial commit by Eclipse Webmaster team <webmaster@eclipse.org>
  - b1e8ec8e2d4e657e9796cdd6b964359cb0d1cb8e Merge with old EclipseLink repository. History is preserv... by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - 573e776b68cb7b52570b1314847efda1779823d3 README.md for GitHub by Dmitry Kornilov <maiden168@gmail.com>
  - d7ac18f33c71a9c236a176a3188c228957e83946 Main package renamed to org.eclipse.yasson by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - 906d26722a85f4ce0e4b0611080b2affbf8a56a3 SPI service provider by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - 98fb86162cf82afd25370e315bbd61ad6c978cb9 Sync from eclipselink/jsonb by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - d247e1cf9be519c9a05ddafe0b030c6b49f63f07 Uploading to Eclipse Nexus task added to the build script. by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - dc2d27a752d335de7ba04ef9381f7aa36978d981 Fix the error on serialization/deserialization of classse... by Ehsan Zaery Moghaddam <zaerymoghaddam@gmail.com>
  - 15a5d434c0923d6f5ac4e8edff25abfb0aded042 DatesTest fixes. by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - acda0ec7645c48bc579b2f187e2b866c8f0f8671 Fix issue #2 (#4) by Ehsan Zaery Moghaddam <zaerymoghaddam@gmail.com>
  - 98b6843d725b004042f6e88779e7e4b97e27cd8a Issue #3 - Fix a bug in deserialization of empty strings ... by Ehsan Zaery Moghaddam <zaerymoghaddam@gmail.com>
  - 8c67dec6e5bcd1e2c4b74c98c84837add34874af M1 release by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - 6480a5834a7a2695b19230a081354eed63fda08f Version number restored by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - b1c75f280baae6fc0d981182d13107a60b5d38a4 Collection serialization optimizations by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - 7067f86a503ac9696ea96d082a8b7918841eb037 Updated gradle wrapper, added opens for java.base/java.la... by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - 31da1073c2dca6b76aa6c52bd4a9c266b5a8da22 Added JDK9 module configuration. Project mavenized, build... by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - 49764aea60041ca146b69cd6263320f4c399b356 JsonbCreator fixed - JsonbProperty on parameters are now ... by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - c57cae0a0226257587babbefbf346b54e6a87609 Add java.net public repository to access jsonb api artifa... by Ehsan Zaery Moghaddam <zaerymoghaddam@gmail.com>
  - a2cec8fa7efc810b6b5a95599e555781ebc5aa4e JsonbCreator JsonbProperty is now not required by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - f9dcc80019743627b9ece2a741d148dbff21a21a Distribution management fixed in pom.xml. Snapshot versio... by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - 6d68e91dacb8e8550c0c33206c3e0bc9822fe946 Fixed typos in class/method names (#12) by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - 988dde7dfc496b63efe83e576ed16fc827df8962 Javadoc fixes. by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - cc4152b8c168d9bc781f4cd400e773c7660efbae Javadoc fixes. by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - ea995cd3096f84df9cacda8b8b095de89ef91699 Merge pull request #13 from moghaddam/yasson-issue-11 by Roman Grigoriadi <bravehorsie@gmail.com>
  - 7605393ff4fa88d106d9d7b327a46a5970e1ce38 yasson-6 nulls should be deserialized as empty optionals ... by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - f00cc59b62d50bba983248a412808c982b3975f5 yasson-10 Fix JsonbDateFormat on getters/setters (#15) by Ehsan Zaery Moghaddam <zaerymoghaddam@gmail.com>
  - eed57470a8b2c8a16eda8208c07e6f04ac45303c yasson-9 Fix time zone issue on integration tests (#16) by Ehsan Zaery Moghaddam <zaerymoghaddam@gmail.com>
  - 34a7103c630bb2f0df48372bfbcec3c9656759f2 Fixed moving parser for array user deserializer by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - 088829c6570a30e88201a7af7ff954f6134563df Fixed partial property overrides by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - bedd4149a8f81d06377f5d437c08c433061434ed fixed deserialization ordering by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - 70b566953b4f936a32e697f7fc6c742dd06d9a91 fixed deserialization for specific collection interfaces. by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - 6e94399fdd813f5613d7c7106e98b5649c959709 Fix for float serialization + single value without wrappe... by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - 5a9c294888846111716c22df9cde4582a38055b7 yasson 9 Fix JsonbTransient on getters and setters (#17) by Ehsan Zaery Moghaddam <zaerymoghaddam@gmail.com>
  - 5e23aaee4d7d6fa29882ca542445fec2a15413ac Fixed deserialization of Optional objects by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - 595b089d7fd6324dda646c1343fc47dbb8ae78ad Fixed serialization of BigDecimal upcasted to Number with... by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - d69c65a3e1c204cf42d8413853a46a2d5fd27f07 Fixed jsonbconfig Nillable by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - d3056c7e13e819e6f73cdc9e9fa084a8cfeec652 Support for new property - FAIL_ON_UNKNOWN_PROPERTIES in ... by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - f74b354792fa92916c2e39fd27d7be1a562c789e JSON-B API dependency changed to version 1.0.0-SNAPSHOT by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - db06a6f10241554c91ba17fb96cae01e7d9f79d8 Static methods starting with get are no longer treated as... by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - fcc9b1e27160555af7dc7da76059947c69bcbbfe Fixed synthetic field recognition by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - 7695e40983b39b60937f5a57a4773c070423a25b Fixed deserialization JsonObject into JsonValue type by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - 920c85a8062590502597ff91fcb88064b6f80e08 Config properties externalized to wrapper class by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - 1c024add880636a147d303b27bf70fd74b8970a2 Adapted FAIL_ON_UNKNOWN_PROPERTIES removal from API by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - f7ce859dc05df962ea95458ccfcb216f32574f37 Refactoring on date formats resolution by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - 7bf9fe4f41b23667a3e4fe5ce19a8946f7982f1d IJson fixes, Date, Calendar by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - 88caf35781c46d3be6a6c5d0bd05af770ddf24cd Fixed timezone issue on unit test to make it run properly... by Ehsan Zaery Moghaddam <zaerymoghaddam@gmail.com>
  - 754c84b0954d1c101d3844676fa892abf6309251 Undo changes which meant to be a fix for the junit failur... by Ehsan Zaery Moghaddam <zaerymoghaddam@gmail.com>
  - d351dcc8c04a68e2d0c92334e045c96fefd17602 Instant respects JsonbDateFormat and iJson by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - 86d55909733011ed2d36e56492d8da3be5f0a4ac java.time.DateTimeFormat is used to process java.util.Dat... by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - 2cdf427914a44f0669b29d2ec62f5c88c686e212 Fixed java.time.LocalDate with IJson by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - 24aae6f76f325c3cb1f71f4d83839dba0f864aae Fixed local date time by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - 1183bba458206743c73c811e3326ed3e317fda90 IJson single value test fixed by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - 1364294b7b9a6bbdd3e2d676617a8312e733acd0 Fixed calendar deserializer in case time information is m... by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - e371f555f1af9528b6abed3bf74e2deb0f559998 Merge pull request #19 from Verdent/master by Roman Grigoriadi <bravehorsie@gmail.com>
  - 4eca15291a5a86857b029aa30445303cdd76efef BigDecimal in Number fix (#20) by David Král <Verdent@users.noreply.github.com>
  - ae9efc7587409a6a287c1144114fa24b074b5059 Added some tests from TCK, fixed resource for zone offset... by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - de95ab03527c152d8ebf02164253f0352840f217 Added test for Raw non collection generic bound, updated ... by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - a9e2c54ec39eea4090c78d95952be693d053a9dd Fixed date locale test to work both on JDK8 and 9 by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - 8b99d85d1b72e7734e22ba33938ff99b4b9bf7d5 All parameters from @JsonbCreator are now required to be ... by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - 9603fe1460e3b0eaf1ba122bab81f5c6f626b990 New test for property ordering by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - b6cd2e49c6a3abcb71157177e2e971013f97ac7c Deserialization of timezone by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - 9b300f3211f6c7a0c56d52cec08456ccb765b00b JsonbException on error parsing dates by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - b0dd424fe08cd534192802322141558bb91271a6 PropertyOrdering for serialization, in case of inheritanc... by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - 81b93e6361b050a322a9d1f4b70d48278eaf3fb9 Fixed typo in exception name. by Roman Grigoriadi <roman.grigoriadi@oracle.com>
  - 367ad6ca2e7d41f5d2b4e2e1b1de62bbab6ea47b Fixed formatting in README.md by Dmitry Kornilov <maiden168@gmail.com>
  - 93fce46f4a8643749cb7a2c666815d9f11dbe7a9 OSGi headers added by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - 0115fbcaace54ffff46e73db047d5c2cf63c0428 pom.xml cleanup by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - b2c3186f9b235d371853c5e678d6f4c167309eb9 Fix OSGi headers generation on JDK9 by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - 44c0b74c4914b43228e64659f8d510a5800c9f53 exported packages for OSGi limited to JsonBindingProvider... by Roman Grigoriadi <bravehorsie@gmail.com>
  - 9a59cc4174a12022e148e54804a12a17fe97d0a3 maven-bundle-plugin version changed to 3.2.0 to fix build... by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - 007d7392648752d863700bba72527bb5cc4c26f8 Merge pull request #21 from Verdent/master by Ehsan Zaery Moghaddam <zaerymoghaddam@gmail.com>
  - 21e8f4596f17f9e9f45aa1db45645990b33593b2 Fixed typos in code and JavaDocs by Ehsan Zaery Moghaddam <zaerymoghaddam@gmail.com>
  - 50a0b7e1003f5d7cf2947918fc32896e2ac373da jsonb API version bumped to M2 by Roman Grigoriadi <bravehorsie@gmail.com>
  - 5206b0682ae0fa9d4be4414369d67cd6ac36a7d2 NPE when reading JSON with null value of an unmapped field by Roman Grigoriadi <bravehorsie@gmail.com>
  - ad18385aca94932440876885fe2e5acba9f2c2d0 Removed unused imports and do some minor cleanups by Ehsan Zaery Moghaddam <zaerymoghaddam@gmail.com>
  - 88c22fb9b8db106bbb9b42362b684d003f54fc4e Use JUnit rules instead of java assert by Ehsan Zaery Moghaddam <zaerymoghaddam@gmail.com>
  - 0e3978653e5829bb5ce19605ded01c226a3a65f7 Convert Optional properties of JsonBuilder to normal prop... by Ehsan Zaery Moghaddam <zaerymoghaddam@gmail.com>
  - 2f7133e7e8495b3993ac4dae20241c85a9b4b3a2 Module name changed to org.eclipse.yasson by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - e3f408f2f48db0cf9c3e7ad6854f215772f3067b javadoc generation fixed by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - 5b3e2bfd8df3ccfe18433560783c7dfe67470fd1 Version 1.0.0-M2 release by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - b79e300af406e12b1d282f11651cc09c5c848d7d Switched to maven-deploy-plugin version 2.8.2 by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - 55a294bbbd17750fd9e5b844964a50092a39d2a6 Restoring snapshot version by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - f6f46c1481f261c96c8d8beff028afaecf539907 Adopted exception rising wiht @JsonbTransient annotations... by Roman Grigoriadi <bravehorsie@gmail.com>
  - a0ea27b1770d4f73d568af6d530991d184cecb7a Added doPrivileged blocks + Test with security manager. by Roman Grigoriadi <bravehorsie@gmail.com>
  - d3a3b007896314d5b542d636d87b47b85b79e0c4 Fixed CDI tests on JPMS by Roman Grigoriadi <bravehorsie@gmail.com>
  - 4b2e6d8c8b4f53d8144fdb188e72f67181d6d780 Package name refactoring by Roman Grigoriadi <bravehorsie@gmail.com>
  - c5f46e754eb3ad8d8bd58fa46488f6e28de4ed83 Fixed CDI lookup by Roman Grigoriadi <bravehorsie@gmail.com>
  - 256918a159f123b4071244acd9d18a22ebceb03e Merge branch 'TODO-removal' by Roman Grigoriadi <bravehorsie@gmail.com>
  - f76576ba0d8b79c8226d365676c3076843b315b2 Include properties not present in @JsonbPropertyOrder in ... by Roman Grigoriadi <bravehorsie@gmail.com>
  - 7a3a11bccb31d857b8a2da53b314e7b4e7a9f405 Merge remote-tracking branch 'origin/master' by Roman Grigoriadi <bravehorsie@gmail.com>
  - f0ab6918a0f30ba5ef9c69a4ad798c42e64dda96 Updated link to the API project in README.md by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - ca29ee614809fcec88f4b618f20515ef4a8de1e6 Maven central release profile added by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - 417e3a8e9936250cb4e0ace1dfa6da4afdae1dcc pom.xml: mailing lists fixed, license section updated by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - 1dd443751fc027d68bf717933c9e7ac85c5d7ca7 Upgrading to JSON-B API 1.0.0-RC2 and JSON-P 1.1 by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - 431dd54deec9446a2683e6832d2396aa1cbbf0ba Fixed runtime type resolve from AdaptedObjectSerializer, ... by Roman Grigoriadi <bravehorsie@gmail.com>
  - f522aa7dae04c56fdacc6b82cfd1967920b31097 Restoring SNAPSHOT version by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - 5e04a8d77cb18f7a8b59b263276b2023d245454f Fixes #27 by Roman Grigoriadi <bravehorsie@gmail.com>
  - 2f4de027798a35bac7a5802182b3e55c1bd78443 cdi-api dependency updated to 2.0 by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - a1ef30408fb53417fcf256f465e78330dd22f264 Version 1.0.0-RC2 by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  - 804a688345559cab4bb6fd2a0d6f873c5b2d50db Restoring snapshot version by Dmitry Kornilov <dmitry.kornilov@oracle.com>
  (And 252 more changes)

GitOrigin-RevId: ee982a8d151ee53d0bb6424d1bc73380f06a74f0
Change-Id: I90c9c7250b18fc6a589c1546f5bd29aa77711bd1
583 files changed
tree: 8ff75c8b69fcb34b47ab0d13122c099ab6ea0cd2
  1. .github/
  2. etc/
  3. src/
  4. yasson-jmh/
  5. yasson-tck/
  6. .gitignore
  7. CONTRIBUTING.md
  8. LICENSE.md
  9. NOTICE.md
  10. pom.xml
  11. README.md
README.md

Eclipse Yasson

Maven Central Jakarta Staging (Snapshots) Gitter Javadocs Build Status License

Yasson is a Java framework which provides a standard binding layer between Java classes and JSON documents. This is similar to what JAXB is doing in the XML world. Yasson is an official reference implementation of JSON Binding (JSR-367).

It defines a default mapping algorithm for converting existing Java classes to JSON suitable for the most cases:

Jsonb jsonb = JsonbBuilder.create();
String result = jsonb.toJson(someObject);

For whom it's not enough it provides rich customization abilities through a set of annotations and rich programmatic API:

// Create custom configuration
JsonbConfig config = new JsonbConfig()
  .withNullValues(true)
  .withFormatting(true);

// Create Jsonb with custom configuration
Jsonb jsonb = JsonbBuilder.create(config);

// Use it!
String result = jsonb.toJson(someObject);

Questions?

Something not working right? Have an idea for an enhancement? Get in touch with the Yasson community in the following ways:

  • Gitter: a free instant-messaging platform (similar to Slack) that anyone can join.
  • Stackoverflow: As a question tagged [jsonb-api] and [yasson]
  • Github Issues: Open issues for enhancement ideas or bug reports

Licenses

Links