Apache Tomcat 是一个 HTTP 服务器和 servlet 容器,常用于简单的 Web 应用程序,以及使用不需要完整的 Java EE 服务器的框架的应用程序。然而,用户经常会发现,当对 Apache Tomcat 有更多需求时,其最初的简单性就会变得复杂且不实用。
例如,也许 Apache Tomcat 安装的占用空间会变得太大,因为您需要添加第三方库来提供所需的功能。或者,服务器的启动时间也可能是一个问题,因为对 server.xml 文件的任何配置更改都需要重新启动 Apache Tomcat 服务器。又或者,集成和维护第三方库已经变得过于费时。
以上任何一种情况都足以让您考虑将 Apache Tomcat 应用程序及其配置信息迁移到 IBM WebSphere Application Server V8.5.5 Liberty Profile。Liberty Profile 提供一个轻量级且简单易用的应用程序服务器,其占用空间小,并且服务器的启动也很快。它还包括许多 Apache Tomcat 所没有的 Java EE 特性,因而减少了集成和维护第三方库的需求。
利用 Liberty Profile:
用户配置其应用程序所需要的组件,使服务器占用空间较小且服务器启动时间
更快。 配置变更不需要重新启动服务器。它们是自动生效的。 WebSphere
Application Server Developer Tools for Eclipse 使在 Liberty profile 上开发、测试和发布 Web 应用程序变得更容易。 配置通过一个简单的 XML 文件完成。WebSphere Application Server Developer Tools for Eclipse 提供一个直观的用户界面来查看和修改该配置。
本文提供将应用程序及其配置信息从 Apache Tomcat 迁移到 IBM WebSphere Application Server V8.5.5 Liberty Profile 的说明。
但是,在迁移配置之前,您应该先迁移您的应用程序,以确保与 WebSphere Application Server V8.5 的最佳兼容性和性能。为了协助迁移,在 IBM WebSphere Application Server Migration Toolkit 中提供了 Application Migration Tool - Apache Tomcat to WebSphere,用于扫描应用程序代码,以检测所需的更新,并在可能的情况下提供快速修复。然后,在 WASdev 开发博客中作为一个 Tech Preview 提供的新配置迁移工具 Tomcat Config Migration,可以将服务器和应用程序配置的一个子集迁移到 Liberty Profile。当一起使用时,这些迁移工具提供了一个可靠且简单的方法来从 Apache Tomcat 迁移到 Liberty Profile。
先决条件
本文假定您已经为 Apache Tomcat 配置了一个应用程序,希望将它迁移和发布到 WebSphere Application Server Liberty Profile 上。为了便于说明,本文引用一个在 IBM Redbook 出版物中已经发布的样例应用程序 (IBM Redbooks Publications Sample Application)。本文的其余部分将它称为样例应用程序。
为了遵循本文中的说明,您将需要下载、正确安装和操作在此处列出的软件:
Eclipse 4.2.2 for Java EE Developers (Juno SR2) IBM WebSphere Application Server V8.5.5 Liberty Profile IBM WebSphere Application Server Developer Tools for Eclipse V8.5.5 Application Migration Tool – Apache Tomcat to WebSphere V3.5.1 Tomcat Config Migration Tech Preview V3.5.1 1. 迁移应用程序
第一步是使用 Application Migration Tool – Apache Tomcat to WebSphere 迁移应用程序本身。如果您的应用程序尚未在 Eclipse 工作区中,请按照下列步骤将其导入:
在 Eclipse 中,选中 File > Import... 选中 Web > WAR file。 单击 Next。 单击 Browse 导航到 WAR 文件。 将 Target runtime 设置为 WebSphere Application Server V8.5 Liberty Profile。 单击 Next,然后单击 Finish。
现在,您可以配置并运行 Application Migration Tool。
完成应用程序的迁移后,就可以开始迁移配置。
2. 迁移 Apache Tomcat 服务器配置
在 Apache Tomcat 中,某个应用程序所需的特定配置元素位于 server.xml、context.xml 或 tomcat-users.xml 文件中,所有文件全都位于 Apache Tomcat conf 目录中。若没有迁移工具,就必须将配置信息手动迁移到 Liberty profile 服务器配置。
当出现以下服务器配置信息时,它们就已成功迁移:
Resources 位于 conf/server.xml 和 conf/context.xml 中,适用于 IBM DB2®、Apache Derby、Apache ActiveMQ 和 IBM WebSphere MQ。 HTTP connectors 位于 conf/server.xml 中。 Session managers 位于 conf/context.xml 中。 Users and roles 位于 conf/tomcat-users.xml 中。
若还没有为迁移创建一个 Liberty profile 服务器,则先完成以下步骤:
在 Eclipse 中,选中 File > New > Other。 选中 Server > Server 并单击 Next。 选择服务器类型:WebSphere Application Server V8.5 Liberty Profile。 设置服务器名称:defaultServer。 单击 Next。 在安装文件夹下,输入安装 Liberty profile 运行时环境的位置。 单击 Finish。
您的工作区现在应该包括 Liberty profile 服务器的一个实例(图 1)。
图 1. Eclipse 工作区中有 Liberty profile 服务器
现在,您可以将 Apache Tomcat 服务器配置迁移到 Liberty profile 服务器:
选中 Run > Tomcat Configuration Migration...(或者,如果 Apache Tomcat 服务器是在 Eclipse 中定义的,则可以在 Project Explorer 或 Servers 窗格中用鼠标右键单击 Apache Tomcat 服务器,并选中 Migrate Tomcat Configuration...,然后继续执行下面的步骤 j)。 浏览到 Apache Tomcat 服务器安装的位置。选中文件夹,并单击 OK。 选中要迁移到的 Liberty profile 服务器,并单击 OK。 单击 OK 关闭完成对话框。