Compatibility is a key requirement of the JCP process. The next few paragraphs provide a quick overview of this requirement.
JCP developed technologies require a specification, proof of concept Reference Implementation (RI) and Technology Compatibility Kit (TCK). The specification is delivered with a license that will allow the use of its intellectual property based on compatibility requirements, that include passing the TCK and follow the compatibility rules specified in the relevant TCK user's guide and license. The TCK is a collection of tests designed to verify an implementation's compatibility with the specification; to be compatible all the valid tests must be passed. Some technology requirements may not be tested by the TCK, but still must be implemented; other functionality may be difficult to test in a portable way, but is still required to be implemented.
All configurations of a product must be compatible. For example, you can't have a property that turns off security to run fast, if security is required by the specification. It is understood that not all combinations of options can be tested but implementors of Java technologies (and users creating derivative works from the source distributed here) should make efforts to design their modifications to work in all modes, and reasonable testing efforts should be made to insure that this was done. If in the process of testing, you believe there is an error in the TCK, you may issue a test challenge.
Compatibility artifacts are available as follows:
- The JAXB 2.0/2.1/2.2 specification.
- TCK Access & Support - Contact firstname.lastname@example.org if you are interested in information on TCK support.
If you have a TCK support contract, please follow the test challenge procedure that was described in your contract. If you do not have a TCK support contract and you acquired access to the TCK through the JDL specifically to work on derivatives of this implementation, you should start by engaging in a conversation with the implementors of the project. Eventually we may ask you to submit a bug using "TCK" as the subcomponent field. As with support for the RI, the Oracle engineers in this team will attempt to help developers that use the TCK and we expect most efforts to be directly applicable to either improving the TCK or the code base for this project but in some cases we may need to refer developers to the option of a paid TCK support contract.