We have to write an administration panel for many customers. But we want to have just one administration panel, and use it in various projects.

This admin panel will have basic components such as access control logic, maker-checker system in changes, user logging and etc.

It will also have reporting for the customer, logs of transaction of the customer (which can vary according to the industry such as mobile banking, banking, ticket sales). These components may have to be modified according to the business.

So we are thinking about the architecture here, Is it OK to use jars of every basic components, and bring them together on a glue application? Or should we build each component as WARs and make interfaces between them?

If there are any more ideas, it will be appreciated.

  • 1
    I don't think architecture has anything to do with how you package parts of your system.
    – user34768
    Sep 7, 2012 at 8:38
  • but if they are on a single monolithic application they will communicate on method calling level, but if they will be on seperate applications they will have to use different kinds of communication. Maybe I am a bit confused here. Sep 7, 2012 at 8:50

1 Answer 1


It sounds like you're looking for a plugin architecture here. a JSR-330 Dependency injection approach (e.g. That Maven and Hudson use) might be a good way forward here. Actually since you're talking web app, you'll want to look at the Java EE CDI std.

I don't see a need to have them as separate WAR files communicating over RESTFul or SOAP based services, it should be a small enough app that one WAR makes sense.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.