Adopt-a-JSR is a grassroots initiative by JUG leaders to encourage JUG members to get involved in a JSR. The goal is to give rank-and-file Java developers a way to contribute directly to Java specifications through their local JUGs. There are many ways to contribute - from just sending in some feedback on a specific issue all the way to writing code for a reference implementation (RI) or compatibility test kit (TCK).
Adopt-a-JSR was launched towards the end of the Java EE 7 time-frame and has already been a success. Numerous developers have participated through many JUGs across the globe. We hope to significantly build upon that momentum for Java EE 8 - perhaps making it the most community driven Java EE release to-date.
| **
** | **
** | **
** |
| **
** |
|
|
|
|
|
|
|
|
|
|
|
|
Get Involved with Java EE 8
Java EE 8 has already been launched, as have many of the component technologies that make up the overall platform. What you can contribute really depends on what you want to do and what the specification lead, expert group is looking for. Some technologies will have specific items that they need help on and others will be far more informal. You should refer to the table below to start exploring, specifically the "Suggested Contributions" column. You should feel free to reach out to the expert group if you have specific ideas on how you would like to help. Here are some ideas to think about:
- Share ideas and feedback, possibly by entering issues in public issue trackers (almost every JSR has one).
- When using email, use "Adopt-a-JSR" in the subject line for greater visibility.
- For JIRA, use the "adoptajsr" tag for greater visibility (all Oracle led specifications use JIRA).
- Follow expert group discussions and chime in if needed.
- Read early versions of specifications and Javadocs.
- Try writing applications using early builds of the reference implementation (likely GlassFish in case of Java EE).
- Write or speak about the technology.
- Encourage others to participate.
You should take the time to explore the Adopt-a-JSR site, particularly the getting started section and the types of work for a JSR.
| JSR/Technology | JCP Page | Website | Suggested Contributions |
| Java EE (Java Platform, Enterprise Edition) 8 | JSR 366 | https://javaee.github.io/javaee-spec/ | jcp.org/en/egc/view?id=366 |
| CDI (Contexts and Dependency Injection for Java) 2.0 | JSR 365 | cdi-spec.org | cdi-spec.org/contribute |
| JSON-B (Java API for JSON Binding) 1.0 | JSR 367 | https://github.com/javaee/jsonb-spec | jcp.org/en/egc/view?id=367 |
| JMS (Java Message Service) 2.1 | JSR 368 | https://javaee.github.io/jms-spec/pages/JMS21 | jcp.org/en/egc/view?id=368 |
| Servlet 4.0 | JSR 369 | https://javaee.github.io/servlet-spec/ | jcp.org/en/egc/view?id=369 |
| JAX-RS (Java API for RESTful Web Services) 2.1 | JSR 370 | https://github.com/jax-rs | jcp.org/en/egc/view?id=370 |
| MVC (Model-View-Controller) 1.0 | JSR 371 | https://www.mvc-spec.org/ | jcp.org/en/egc/view?id=371 |
| JSF (JavaServer Faces) 2.3 | JSR 372 | https://javaee.github.io/javaserverfaces-spec/ | jcp.org/en/egc/view?id=372 |
| Java API for JSON Processing 1.1 | JSR 374 | https://javaee.github.io/jsonp/ | jcp.org/en/egc/view?id=374 |
| Java EE Security API 1.0 | JSR 375 | https://github.com/javaee/security-spec/ | jcp.org/en/egc/view?id=375 |
Help with Java EE 7
Although Java EE 7 JSRs are now already finalized, you can still adopt them. In fact, adopting finalized JSRs are perhaps the easiest ways to get involved. For example, we still can use help spreading the word on these JSRs through writing and speaking. Feel free to email Reza Rahman if this interests you. The following are the JSRs that were part of Java EE 7:
Here are some excellent resources to get started with Java EE 7: