如果想要使用 WebSphere V5 运行时将 Web 服务部署到 WebSphere V5.0 服务器,并且启用了服务器目标首选项,但是在自底向上 Java bean 或 EJB Web 服务方案中将服务 Web 或 EJB 项目设置为未指定服务器目标,则 Web 服务向导可能会显示以下错误:
从 Java 生成 WSDL 文件时出错。
详细信息:java.lang.ClassNotFoundException: com.ibm.ws.webservices.engine.encoding.SimpleType
当发生此情况时,您将注意到 Web 或 EJB 项目具有空 Java 构建路径并且“任务”视图显示以下错误:
此编译单元间接引用缺少的类型 java.lang.Object。
未构建项目,因为它的类路径不完整。找不到 java.lang.Object 的类文件
要解决此问题,首先:
- 禁用 J2EE 服务器目标首选项(缺省情况下,已禁用此首选项),或
- 如果必须启用 J2EEserver 目标首选项,则需要创建服务 Web 或 EJB 项目以及客户机 Web 项目并使用它们指向 WebSphere Application Server V5.0
然后,重新运行 Web 服务向导。
如果启用了服务器目标首选项并且将客户机 Web 项目设置为未指定服务器目标,或者如果服务 Web 或 EJB 项目将服务器目标设置为 WebSphere Application Server V5.0 并且让 Web 服务向导自动为您创建客户机 Web 项目,则在其它 Web 服务方案中可能会出现相似的空 Java 构建路径问题。
可以通过遵循上面提到的变通方法来避免此问题,或者如果已经处于 Java 构建路径在 Web 或 EJB 项目上为空的这种情况,则可以右键单击项目,选择目标服务器,然后选择修改并选择与当前服务器目标不同的服务器目标。然后,可以返回并将服务器目标修改回 WebSphere Application Server V5.0。使用此变通方法,将再次正确设置 Web 项目的 Java 构建路径。
当工作空间中不存在 EJB 项目时,在单击“EJB 框架”向导的第一页上的完成时,将弹出一条错误消息。要解决此问题,继续到下一页并输入有效 EJB 项目名称和路由器项目名称。或者,在再次尝试该方案之前,退出向导并创建 EJB 项目。
如果右键单击 Web 服务向导生成的代理并选择“Web 服务”->“生成样本应用程序”,然后选择“Web 工具 Java bean JSP”作为测试工具并单击“完成”,则当尝试在生成的样本中运行方法时,可能获得异常。会出现这种情况是因为尚未排除 getEndPoint 和 setEndPoint 方法。可以解决该问题,方法是在从弹出菜单调用“Web 工具 Java bean JSP”时取消选择这两种方法,或者选择 Web 服务样本 JSP 或“通用测试客户机”作为测试工具。或者,如果正使用 SOAP 运行时,则可以从 Web 服务向导调用 Web 工具 Java bean JSP。
当服务器重新装入时,DADX Web 服务样本 JSP 偶尔无法在浏览器中打开。在浏览器中单击重新装入图标以重新装入样本 JSP。
(C) Copyright IBM Corporation 2000, 2003. All Rights Reserved.