[17.0.0.1 and later]

应用程序绑定

在应用程序服务器上所安装的应用程序可以启动之前,应用程序中定义的所有企业 Bean (EJB) 引用和资源引用必须与应用程序服务器中定义的实际工件(企业 Bean 或资源)绑定。

应用程序绑定和扩展提供多种方式来定义应用程序资源和控制各种应用程序行为。应用程序绑定可应用于企业应用程序、Web 应用程序或 EJB 应用程序。

通常情况下,在应用程序归档中 XML 文件内指定这些绑定和扩展。例如,可以在 ibm-web-bnd.xml 文件中定义 Web 应用程序绑定。在 Liberty V17.0.0.1 和更高版本中,可以在 server.xml 文件的应用程序配置中指定绑定和扩展。

Liberty 支持使用传统方法将绑定和扩展定义为应用程序的一部分。如果在 server.xml 和应用程序中都指定了信息,那么会合并这两个源以创建有效绑定集或扩展集。

server.xml 文件中指定的信息优先于应用程序工件中指定的相同信息。例如,如果 ibm-web-bnd.xmlserver.xml 文件指定 Web 应用程序的虚拟主机,那么会使用 server.xml 文件中指定的值。如果要指定的信息可具有多个值,那么会将 server.xml 文件中的值添加到应用程序中的值。例如,如果 ibm-application-bnd.xml 文件定义两个安全角色而 server.xml 定义一个安全角色,那么会使用全部三个安全角色。如果 server.xml 文件中定义的安全角色的名称与 ibm-application-bnd.xml 文件中定义的安全角色名称相同,那么 server.xml 文件中的角色会覆盖应用程序中的角色。

对于适用于应用程序中特定模块的绑定和扩展,可能需要在配置中指定 moduleName 属性。此规范适用于在 ibm-web-ext.xml 文件、ibm-web-bnd.xml 文件、ibm-ejb-jar-bnd.xmlibm-ejb-jar-ext.xml 文件中以传统方式指定的信息。模块名称属性是不带文件扩展名的模块名称。例如,对于包含归档 stockDisplay.war 中 Web 模块的文件 stockPrices.ear 中定义的企业应用程序,以下配置将为 Web 模块设置缺省错误页:
<application location="stockPrices.ear">
   <web-ext moduleName="stockDisplay" default-error-page="error.html"/>
	</application>
相似地,对于在 stockData.jar 文件中定义的 EJB 应用程序,以下 server.xml 配置将指定数据源绑定:
<application location="stockPrices.ear">
   <ejb-jar-bnd moduleName="stockData">
	<session name="StockBean">				
		<data-source name="jdbc/stockDS" binding-name="stockDataSource"/>
 			</session>
   </ejb-jar>	</application>
如果应用程序位于独立 WAR 或 JAR 文件中且使用 webApplicationejbApplication 元素在 server.xml 文件中进行了定义,那么模块名称参数不是必需的。例如,如果先前示例中 stockDisplay.war 文件和 stockData.jar 文件是独立应用程序而不是 stockPrices.ear 应用程序的模块,那么可能使用了以下配置:
<webApplication location="stockPrices.ear">
   <web-ext default-error-page="error.html"/>
</webApplication>

<ejbApplication location="stockPrices.jar">
   <ejb-jar-bnd>
	<session name="StockBean">				
		<data-source name="jdbc/stockDS" binding-name="stockDataSource"/>
 			</session>
   </ejb-jar></ejbApplication>

在绑定和扩展文件中指定的一些元素不由 Liberty 运行时使用。例如,在 Web 应用程序扩展中,由于 Liberty 重新装入行为由 applicationMonitor 配置控制,因此会忽略重新装入时间间隔属性的值。在 server.xml 配置中指定这些元素未产生任何错误。由于缺少错误,因此可以将应用程序绑定和扩展文件的内容复制到 server.xml 文件中。但是,在 WebSphere Developer Tools 中编辑配置时,此复制操作可能会导致未识别元素警告。

有关可在 server.xml 文件中指定的绑定和扩展的完整列表,请参阅 server.xml 文件中的配置元素

以下示例指定 EJB 应用程序中受管 Bean 的资源引用。
<ejbApplication location="someBean.jar">
<managed-bean-bnd>
	<managed-bean class="com.ibm.MyBean">
		<resource-ref name="jdbc/myBinding" binding-name="jdbc/TestDataSource" />
	</managed-bean>
</managed-bean-bnd>
</ejbApplication>
以下配置用于将应用程序的共享会话上下文属性设置为 false:
<application location="myApplication.ear">
	<application-ext shared-session-context="false" />
	</application>
以下配置用于为 Web 应用程序设置虚拟主机:
<application location="myApplication.ear">
	<web-bnd moduleName="myWebModule">
		<virtual-host name="default_host" />
	</web-bnd>
	</application>

用于指示主题类型的图标 概念主题

文件名:cwlp_app_bindings.html