Skip to content

Commit 79ef783

Browse files
Merge pull request #393 from YanWittmann/master
Bump com.networknt:json-schema-validator to 1.4.0
2 parents 98611ab + e12b10a commit 79ef783

File tree

2 files changed

+10
-3
lines changed

2 files changed

+10
-3
lines changed

pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -183,7 +183,7 @@
183183
<dependency>
184184
<groupId>com.networknt</groupId>
185185
<artifactId>json-schema-validator</artifactId>
186-
<version>1.0.87</version>
186+
<version>1.4.0</version>
187187
</dependency>
188188

189189
<!-- Unit Test -->

src/main/java/org/cyclonedx/CycloneDxSchema.java

+9-2
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
import com.networknt.schema.JsonSchemaFactory;
2525
import com.networknt.schema.SchemaValidatorsConfig;
2626
import com.networknt.schema.SpecVersionDetector;
27+
import com.networknt.schema.resource.MapSchemaMapper;
2728
import org.cyclonedx.generators.json.BomJsonGenerator;
2829
import org.cyclonedx.generators.xml.BomXmlGenerator;
2930
import org.xml.sax.SAXException;
@@ -117,6 +118,8 @@ public JsonSchema getJsonSchema(CycloneDxSchema.Version schemaVersion, final Obj
117118
{
118119
final InputStream spdxInstream = getJsonSchemaAsStream(schemaVersion);
119120
final SchemaValidatorsConfig config = new SchemaValidatorsConfig();
121+
config.setPreloadJsonSchema(false);
122+
120123
final Map<String, String> offlineMappings = new HashMap<>();
121124
offlineMappings.put("http://cyclonedx.org/schema/spdx.schema.json",
122125
getClass().getClassLoader().getResource("spdx.schema.json").toExternalForm());
@@ -128,9 +131,13 @@ public JsonSchema getJsonSchema(CycloneDxSchema.Version schemaVersion, final Obj
128131
getClass().getClassLoader().getResource("bom-1.4.schema.json").toExternalForm());
129132
offlineMappings.put("http://cyclonedx.org/schema/bom-1.5.schema.json",
130133
getClass().getClassLoader().getResource("bom-1.5.schema.json").toExternalForm());
131-
config.setUriMappings(offlineMappings);
134+
132135
JsonNode schemaNode = mapper.readTree(spdxInstream);
133-
JsonSchemaFactory factory = JsonSchemaFactory.getInstance(SpecVersionDetector.detect(schemaNode));
136+
final MapSchemaMapper offlineSchemaMapper = new MapSchemaMapper(offlineMappings);
137+
JsonSchemaFactory factory = JsonSchemaFactory.builder(JsonSchemaFactory.getInstance(SpecVersionDetector.detect(schemaNode)))
138+
.jsonMapper(mapper)
139+
.schemaMappers(s -> s.add(offlineSchemaMapper))
140+
.build();
134141
return factory.getSchema(schemaNode, config);
135142
}
136143

0 commit comments

Comments
 (0)