As you probably noticed, a new poll is accessible on the right bar of the website related on JRebirth future road map.
Thank you to those who have already given their opinions (it’s so valuable for us).
I will now describe each feature with a little more details than few words written into the poll. All of them are ambitious but without challenge there isn’t any fun !
Obviously all minor changes will be still integrated, so don’t hesitate sending us some feedbacks, we are hearing you and want to build the framework you have ever craved.
JavaFX Workbench with smart docks
This feature will provide a way to organize all JRebirth UI Components into a smart layout allowing drag & drop anywhere into the visual workspace.
The goal is to provide a flexible layout providing a lot of hooks like those you can have in your favorite IDE (Eclipse, Netbeans, IntelliJ …).
This workbench will be programmatically customizable (with a small API) but also updatable by user with persistence.
This feature will be composed by a set of components stored into org.jrebirth.af.component artifact.
A custom branch has been created into our Github repository, it will be rebased into the 8.x branch to take benefits of new Java 8 features.
Enhanced Modularization (relying on OSGI)
Modularization is a feature required by those who are building big application with a lot of possible configuration. Currently JRebirth provides a way to define its own ComponentFactory (a parameter store your class full name), for example it’s possible to use Guice to bind your component by defining one interface and several implementations.
The aim of this feature is to allow to embed JRebirth into an OSGI container (like I have demonstrated into the previous post with Equinox [Eclispe OSGi implementation]).
The integration method will be POM-first (JRebirth uses Maven, sorry for gradle users), and some hooks will be integrated into the JRebirth framework to enhance modularity like extension point does into EclipseRCP.
An essential goal will be to respect the KISS principle to avoid creating another labyrinthine system [usine à gaz for french people] that give headache to generations of developers.
I have proposed a talk at EclipseCON France 2014, so it could quickly become a top priority.
Enhanced Modularization (Custom solution)
This feature is related to the previous one by offering same hook system. But the additional thing is to build it on top of Java Web Start with custom class-loaders. Lot of people are saying that RIA (Rich Internet Applications) are dead, but it could be so useful to fight HTML 5 applications for big enterprise applications.
Multi Node (communication between several JR instances)
Sometime it could be useful to split your Java application into several Java processes; in example when you don’t want to be affected by a crash of a sub-module or another integrated application.
This feature should enabled communication between two distinct Java processes powered by JRebirth Application Framework.
It will use a custom IPC (Inter Processes Communication) mechanism, but in a second time also native libraries to manage communication with non-Java and non-JRebirth processes.
It will also to dispatch waves to different areas with custom route filtering.
I could be seen as an alternative to OSGI principle, but it could be also mixed with.
Application Model code generation (bi-directionnal)
This improvement has 2 main parts:
- Provide tools to generate a business model
- Provide tools to manage internal JRebirth components
The first one will allow to create its own business model using JavaFX properties, the tools used will rely on a custom JRebirth library (modeling) that will allow diagram generation.
The second one has already been partially demonstrated by JBoss Forge JRebirth plugin developed by Rajmahendra and Guruprasad. This tools is under intensive refactoring to be compatible the second main version of JBoss Forge.
The addition will be to manage all JRebirth components from code, registry file or by using a tool that will perform the sync.
We Need You
JRebirth’s Team is opened to anyone that want to participate ! Just contact us on the developer mailing list or other social network.