Comments (3)
Hello,
First, thank you for the appreciative comments!
There is a hack in the code, in JsonRef, so as to deal specifically with jar
URIs, so it seems it is not plugged where you expect. Hmm. I'll have to devise a test.
I have two questions:
- how do you define an opaque URI? I have always had trouble with that;
- is your jar in the classpath? If yes, can't you use:
// Note the final /
new JsonSchemaFactory.Builder().setNamespace("resource:/base/path/to/schemas/")
?
from json-schema-validator.
Aha! - I knew I had to be missing something stupid simple. Yes, using a resource:/path/to/schemas/
namespace works perfectly for this! Thank you!
I will admit that the idea of an opaque URI was new to me when starting this, so I have to rely on the Javadoc:
An opaque URI is an absolute URI whose scheme-specific part does not begin with a slash character ('/')
vs a hierarchical:
A hierarchical URI is either an absolute URI whose scheme-specific part begins with a slash character, or a relative URI, that is, a URI that does not specify a scheme
So in this case we have 2 URIs: jar:file:/path/to/jarfile!/path/inside/jar/
, and resource:/path/inside/jar/
. Based on the documentation, I take it to mean the scheme in the first is jar:
and the second is resource:
. The next character (beginning the 'scheme-specific part'), respectively, is f
and /
, thus making the first opaque and the second hierarchical.
Thank you so much for the quick pointer!
from json-schema-validator.
Glad to know it worked!
However, I still think there is a bug. You can, indeed, do:
final JsonSchema schema = factory.fromURI("jar:file:/foo/bar.jar!/path/to/schema");
and, in this case, $ref
will also work. Setting a "jar" namespace and loading a schema, however, will not.
I have to think abouti it some more.
from json-schema-validator.
Related Issues (20)
- Failed validation for no apparent reason?
- Getting java.util.concurrent.ExecutionException while validating
- Error when validating Json against a schema defining oneOf
- Are we planning on supporting draft-07 HOT 1
- Example code on README.md please plus links to examples in src
- Migrate from joda-time to java 8 time API HOT 2
- Improcess error hanling in getJsonSchema - never squash exceptions
- Android app crashes because schema (v4) cannot be found at runtime HOT 2
- Getting NPE when passing null to validate method.
- Has the functionality of the ResolvingSchemaWalker been replaced in more recent versions?
- Conflicting Transitive Dependency Versions for Guava and Jsr305
- Where is pom.xml ? I want to import this library to my local and customize it
- Not compatible with GraalVM
- NoSuchFieldError on signing
- When JSONObject contains JSONArray, JSONArray's object can not be validated
- draftv4/schema is different between json-schema-validator 2.2.14 and json-schema-core 1.2.14
- release new version HOT 2
- How can we get Error Message with the error path appended?
- Obtain JUST the message from a ValidationMessage?
- BUG: ECMA262 valid pattern throws an exception
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from json-schema-validator.