Web Service 向导帮助您创建新的 Web Service、配置它以进行部署并将 Web Service 部署到服务器。一旦部署了 Web Service,向导将帮助您生成客户机代理和样本应用程序来测试该 Web Service。当完成测试后,可以使用“导出”向导将
Web Service 发布到“UDDI 业务注册中心”。
先决条件:
- 创建动态 Web 项目,如创建 WebSphere® 服务器和
Web 项目中所述。因为启动 WebSphere Application Server 可能要花费几分钟时间(这取决于计算机的速度),所以强烈建议您在运行 Web Service 向导之前启动服务器。要启动服务器,在“服务器”视图(窗口 > 显示视图 > 服务器)中选择它,右键单击并单击启动。
- 创建 bean 或将 bean 导入 Web 项目的 Java™ source 文件夹中。要导入,选择 Java 资源:src 文件夹,并从文件菜单中选择并浏览至包所在的位置。
要使用 IBM® WebSphere JAX-RPC 运行时环境从 bean 创建 Web Service:
- 切换至 J2EE 透视图(窗口 > 打开透视图 > J2EE)。
- 在“项目资源管理器”视图中,选择您创建的 bean 或导入至 Web 项目源文件夹中的 bean。
- 单击文件 > 新建 > 其他。选择 Web Service 以显示各种 Web Service 向导。选择 Web Service 向导。单击下一步。
- “Web Service”页面:选择将自底向上的 Java bean Web Service 作为 Web Service 类型。(可选)可以选择执行下列操作:
- 选择您想使用滑块来完成的 Web Service 开发阶段:
- 开发:这将开发 Web Service 的 WSDL 定义和实现。此阶段包括诸如以下任务:创建一些模块,这些模块将包含适当的生成的代码、WSDL 文件、部署描述符和 Java 文件。
- 装配:在目标应用程序服务器需要的情况下,此阶段确保将主管 Web Service 或客户机的项目与 EAR 相关联。
- 部署:此阶段将为 Web Service 创建部署代码。
- 安装:此阶段将在目标服务器上安装和配置 Web 模块和 EAR。如果需要对 WSDL 文件的端点进行任何更改,则将在此阶段中进行这些更改。
- 启动:一旦在服务器上安装了 Web Service,此阶段就会启动服务器。
- 测试:此阶段将提供各种选项来测试服务,例如,使用“Web Service 资源管理器”或样本 JSP 来测试服务。
- 选择服务器:将显示缺省服务器。如果您想将服务部署到另一服务器上,则单击链接以指定另一服务器。
- 选择运行时:将显示缺省运行时。如果您想将服务部署到另一运行时,则单击链接以指定另一运行时。
- 选择服务项目:将显示在工作空间中所选择的项目。要选择另一个项目和 EAR,单击项目链接。 确保选择作为“客户机 Web 项目”的项目与“服务 Web 项目”不同,否则,服务将被客户机生成的工件覆盖。
- 如果想要创建客户机,则选择要生成的代理类型,然后对该客户机重复执行上述步骤。
- 发布 Web Service:这将启动“Web Service 资源管理器”以将 Web Service 发布至 UDDI 注册中心。
- 监视 Web Service:这将通过“TCP/IP 监视器”来发送 Web Service 流量,“TCP/IP 监视器”可以监测由 Web Service 生成的 SOAP 流量,还可以测试此流量以保持 WS-I 一致性。还可以手工设置 TCP/IP 监视器,如使用 TCP/IP 监视器来测试 Web Service 中所述。
- “选择服务端点接口”页面:
- 可以选择使用现有服务端点接口(SEI)而不是让向导生成一个服务端点接口。
- 设置服务部署作用域。这指示如何部署服务器实现。应用程序会将实现类的一个实例用于所有请求。对于每个请求,都会创建实现类的新实例。对于每个会话,都会创建实现类的新实例。
- 设置 SOAP 操作。此选项用来在生成的 WSDL 中设置 soapAction 字段。根据部署信息,缺省值会设置 soapAction 字段。None 将 soapAction 字段设置为双引号("")。操作将
soapAction 字段设置为操作名称。
- 还可以选择仅映射使用 WSDL 1.1 标准的 MIME 类型。如果 MIME 类型不能映射至 WSDL 1.1 标准(例如,如果连接是数组或 Java bean 属性),则命令失败。
- “Web Service Java Bean 标识”页面:
- 更改 WSDL 端口名称或 WSDL 文件名。
- 选择要显示的方法。
- 设置 void 返回 - 此字段适用于返回类型为 void 的 Web Service 方法,它描述是否期望从该 Web Service 获得响应。Oneway:此自变量是 JMS 传输的缺省值。Twoway:此自变量是 HTTP 传输的缺省值。
- 选择编码样式。它指定在 WSDL 文件中生成样式和使用的何种组合。存在下列几种组合:“RPC/编码”、“RPC/文字”或“文档/文字”。只有“文档/文字”才符合 WS-I。
- 选择安全性选项。安全性不符合 WS-I。
- 选择是否想定制包至名称空间的映射。
- 指定额外类和停止类。额外类指定 WSDL 文件中描述的其他类。您可使用 -stopClasses 自变量定义导致搜索停止的其他类。
- “Web Service 包至名称空间映射”页面:Web Service 向导从指定 Java bean 生成 WSDL 文件。缺省情况下,它将根据该 Java bean
的包名创建名称空间。要覆盖此缺省行为,可以指定要在 WSDL 文件中生成的您自己的名称空间。如果在前一页面上选择了定义包至名称空间的定制映射,则可以在此页面上通过单击添加来输入定制映射对。或者,可以单击导入以从 .properties 文件中导入定制映射对。属性文件的内容必须采用 package=namespace 格式。
- “额外类和停止类配置”页面:如果选择了指定额外类和停止类,则可以在此页面上导入额外类和停止类。 额外类指定 WSDL 文件中描述的其他类。您可使用 -stopClasses 自变量定义导致搜索停止的其他类。
- “Web Service 测试”页面:如果选择了测试 Web Service,则为生成的 Web Service 选择测试工具。这将在“Web Service 资源管理器”中打开
Web Service。选择想要测试的操作,输入必需的信息并单击执行。结果将显示在“状态”窗格中。单击下一步。
- “Web Service 代理”页面:如果已经选择了生成代理,则选择代理安全性选项并选择是否想要定制包至名称空间的映射。
- “Web Service 客户机包至名称空间映射”页面:如果在前一页面选择了定义包至名称空间的定制映射,则可以在此页面上通过单击添加来输入定制映射对。或者,可以单击导入以从 .properties 文件中导入定制映射对。属性文件的内容必须采用 package=namespace 格式。从 WSDL 生成 Java 时还可以选择禁用数据绑定并使用 SOAP 元素。
- “Web Service 客户机测试”页面:
- 选择测试工具。可以在“通用测试客户机”或者“Web Service 资源管理器”中测试生成的代理,也可以生成样本 Web Service JSP。
- 如果选择通过 JSP 来测试代理,则可以选择 JSP 所在的文件夹,并且可以选择将包括在 JSP 中的方法。
- 选择在服务器上运行测试以自动为您启动服务器。
- “Web Service 发布”页面:选择是否想将此 Web Service 发布至 UDDI 注册中心。单击完成。
创建 Web Service 之后,根据您选择的选项不同,可能会发生下列情况:
- 如果选择了使用 Web Service JSP 来测试生成的代理,则会在 Web 浏览器中的以下 URL 处启动代理:http://localhost: port/ WebProjectClient/sampleBeanName/WebServiceName/TestClient.jsp。通过选择一种方法,为该方法输入一个值,然后单击调用,这样就可以使用此样本应用程序来测试 Web Service 了。该方法的结果将显示在结果窗格中。
- 如果选择了使用通用测试客户机来测试生成的代理,则将在浏览器窗口中的以下 URL 处启动该代理:http://localhost:9080/UTC/preload?object= BeanPackage. BeanServiceProxy。在“引用”窗格中的“对象引用”下面,展开代理存根以显示
Web Service 的方法。单击想要测试的方法,在“参数”窗格中输入值并单击调用。将在下面生成结果。
- 如果选择了使用“Web Service 资源管理器”来测试 Web Service,则“Web Service 资源管理器”将打开。选择想要测试的操作,输入必需的信息并单击执行。结果将显示在“状态”窗格中。
- 如果选择了发布 Web Service,则会启动“Web Service 资源管理器”,它将显示把
Web Service 发布到“IBM UDDI 测试注册中心”所必需的页面。遵循发布 Web Service 中的指示信息来完成此任务。