Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to implement a JSR Specification

I'm considering implementing one or two JSR APIs. I have not yet read the entire specification (the plan is to read them as I code the implementation) but I am very familiar with them. I have read that the JSR process includes implementing a Test Compatibility Kit (TCK) for testing said JSR implementations.

Before I start writing a bunch of unit tests to verify the correctness/completeness of my implementation I would really like to use this TCK but I have no idea if it is available for me. After downloading all files and googling around I could not find anything that could be defined as a TCK for the given JSR.

So my question is basically: What steps do I need to do in order to produce my own implementation of a JSR spec and how do I verify that I have indeed done so.

For what it's worth, I am considering implementing JSR-168 and JSR-286, but I think that is not relevant for this question.

like image 894
pjesi Avatar asked Apr 23 '09 11:04

pjesi


People also ask

What is JSR used for?

The JSR instruction is a fundamental building block of any PLC program. It allows the PLC to execute code within different routines and specifies the sequence of their execution. From a practical standpoint, the most common use of the JSR Instruction is within the “Main” routine.

What is Java Specification?

It describes all aspects of the language, including the semantics of all types, statements, and expressions, as well as threads and binary compatibility.

What is the purpose of Java Community Process?

The Java Community Process (JCP), established in 1998, is a formalized mechanism that allows interested parties to develop standard technical specifications for Java technology. Anyone can become a JCP Member by filling a form available at the JCP website.


2 Answers

What you may need to do, is to contact the spec lead for the given JSR. They can give you more information on obtaining a TCK.

It may be that you have to pay a license to obtain access to the TCK. Certainly with the Java SE specification, Sun does indeed charge a license fee for the TCK, unless you qualify as a non-profit organization to receive it for free.

That said, I believe it varies from JSR to JSR, so as I said above, the best bet is to contact the JSR spec lead.

like image 181
Martin OConnor Avatar answered Nov 13 '22 17:11

Martin OConnor


Wow, this is a very ambitious project, usually taken over by companies or big open source teams. If you are determined enough to do it, I recommend that you have a look at some open source implementations. The mentioned JSRs are implemented by Pluto. It may worth to have a look at the source distribution.

like image 30
kgiannakakis Avatar answered Nov 13 '22 18:11

kgiannakakis