WEB开发网
开发学院软件开发Java 在 Apache Geronimo 应用程序中实现和部署 Web 服... 阅读

在 Apache Geronimo 应用程序中实现和部署 Web 服务

 2010-03-26 00:00:00 来源:WEB开发网   
核心提示: 现在已经开发了 Web 服务部署描述符,可以通过 Java Naming and Directory Interface(JNDI)获取 Web 服务实例了,在 Apache Geronimo 应用程序中实现和部署 Web 服务(9),清单 12 给出一个例子:清单 12. 调用 Web 服务I

现在已经开发了 Web 服务部署描述符,可以通过 Java Naming and Directory Interface(JNDI)获取 Web 服务实例了。清单 12 给出一个例子:

清单 12. 调用 Web 服务

InitialContext ctx = new InitialContext(); 
BusinessLogicService service = 
  (BusinessLogicService) ctx.lookup("java:comp/env/service/BusinessLogicService"); 
BusinessLogicEndpoint endpoint = service.getBusinessLogicEndpointPort(); 
// Invoke methods on the endpoint interface... 

在 Funds Transfer 应用程序中,有一个调度器 servlet(WebServiceClientServlet),它与 JavaServer Pages™(JSP)一起提供一个调用 Web 服务方法的示例接口。

为什么不使用 Eclipse WTP?

到撰写本文时,Eclipse Foundation 已经发布了 WebTools Project 0.7,这个版本只为 Apache Geronimo 和 Web 服务提供了最低限度的支持。尽管这个工具很有发展潜力,但是它目前缺少一些重要的特性。

缺少的一种特性是将 Enterprise Application ARchive(EAR)文件部署到 Geronimo 的能力。WTP 0.7 只能部署模块,比如 Web、EJB 等等。不幸的是,本文描述的应用程序需要这种功能,因为 J2EE 应用程序部署描述符(EAR 描述符)包含重要的信息。部署所有其他模块需要这些信息,比如数据库配置、Java Messaging Services(JMS)配置和安全配置。因此,WTP 工具 Web 服务生成向导无法正确地生成服务,本文中这个应用程序的开发无法利用这种向导。

在 Geronimo 早期版本中遇到的另一个问题在 WTP 中也存在 —— 向导对于 Web 服务只支持 Axis 运行时。这导致创建与 J2EE 不兼容的 Web 服务,并在项目源代码中生成许多文件。另外,这些向导不支持为服务和 Web 服务客户机指定 SOAP 处理程序。这导致手工编辑处理程序,这很费事儿。

开发 Web 服务及其客户机时,更好的办法是更充分地支持 JSR 109 规范。当前,WTP 还没有完整地支持这个规范,因此限制了 Web 服务、Web 服务客户机及其处理程序在 Project Explorer 树中的表现;所以只能查看这些信息,不能编辑。如果 WTP 提供丰富的编辑器和 Web 服务部署描述符(比如 webservices.xml、webservicesclient.xml 和 JAX RPC 映射描述符),也可能会有帮助。

结束语

本文描述了如何使用 Geronimo 应用服务器提供的 Web 服务功能来构建支持 Web 服务的应用程序。它说明了这种应用服务器依赖于 J2EE 1.4 规范,为构建 Web 服务及其客户机提供了许多功能。

值得注意的是,尽管到撰写本文时 Geronimo 应用服务器还没有提供正式发布的开发工具集,但是 Eclipse WTP 项目已经开始开发这些工具了。

总之,这种应用服务器已经展现出对 J2EE 标准健壮的支持,以后一定会在中小型企业 IT 项目中占有一席之地。

上一页  4 5 6 7 8 9 

Tags:Apache Geronimo 应用程序

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接