使用J2EE构建服务 - 编程入门网
了。让我们关注一下J2EE对于web services的支持 。
使用J2EE作为Web Services的平台 J2EE 1.4为使用常规Java类或企业级Java Beans来创建和部署web services提供了一个全面的平台。 以下表格给出了J2EE 1.4中包括的web service APIs的细节。 定义在Java Community Process的JSR 101之下的JAX-RPC,提供了创建和访问web services的Java API,因此它是使用J2EE平台创建和部署web services的“心脏和灵魂”。通过向应用程序开发者隐藏XML 类型和Java类型映射的复杂性,以及处理XML和SOAP消息的底层细节,它提供了一个简单的,健壮的创建 web services应用的平台。为了引入一个方法调用范式,它提供了两种编程模式:服务器端模式,使用 Java类或无状态EJB开发web service 端点,和客户端模式,创建作为本地对象访问web services的Java 客户端。JAX-RPC 1.1要求使用SOAP 1.1,并且实现与使用其他技术创建的web services之间的互操作性 ,比如微软的.NET。实现了J2EE1.4规范的应用服务器,比如OC4J 10.1.3和SUN的Java System Application Sever,提供了对于JAX-RPC的支持。 JAX-RPC的叫法有点用词不当,因为它既支持RPC类型的web services,也支持文档类型的web services。 Web Services部署模型 在J2EE 1.4之前,所有J2EE商家都使用他们私有的部署模型支持web services。J2EE 1.4为Java Web Services定义了部署模型。它为J2EE平台上的web services制定了开发,部署以及服务发布和使用的标准 。 有了J2EE 1.4对web services的支持,让我们学习使用J2EE平台来建造web service的方法。 使用J2EE创建一个Web Service 把web service创建成一个轻便的和可互操作的分布式组件不是一项琐碎的任务。如之前讨论的,你既 可以把常规Java类,也可以把无状态EJB部署成web services。常规Java类被打包在一个web模块中,而 EJB web services被打包在标准的ejb-jar模块中。 在这两种部署选择中,你会使用哪一个呢? Java 类对无状态EJB:永无止境的争论 你会选择常规Java类还是EJB作为你创建web service的技术可能是一个长期的争论。Java类比EJB更容 易开发,它是纯的Java对象,并且它不具有EJB带来的“额外辎重”。但是,EJB提供了几个很好的特点, 比如被声明的事务和安全性,因此它使开发者将精力集中于建立商业逻辑,而不需要担心基础服务架构。 EJB 3.0大大简化了设计模型,在它的规范中,EJB看起来就像常规Java类。 使用J2EE构建服务(4)时间:2011-10-07 onjava Debu Panda打包要求 无论你决定使用常规Java类还是EJB,你都必须把一些定义文件打包到你的WAR或ejb-jar中,这样你才 能将你的组件作为Java web service展示出来。下面是分别基于EJB和Java类的web service的打包结 构: 基于EJB 的web service的ejb-jar:
常规Java web service的web 应用(.war)
让我们讨论每一个部署时的定义文件和描述符: WSDL:如前所描述。 端点接口:web service端点必须实现java.rmi.Remote接口,并且在端点接口中的每一个方法都必须抛 出java.rmi.RemoteException异常。这个端点需要注册到模块(ejb-jar.xml或web.xml)的标准部署描述符 中。你的部署描述符(比如,ejb-jar.xml)需要包括如下条目: <service-endpoint> oracle.ejb21.ws.HelloServiceInf </service-endpoint> 如下是一个Hello World web service的端点的代码:
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |