0

I am wondering if anyone knows of some type of technology (preferably Java EE based) that is similar to something like Eclipse RCP. I want to be able to develop modules which can then register themselves, provide menu options etc. and then provide their own relevant functionality.

By using multiple WAR files, there is no cohesion between them to provide a uniform front end. Having a menu which is relevant to what modules are installed on the system and what that logged in user is entitled to use/see is also difficult as far as I can see.

If I use a single WAR, the cohesion is too great. I cannot develop new modules in isolation, deploy them or upgrade them.

The other idea is, some type of presentation interface, like OpenXava's annotations. When a module is registered it will be picked up by a GUI system which can then render the screens etc of the business function and provide functionality. I could use OSGi here for the modules to provide a nice means of managing loaded modules. I am not sure if something like this exists or even how to develop it.

This is for business software, similar to ERP and is not driving a web facing site. Problem I see is that so many frameworks and new technologies are all aimed at delivering 'pretty' front ends for web facing web sites.

Any recommendations on possible software options or guidance on either architecture or implementation would be appreciated.

mookins
  • 71
  • 1
  • 5

2 Answers2

0

Use a portlet container, such as Liferay. Though Java portal are commonly used as CMS, they can also be used as enterprise applications container, allowing integrating several applications from different sources with the same menus and user management.

javierpaniza
  • 677
  • 4
  • 10
0

Have a look at the Scout framework. It offers a client server architecture with the Eclipse platform and OSGi/Equinox as a basis on both the client and the server side. Scout also supports to write modular applications that separate different business concerns into separate modules (see this tutorial).

On the client side you have the option to run the UI as a desktop application (Swing or SWT) or a web application (supporting both desktop and mobile browsers).

matthias
  • 371
  • 1
  • 6