Question

I need to design a web service layer on top of an existing application. Really, I'm most interested in WS-Security and JMS support, possibly JTA.

What is the best server to use for this? Would it be a wise decision to go with lightweight Tomcat (which I'm experienced with), or would I be better off with a server that implements the full Java EE stack, such as JBoss AS, WebLogic, or even GlassFish?

Was it helpful?

Solution

Generally, unless you know that you're trying to use Java EE services particularly, you're better off with just Tomcat. The Java EE environment is very heavyweight; J2EE was designed with really big environments like eBay in mind. (I wrote Sun's first J2EE architecture course; I've been following these arguments for a long time.)

But then, you say "JMS" which is strictly a Java EE service.

OTHER TIPS

You may want to experiment with JBoss and see how it can go with what you want, though, if you want to stay with Tomcat, you may want to look at the Spring Framework and see if that will have the features you want, as it is a way to have Java EE without having a Java EE container.

It depends on if you want to experiment with some ideas and see what will work for you, or just doing one thing, and stick with it regardless.

I tend to experiment until I feel comfortable that I know enough to make the best decision.

Personally I would go with Tomcat and Spring, but I have used Spring before.

It would be helpful if you could give a use case for using some of the features you mentioned, to see if there may be a better answer.

Unless you need something in the Java EE stack that Tomcat doesn't offer, I would use Tomcat.

Plus you can always change later if you decide you want to use items from the Java EE stack if don't code specifically for the container.

I think you should start using a full-stack Java EE container. You can of course attach Java EE functionality to Tomcat, but when you're sticking together JMS, JTA, WS, etc. what you're doing is building a Java EE server by yourself. JBoss, Glassfish, JonAS etc they all provide an already tested and (hopefully) more stable solution than yours :)

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top