使用 Java EE 部署描述符和 WebSphere 绑定来定义资源引用

此规则将标记 Context <Resource> META-INF/context.xml 文件中找到可能需要迁移的元素。

Apache Tomcat 允许 Context <Resource> 要在这些位置中定义的元素:

因为迁移工具可能无法访问 Tomcat 配置目录,所以迁移工具仅迁移 META-INF/context.xml 文件。 其他位置中定义的资源信息必须复制到 META-INF/context.xml 文件,才能进行处理。

自动修复将从 从 Resource 并根据需要创建资源引用或资源环境引用以及相应的 JNDI 名称。 Tomcat 建议 (但不要求) 对应资源引用 Resource 元素在 WEB-INF/web.xml. 自动修复将搜索 resource-ref resource-env-ref 元素以查看与该名称匹配的条目是否已存在。 如果不存在,那么创建一个条目。 如果 Resource 元素具有 auth 属性, a resource-ref 创建。 如果 Resource 元素不具有 auth 属性, a resource-env-ref 创建。 在这两种情况下, name 值也用作 JNDI 名称并在绑定中定义。

例如,给定以下 Resource META-INF/context.xml 文件中的元素:
<Resource name="jdbc/exampleDB"
auth="Container"
type="javax.sql.DataSource"
description="Example Database " />


自动修复将创建相应的 <resource-ref> 元素:
<resource-ref>
<description>
示例数据库</description>
<res-ref-name>jdbc/exampleDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>容器</res-auth>
<res-sharing-scope>可共享</res-sharing-scope>
</resource-ref>

缺省情况下,资源在 Tomcat 中是可共享的。 如果作用域未设置在 Resource 元素、 为自动修复创建新的资源引用时,将其设置为可共享。 自动修复创建新资源引用时,该元素会被设置为可共享。 如果 WEB-INF/web.xml 中已存在匹配的资源引用,那么不会进行更改。

如果 Web 项目是 Java EE 5 或更高版本,但 WEB-INF/web.xml 不存在,那么会创建 WEB-INF/web.xml 并添加新的资源引用元素。 如果网络项目的 J2EE 1.4 或更低,自动修复程序就会报错。

您也将需要在 WebSphere 配置中配置该资源。

有关 Tomcat 中上下文资源定义的更多信息,请参阅: