{"id":19563117,"url":"https://github.com/fasterxml/jackson-jaxrs-providers","last_synced_at":"2025-05-14T08:06:23.268Z","repository":{"id":4928602,"uuid":"6085215","full_name":"FasterXML/jackson-jaxrs-providers","owner":"FasterXML","description":"Multi-module project that contains Jackson-based \"old\" JAX-RS (ones under `javax.ws.rs`) providers for JSON, XML, YAML, Smile, CBOR formats","archived":false,"fork":false,"pushed_at":"2025-05-08T20:03:34.000Z","size":3145,"stargazers_count":117,"open_issues_count":18,"forks_count":82,"subscribers_count":15,"default_branch":"2.x","last_synced_at":"2025-05-08T20:07:40.521Z","etag":null,"topics":["hacktoberfest","jackson","jax-rs"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"pivotal/PivotalCoreKit","license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/FasterXML.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2012-10-05T03:14:37.000Z","updated_at":"2025-05-07T01:40:20.000Z","dependencies_parsed_at":"2023-07-07T11:33:32.939Z","dependency_job_id":"8bef01be-259a-4f3c-abfb-78d120a4e566","html_url":"https://github.com/FasterXML/jackson-jaxrs-providers","commit_stats":{"total_commits":841,"total_committers":39,"mean_commits":"21.564102564102566","dds":0.08680142687277048,"last_synced_commit":"db934e10e3fb23c84ea70e741469e72c46dcb85c"},"previous_names":[],"tags_count":158,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FasterXML%2Fjackson-jaxrs-providers","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FasterXML%2Fjackson-jaxrs-providers/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FasterXML%2Fjackson-jaxrs-providers/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FasterXML%2Fjackson-jaxrs-providers/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/FasterXML","download_url":"https://codeload.github.com/FasterXML/jackson-jaxrs-providers/tar.gz/refs/heads/2.x","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254101615,"owners_count":22014909,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hacktoberfest","jackson","jax-rs"],"created_at":"2024-11-11T05:16:37.255Z","updated_at":"2025-05-14T08:06:18.247Z","avatar_url":"https://github.com/FasterXML.png","language":"Java","funding_links":["https://tidelift.com/badges/package/maven/com.fasterxml.jackson.jaxrs:jackson-jaxrs-json-provider","https://tidelift.com/subscription/pkg/maven-com-fasterxml-jackson-jaxrs-jackson-jaxrs-json-provider?utm_source=maven-com-fasterxml-jackson-jaxrs-jackson-jaxrs-json-provider\u0026utm_medium=referral\u0026utm_campaign=readme","https://tidelift.com/subscription/pkg/maven-com-fasterxml-jackson-jaxrs-jackson-jaxrs-json-provider?utm_source=maven-com-fasterxml-jackson-jaxrs-jackson-jaxrs-json-provider\u0026utm_medium=referral\u0026utm_campaign=enterprise\u0026utm_term=repo"],"categories":[],"sub_categories":[],"readme":"## Overview\n\nThis is a multi-module project that contains Jackson-based JAX-RS (*) providers\nfor following data formats:\n\n* [JSON](https://github.com/FasterXML/jackson-core)\n* [Smile](https://github.com/FasterXML/jackson-dataformat-smile) (binary JSON)\n* [CBOR](https://github.com/FasterXML/jackson-dataformat-cbor) (another kind of binary JSON)\n* [XML](https://github.com/FasterXML/jackson-dataformat-xml)\n* [YAML](https://github.com/FasterXML/jackson-dataformat-yaml)\n\nProviders implement JAX-RS `MessageBodyReader` and `MessageBodyWriter` handlers for specific\ndata formats. They also contain SPI settings for auto-registration.\n\n(*) NOTE! JAX-RS is the \"old\" API defined under `javax.ws.rs`; in 2019 or so, Oracle decided to force\na forking of this into \"Jakarta\" variant under `jakarta.ws.ws`.\nAs of 2021 most frameworks still use the old API but if you do need/want to use newer one,\ncheck out Jakarta-RS provider repo at [jackson-jakarta-rs-providers](../../../jackson-jakarta-rs-providers)\n\n## Status\n\n[![Build Status](https://travis-ci.org/FasterXML/jackson-jaxrs-providers.svg?branch=master)](https://travis-ci.org/FasterXML/jackson-jaxrs-providers)\n[![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.fasterxml.jackson.jaxrs/jackson-jaxrs-json-provider/badge.svg)](https://maven-badges.herokuapp.com/maven-central/com.fasterxml.jackson.jaxrs/jackson-jaxrs-json-provider/)\n[![Javadoc](https://javadoc.io/badge/com.fasterxml.jackson.jaxrs/jackson-jaxrs-json-provider.svg)](http://www.javadoc.io/doc/com.fasterxml.jackson.jaxrs/jackson-jaxrs-json-provider)\n[![Tidelift](https://tidelift.com/badges/package/maven/com.fasterxml.jackson.jaxrs:jackson-jaxrs-json-provider)](https://tidelift.com/subscription/pkg/maven-com-fasterxml-jackson-jaxrs-jackson-jaxrs-json-provider?utm_source=maven-com-fasterxml-jackson-jaxrs-jackson-jaxrs-json-provider\u0026utm_medium=referral\u0026utm_campaign=readme)\n\n## Maven dependency\n\nTo use JAX-RS on Maven-based projects, use dependencies like:\n\n```xml\n\u003cdependency\u003e\n  \u003cgroupId\u003ecom.fasterxml.jackson.jaxrs\u003c/groupId\u003e\n  \u003cartifactId\u003ejackson-jaxrs-json-provider\u003c/artifactId\u003e\n  \u003cversion\u003e2.18.1\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n(above is for JSON provider; modify appropriately for other providers)\n\n## Usage: registering providers\n\nDue to auto-registration, it should be possible to simply add Maven dependency\n(or include jar if using other build systems) and let JAX-RS implementation discover\nprovider.\nIf this does not work you need to consult documentation of the JAX-RS implementation for details.  \n\nHere are some links that may help:\n\n* [Configure Jackson as JSON Provider in JAX-RS 2.0](https://stackoverflow.com/questions/18741954/configure-jackson-as-json-provider-in-jax-rs-2-0)\n* [JAX-RS and Open Liberty: BYO Jackson](https://openliberty.io/blog/2020/11/11/byo-jackson.html)\n* [Using Jackson as JSON provider in Jersey 2.x](https://cassiomolin.com/2016/08/10/using-jackson-as-json-provider-in-jersey-2x/)\n\n### Usage: registering supporting datatypes module\n\nStarting with Jackson 2.8, there is a small supporting datatype module, `jackson-datatype-jaxrs` (see\nunder `datatypes/`).\nIt will not be auto-registered automatically (unless user calls `ObjectMapper.findAndRegisterModules()`);\ninstead, user has to register it by normal means:\n\n```java\nObjectMapper mapper = JsonMapper.builder() // or whichever format backend we have\n    .addModule(new Jaxrs2TypesModule())\n    .build();\n// and then register mapper with JAX-RS provider(s)\n```\n\nand ensuring that configured mapper is used by JAX-RS providers.\n\nIt is possible that later versions of providers may offer additional ways to get datatype module registered.\n\n### Annotations on resources\n\nIn addition to annotation value classes, it is also possible to use a subset\nof Jackson annotations with provider.\n\nHere is a short list of supported annotations that work with all formats:\n\n* `@JsonView` can be used to define active view for specific endpoint\n* `@JsonRootName` can be used to specify alternate rootname; most often used with XML, but possibly with JSON as well.\n* `@JacksonAnnotationsInside` meta-annotation may be used as a marker, to create \"annotation bundles\", similar to how they are used with value type annotations\n* `com.fasterxml.jackson.jaxrs.annotation.JacksonFeatures` can be used with all provid to enable/disable\n    * `SerializationFeature` / `DeserializationFeature` for data-binding configuration\n    * `JsonParser.Feature` / `JsonGenerator.Feature` for low(er) level Streaming read/write options\n\nIn addition there are format-specific annotations that may be used:\n\n* JSON has:\n    * `com.fasterxml.jackson.jaxrs.json.annotation.JSONP` to define `JSONP` wrapping for serialized result\n\n\n## Module Considerations\n\nThe JSON/JAX-RS module has multiple names depending on the version in use.\nTo enable modular usage, add the requires statement that pertains directly\nto the implementation you are using. \n\n```\nrequires  javax.ws.rs.api; //Older libraries\nrequires  jakarta.ws.rs; //Newer libraries\n```\n\n### Using Jakarta\n\nStarting with Jackson 2.13, there is a fully separate set of providers\nfor \"Jakarta-RS\", see: [jackson-jakarta-rs-providers](../../../jackson-jakarta-rs-providers).\nThey would be instead included with:\n\n```\n\u003cdependency\u003e\n    \u003cgroupId\u003ecom.fasterxml.jackson.jakarta.rs\u003c/groupId\u003e\n    \u003cartifactId\u003ejackson-jakarta-rs-json-provider\u003c/artifactId\u003e\n\u003c/dependency\u003e\n``` \n\nNOTE! Jackson 2.12 has (just for that version), `jakarta` classifier variant of JAXB providers included here.\n\nYou may be able to use these variants by using dependency like:\n\n```\n\u003cdependency\u003e\n    \u003cgroupId\u003ecom.fasterxml.jackson.jaxrs\u003c/groupId\u003e\n    \u003cartifactId\u003ejackson-jaxrs-json\u003c/artifactId\u003e\n    \u003cversion\u003e2.12.6\u003c/version\u003e\n    \u003cclassifier\u003ejakarta\u003c/classifier\u003e\n\u003c/dependency\u003e\n``` \n\nbut this mechanism was removed from later versions.\n\n## Support\n\n### Community support\n\nJackson components are supported by the Jackson community through mailing lists, Gitter forum, Github issues. See [Participation, Contributing](../../../jackson#participation-contributing) for full details.\n\n### Enterprise support\n\nAvailable as part of the Tidelift Subscription.\n\nThe maintainers of `jackson-jaxrs-providers` and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use. [Learn more.](https://tidelift.com/subscription/pkg/maven-com-fasterxml-jackson-jaxrs-jackson-jaxrs-json-provider?utm_source=maven-com-fasterxml-jackson-jaxrs-jackson-jaxrs-json-provider\u0026utm_medium=referral\u0026utm_campaign=enterprise\u0026utm_term=repo)\n\n-----\n\n## Other\n\nFor documentation, downloads links, check out [Wiki](../../wiki)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffasterxml%2Fjackson-jaxrs-providers","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffasterxml%2Fjackson-jaxrs-providers","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffasterxml%2Fjackson-jaxrs-providers/lists"}