What are the differences when deploying on Tomcat vs. Websphere?

24,383

Solution 1

You cannot use EJBs on Tomcat (unless you add OpenEJB). If your WebSphere deployment uses EJBs, you'll have to remove them to deploy on Tomcat.

If you use any Java EE features beyond servlet/JSP engine and JNDI naming service you'll have to eliminate them from your app.

Tomcat accepts WAR packages. If you package your app into an EAR on WebSphere, you'll have to change it to WAR for Tomcat.

Both use JNDI for data sources. There might be some nagging differences in naming conventions, but if you stick to the standard they should be portable.

If you use any WebSphere specific code in your app, you'll have to remove it to deploy on Tomcat.

If your app is servlets, JSPs, and JDBC you can deploy on either one without any problems.

Solution 2

You can think as Tomcat as a subset of Websphere, so theoretically everything that works on Tomcat will work in Websphere.

But...Deploying in Websphere, in my humble opinion, is a terrible pain, while deploying in Tomcat just works. (And if fails, just delete temporary folders)

Without knowing the technologies you are using, that's all I can say.

Solution 3

Depends, what are you trying to deploy?

Tomcat isn't a full EE server--are you trying to deploy an EE app?

If you're just deploying a web app, it's more important to consider which version of the servlet spec/etc. each server implements.

Share:
24,383
john
Author by

john

Updated on July 09, 2022

Comments

  • john
    john almost 2 years

    If I were to deploy an application on Tomcat vs. Websphere, what are things that I need to consider?

    Do I have to develop my Java code differently if developing in one app server vs another?

    Edit:

    I will be funneling people from a website into a web app that does credit card processing and e-signatures (cc processing and e-sigs are through separate services). That is its sole job

  • john
    john over 12 years
    I would be funneling people from a website into a web app that does credit card processing and e-signatures. That is its sole job.
  • Dave Newton
    Dave Newton over 12 years
    That doesn't describe its EE-ness or lack thereof; if it's just a web app w/ no EE functionality, it will matter only rarely, assuming you're not doing anything WebFear-specific, and you're targeting a supported servlet spec, and you don't run in to a WebFear-specific bug.