I came across this JSON schema specification here.
http://json-schema.org/understanding-json-schema/
I wonder if it's related in some way to the Open API spec.
https://swagger.io/specification/
To what extent are both specs standard ones? I know Open API is widely used but is it really adopted by the major companies as a de-facto standard?
Which one has better support in Java and is "more" standard?
I mean e.g. from which type of API definition, you can more easily generate client side classes to use in your client code?
Imagine you have an API which you need to consume (via a Java client e.g.). What would you ask for from your API provider, would you ask for a JSON schema API definition, or for an Open API based API definition?
The first link is a documentation site, discussing JSON Schema, whose official site is here and whose specification is here. JSON Schemas are used for describing and validating data structures of all kinds (as long as they can be represented by the JSON document model), but it has wide usage within HTTP applications.
Swagger is now known as OpenAPI (with the move to version 3.x). Its official site is here and the latest specification is here. It uses JSON Schemas internally as part of its data structure. It specifically targets the description (and sometimes validation) of HTTP requests and responses.
Both sites have indexes of implementations in various platforms and languages.
To what extent are both specs standard ones? I know Open API is widely used but is it really adopted by the major companies as a de-facto standard?
Both are extremely widely used and, yes, they are industry standards.
Which one has better support in Java and is "more" standard? I mean e.g. from which type of API definition, you can more easily generate client side classes to use in your client code?
JSON schema's primary purpose is not to specify APIs. OpenAPI is tailor-made for that. As said by @Ether, It uses JSON Schemas internally as part of its data structure. If your aim is to generate Java from an API spec, choose OpenAPI (assuming your API is REST or at least REST-ish).
Imagine you have an API which you need to consume (via a Java client e.g.). What would you ask for from your API provider, would you ask for a JSON schema API definition, or for an Open API based API definition?
OpenAPI, as per the previous explanations. :)