【问题标题】:What are the differences when deploying on Tomcat vs. Websphere?在 Tomcat 和 Websphere 上部署时有什么区别?
【发布时间】:2011-11-23 03:11:42
【问题描述】:

如果我要在 Tomcat 和 Websphere 上部署应用程序,我需要考虑哪些事项?

如果在一个应用服务器和另一个应用服务器上进行开发,我是否必须以不同的方式开发我的 Java 代码?

编辑:

我会将人们从一个网站引导到一个网络应用程序中,该应用程序进行信用卡处理和电子签名(抄送处理和电子签名是通过单独的服务进行的)。这是它唯一的工作

【问题讨论】:

标签: java tomcat websphere application-server


【解决方案1】:

您不能在 Tomcat 上使用 EJB(除非您添加 OpenEJB)。如果您的 WebSphere 部署使用 EJB,则必须删除它们才能在 Tomcat 上部署。

如果您使用 servlet/JSP 引擎和 JNDI 命名服务之外的任何 Java EE 功能,则必须从应用程序中消除它们。

Tomcat 接受 WAR 包。如果您将应用程序打包到 WebSphere 上的 EAR 中,则必须将其更改为 WAR for Tomcat。

两者都使用 JNDI 作为数据源。命名约定可能存在一些令人讨厌的差异,但如果您遵守标准,它们应该是可移植的。

如果您在应用程序中使用任何 WebSphere 特定代码,则必须将其删除才能部署在 Tomcat 上。

如果您的应用程序是 servlet、JSP 和 JDBC,您可以毫无问题地部署在其中任何一个上。

【讨论】:

    【解决方案2】:

    您可以将 Tomcat 视为 Websphere 的一个子集,因此理论上在 Tomcat 上运行的所有内容都将在 Websphere 中运行。

    但是...在我看来,在 Websphere 中进行部署是一件非常痛苦的事情,而在 Tomcat 中进行部署是可行的。 (如果失败,只需删除临时文件夹)

    在不知道您使用的技术的情况下,我只能这么说。

    【讨论】:

      【解决方案3】:

      取决于,您要部署什么?

      Tomcat 不是一个完整的 EE 服务器——您要部署一个 EE 应用程序吗?

      如果您只是部署一个网络应用程序,那么考虑哪个版本的 servlet 规范/等更为重要。每个服务器都实现。

      【讨论】:

      • 我会将人们从一个网站引导到一个进行信用卡处理和电子签名的网络应用程序中。这是它唯一的工作。
      • 这并没有描述它的 EE 特性或缺乏它;如果它只是一个没有 EE 功能的 Web 应用程序,那么它只会很重要,假设您没有做任何特定于 WebFear 的事情,并且您的目标是受支持的 servlet 规范,并且您没有遇到 WebFear-特定的错误。
      猜你喜欢
      • 2019-04-15
      • 1970-01-01
      • 2019-05-20
      • 2020-09-02
      • 1970-01-01
      • 1970-01-01
      • 2017-12-28
      • 2017-05-10
      • 2018-09-29
      相关资源
      最近更新 更多