可以用具有不同服务质量的端口配置客户机端口类型。您可以使用 WebServicesClientBindPreferredPort 命令行选项指定要使用的端口。
开始之前
如果尚未部署企业归档 (EAR) 文件,那么需要将它准备好进行部署或已将它部署到应用程序服务器。
关于此任务
对于配置的每个端口类型,可以用一个或多个端口来实现该端口类型。Web Service 客户机调用 getPort 方法时,首选的端口映射确定要使用的端口。有多个端口可以满足 getPort 方法调用(例如,指定端口类型而不是端口的 getport 调用)时,执行此确定。例如,假设 Web Service 客户机配置为使用 Java 消息服务 (JMS) 和 HTTP 实现。安装或管理期间,您可以使用 WebServicesClientBindPreferredPort 命令配置应用程序的首选端口使用选择的传输。
要用 wsadmin 工具配置首选端口映射,继续执行以下步骤:
过程
- 启动脚本编制命令。 要了解更多信息,请参阅“启动 wsadmin 脚本编制客户机”信息。
- 配置 Web Service 客户机首选端口映射。
要使用现有侦听器端口而不使用或创建新的激活规范,请确定 EJB JAR 版本是否早于 2.1。当指定 -usedefaultbindings 选项以部署应用程序时,系统将自动创建并使用激活规范。如果激活规范存在,那么系统将忽略侦听器端口并改为使用该激活规范。要使用已定义的侦听器端口(而不使用新的激活规范)并通过版本高于或等于 2.1 的 EJB JAR 来部署应用程序,请将 com.ibm.websphere.management.application.dfltbndng.mdb.preferexisting 系统属性(位于相关概要文件的属性目录中的 wsadmin.properties 文件中)设置为 true。
使用 install、installInteractive、edit 或 editInteractive 选项来配置 Web Service 客户机首选端口映射,如下列语法所示:
- 使用 Jython:
AdminApp.install('app_name', '[-usedefaultbindings -deployejb
-WebServicesClientBindPreferredPort {{module_name EJB_name Web_service port_type
port_name]')
- 使用 Jacl:
$AdminApp install app_name {-usedefaultbindings -deployejb
-WebServicesClientBindPreferredPort {{module_name EJB_name Web_service port_type
port_name}}
本示例显示多个模块和 URL 端点,这是因为您可以编辑多个 URL 片段,其中:- app_name 是应用程序名,例如 MultiEjbJar.ear
- EJB_name 是不作为 Web 模块的企业 Bean 模块的名称,例如 Exchange
- module_name 是模块名,例如 ejbclientonly.jar
- Web_service 是 Web Service 的名称,例如 service/StockQuoteService
- port_type 是端口类型信息,例如 {http://stock.multiejbjar.test.wsfvt.ws.ibm.com}StockQuote
- port_name 是端口名,例如 {http://stock.multiejbjar.test.wsfvt.ws.ibm.com}StockQuote
结果
您用 wsadmin 工具配置了首选 Web Service 客户机端口映射。
示例
下面的示例包含实际上写入命令行的应用程序、模块、Web Service、端口类型和端口信息:
$AdminApp install MultiEjbJar.ear {-WebServicesClientBindPreferredPort {{ejbclientonly.jar
Exchange service/StockQuoteService {http://stock.multiejbjar.test.wsfvt.ws.ibm.com}StockQuote
{http://stock.multiejbjar.test.wsfvt.ws.ibm.com}StockQuote}...}}
驱动创建 WebServicesClientBindPreferredPort 选项数据的端口类型信息在客户机 WSDL 文件中。因为有效首选端口映射限制为实现端口类型的接口的端口,所以验证需要每个端口的实现类型。必须访问客户机 WSDL 文件以确定类型和实现信息。
客户机 WSDL 文件名在 Web Service 客户机部署描述符的 ServiceRef 属性中。根据模块类型和版本,客户机部署描述符在 application-client.xml 文件、web.xml 文件或 ejb-jar.xml 文件中。如果您使用的是 J2EE 1.3,那么客户机部署描述符信息在 webservices.xml 文件中。
下一步做什么
现在,您可以完成任何其他配置、启动或重新启动应用程序以及验证 Web Service 需要的行为。