All Projects → AndersDJohnson → jackson-json-reference

AndersDJohnson / jackson-json-reference

Licence: other
JSON Reference for Java with Jackson.

Programming Languages

java
68154 projects - #9 most used programming language
Yacc
648 projects

Projects that are alternatives of or similar to jackson-json-reference

Json Schema Validator
A fast Java JSON schema validator that supports draft V4, V6, V7 and V2019-09
Stars: ✭ 292 (+1290.48%)
Mutual labels:  json-schema, jackson
json-schema-inferrer
Java library for inferring JSON schema from sample JSONs
Stars: ✭ 78 (+271.43%)
Mutual labels:  json-schema, jackson
jsonschema-generator
Java JSON Schema Generator – creating JSON Schema (Draft 6, Draft 7, Draft 2019-09, or Draft 2020-12) from Java classes
Stars: ✭ 213 (+914.29%)
Mutual labels:  json-schema, jackson
Jsonschema2pojo
Generate Java types from JSON or JSON Schema and annotate those types for data-binding with Jackson, Gson, etc
Stars: ✭ 5,633 (+26723.81%)
Mutual labels:  json-schema, jackson
apina
Tool for creating client-side TypeScript code from server-side APIs
Stars: ✭ 27 (+28.57%)
Mutual labels:  jackson
OpenAPI-Delphi
The Delphi-OpenAPI library is an OpenAPI 3.0 document generator and parser for Delphi
Stars: ✭ 79 (+276.19%)
Mutual labels:  json-schema
Vue Form Json Schema
Create forms using JSON schema. Bring your components!
Stars: ✭ 253 (+1104.76%)
Mutual labels:  json-schema
Form Render
🚴‍♀️ 阿里飞猪 - 很易用的中后台「表单 / 表格 / 图表」解决方案
Stars: ✭ 3,881 (+18380.95%)
Mutual labels:  json-schema
finspec-spec
Multi-protocol, machine-readable specifications for financial services
Stars: ✭ 18 (-14.29%)
Mutual labels:  json-schema
django-jsonform
A better, user-friendly JSON editing form field for Django admin. Also supports Postgres ArrayField.
Stars: ✭ 151 (+619.05%)
Mutual labels:  json-schema
angular-schema-form-bootstrap
Bootstrap decorator for Angular Schema Form
Stars: ✭ 50 (+138.1%)
Mutual labels:  json-schema
json-kotlin-schema-codegen
Code generation for JSON Schema (Draft 07)
Stars: ✭ 52 (+147.62%)
Mutual labels:  json-schema
JMantic
Java library for connecting to sc-machine
Stars: ✭ 14 (-33.33%)
Mutual labels:  jackson
Rxdb
🔄 A client side, offline-first, reactive database for JavaScript Applications
Stars: ✭ 16,670 (+79280.95%)
Mutual labels:  json-schema
magnet
A JSON/BSON schema generator
Stars: ✭ 16 (-23.81%)
Mutual labels:  json-schema
Full Stack Fastapi Couchbase
Full stack, modern web application generator. Using FastAPI, Couchbase as database, Docker, automatic HTTPS and more.
Stars: ✭ 243 (+1057.14%)
Mutual labels:  json-schema
another-json-schema
Another JSON Schema validator, simple & flexible & intuitive.
Stars: ✭ 48 (+128.57%)
Mutual labels:  json-schema
friendly-id
Java Friendly Id for UUID
Stars: ✭ 173 (+723.81%)
Mutual labels:  jackson
openshift-json-schema
A set of JSON schemas for various OpenShift versions, extracted from the OpenAPI definitions
Stars: ✭ 23 (+9.52%)
Mutual labels:  json-schema
json matcher
Library for simplifying data verification in functional tests for your JSON-based APIs
Stars: ✭ 24 (+14.29%)
Mutual labels:  json-schema

jackson-json-reference

WARNING! Not being actively maintained.

Parent: Build Status Codecov

  • Core: Download Core
  • CLI:   Download CLI

JSON Reference implementation for Java, based on Jackson. Process references in JSON documents, such as in JSON Schema. Aims for but not limited to full spec compliance.

Features

  • Supports URLs & files.
  • Relative & absolute reference URIs.
  • Recursive expansion, with options for max depth and stop on circularity.
  • Custom object mappers, allowing Jackson features like JSON comments, YAML, etc.
  • Built-in support for YAML based on file extension detection.

Specs

Usage

File

File file = new File("src/test/resources/nest.json");
JsonNode node = (new JsonReferenceProcessor()).process(file);

URL

URL url = new URL("http://json-schema.org/schema");
JsonNode node = (new JsonReferenceProcessor()).process(url);

Settings

JsonReferenceProcessor processor = new JsonReferenceProcessor();

processor.setStopOnCircular(false); // default true

processor.setMaxDepth(2); // default 1, or set to -1 for no max depth

// Custom object mapper allowing comments.
processor.setMapperFactory(new ObjectMapperFactory() {
   @Override
   public ObjectMapper create(URL url) {
       //ObjectMapper objectMapper = DefaultObjectMapperFactory.instance.create(url);
       ObjectMapper objectMapper = new ObjectMapper();
       objectMapper.configure(JsonParser.Feature.ALLOW_COMMENTS, true);
       return objectMapper;
   }
});

JsonNode node = processor.process( /*...*/ );

Output

ObjectMapper mapper = new ObjectMapper();
mapper.writeValue(new File("out.json"), node);

Install

Maven

<dependencies>
    <dependency>
        <groupId>me.andrz.jackson</groupId>
        <artifactId>jackson-json-reference-core</artifactId>
        <version>0.3.2</version>
    </dependency>
</dependencies>

Gradle

repositories {
    mavenCentral()
}

dependencies {
    compile 'me.andrz.jackson:jackson-json-reference-core:0.3.2'
}

Manual

Download JAR(s) from Maven Central:

  • Core: Download Core
  • CLI:   Download CLI

License

See LICENSE.

Development

Publishing

If you need to bump the version of all projects in the multi-project:

mvn versions:set -DnewVersion=2.50.1-SNAPSHOT

Then be sure your build is up to date:

mvn compile

Now, use the Release Plugin (http://maven.apache.org/maven-release/maven-release-plugin/usage.html):

mvn release:prepare -DdryRun=true
mvn release:prepare

If you mess up:

mvn release:clean

Else:

mvn release:perform
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].