使用 WebSphere JAX-RPC 运行时环境从 WSDL 文件创建框架企业 bean(EJB)

Web Service 向导帮助您从现有的 WSDL 文档创建框架 EJB。框架 EJB 包含与 WSDL 文档中描述的操作相对应的一组方法。创建 EJB 时,每个方法都具有一种基本实现,可通过编辑该 bean 来取代该实现。
先决条件:

要从 WSDL 文档创建 Web Service 和框架 EJB:

  1. 切换至 J2EE 透视图(窗口 > 打开透视图 > J2EE)。
  2. 在“项目资源管理器”视图中,选择要创建框架 EJB Web Service 的 Web 项目。
  3. 单击文件 > 新建 > 其他。选择 Web Service 以显示各种 Web Service 向导。选择 Web Service 向导。单击下一步
  4. Web Service 页面:从 Web Service 类型下拉列表中选择自顶向下的 EJB Web Service。输入将用来生成 EJB bean 的 WSDL、WSIL 或 HTML 文件的 URI。确保在 URI 开头没有空格,否则可能会生成空指针异常。您还可以执行下列操作:
    1. 选择您想使用滑块来完成的 Web Service 开发阶段:
      • 开发:这将生成 Web Service 的 WSDL 定义和实现。此阶段包括诸如以下任务:创建一些模块,这些模块将包含适当的生成的代码、WSDL 文件、部署描述符和 Java™ 文件。
      • 装配:在目标应用程序服务器需要的情况下,此阶段确保将主管 Web Service 或客户机的项目与 EAR 相关联。将在此阶段创建路由器模块。
      • 部署:此阶段将为 Web Service 创建部署代码。
      • 安装:此阶段将在目标服务器上安装和配置 Web 模块和 EAR。如果需要对 WSDL 文件的端点进行任何更改,则将在此阶段中进行这些更改。
      • 启动:一旦在服务器上安装了 Web Service,此阶段就会启动服务器。
      • 测试:此阶段将提供各种选项来测试服务,例如,使用“Web Service 资源管理器”或样本 JSP 来测试服务。
    2. 选择服务器:将显示缺省服务器。如果您想将服务部署到另一服务器上,则单击链接以指定另一服务器。
    3. 选择运行时环境:将显示缺省运行时环境。如果您想将服务部署到另一运行时环境,则单击链接以指定另一运行时。
    4. 选择服务项目:将显示一个项目,它包含在工作空间中所选择的项目。要选择另一个项目和 EAR,单击项目链接。 确保选择作为“客户机 Web 项目”的项目与“服务 Web 项目”不同,否则,服务将被客户机生成的工件覆盖。
    5. 如果想要创建客户机,则选择要生成的代理类型,然后对该客户机重复执行上述步骤。
    6. 发布 Web Service:这将启动“Web Service 资源管理器”以将 Web Service 发布至 UDDI 注册中心。 注意,只能使用“Web Service 资源管理器”来测试使用 HTTP 传输的 Web Service。
    7. 监视 Web Service:这将通过“TCP/IP 监视器”来发送 Web Service 流量,“TCP/IP 监视器”可以监测由 Web Service 生成的 SOAP 流量,还可以测试此流量以保持 WS-I 一致性。还可以手工设置 TCP/IP 监视器,如使用 TCP/IP 监视器来测试 Web Service 中所述。 注意,您只能监视使用 HTTP 传输的 Web Service。
  5. “Web Service 框架 EJB 配置”页面:
    1. 选择您是想使用 HTTP 还是 JMS 绑定,并选择路由器项目。
    2. (可选)还可以对 Web Service 的服务器端启用安全性。
    3. 添加远程客户机视图:从 EJB 2.1 规范开始,无状态会话 bean 可以包括 Web Service 客户机视图以及本地视图和远程视图。Web Service 客户机视图包括一个服务端点接口。
    4. 定义名称空间至包的定制映射:允许您输入定制映射对
  6. “Web Service 名称空间至包映射”页面:Web Service 向导从指定 WSDL 生成许多 Java 文件。缺省情况下,它将根据 WSDL 文件中指定的名称空间创建包名。要覆盖此缺省行为,可以为 WSDL 文件中部分或全部名称空间指定您自己的包名。如果在前一面板上选择了定义名称空间至包的定制映射,则可以在此面板上通过单击添加来输入定制映射对。或者,可以单击导入以从 .properties 文件中导入定制映射对。属性文件的内容必须采用 namespace=package 格式。
  7. “Web Service 测试”页面:如果想要在“Web Service 资源管理器”中测试 Web Service,则单击启动。选择想要测试的操作,输入必需的信息并单击执行。结果将显示在“状态”窗格中。
  8. “Web Service 代理”页面:选择是否想生成代理并选择是否对此代理启用安全性。可以选择输入定制的名称空间至包映射。
  9. “Web Service 客户机名称空间至包映射”页面:如果在前一面板上选择了定义名称空间至包的定制映射,则可以在此面板上通过单击添加来输入定制映射对。或者,可以单击导入以从 .properties 文件中导入定制映射对。属性文件的内容必须采用 namespace=package 格式。
  10. “Web Service 客户机测试”页面:使用此页面来选择下列选项:
    • 选择测试工具。可以在“通用测试客户机”或者“Web Service 资源管理器”中测试生成的代理,也可以生成样本 Web Service JSP。
    • 如果选择通过 JSP 来测试代理,则可以选择 JSP 所在的文件夹,并且可以选择将包括在 JSP 中的方法。
  11. “Web Service 发布”页面:选择是否想将此 Web Service 发布至 UDDI 注册中心。单击完成
创建 Web Service 之后,根据您选择的选项不同,可能会发生下列情况:

有关 EJB 的更多信息,请参阅 EJB 应用程序开发文档。

要点:当从 WSDL 文件创建框架 EJB 时,不会为新创建的 EJB 生成 JNDI 名称。当在“单元测试环境”中运行此 EJB 时,会在控制台中显示代码为 WSVR0038I 的警告,指出“找不到 EJB 的 JNDI 名称,将使用基于 home 接口的缺省绑定名称”。此错误不会影响 Web Service。使用 J2EE 工具来指定 EJB 的 JNDI 名称以避免此问题。

反馈