多图详解 Java EE 6的EJB模型案例

来源:互联网 发布:为什么要拍男人装 知乎 编辑:程序博客网 时间:2024/06/05 15:01

  本文将介绍EJB模型在Java EE 6新的WebService的应用。Java EE 6最重要的一个新功能便是更好的使用EJB模型。EJB模型规定把企业bean组件一定要装在EJB-jar文件模块中。而Java EE Web应用程序通常使用的企业Bean,这些组件的必要条件必须是能承受很多负载。

 

  因为EJB 3.1的企业bean类计算繁重的问题在EJB-jar文件打包受到限制,所以必须解决这种打包受到复杂的限制。于是你只能把EJB模型放在WEB-INF/classes目录下,或者把EJB模型文件压缩成jar文件放在WEB-INF/lib目录下,这样,你才能你直接把EJB放在文件里,使用相同的适用于Web应用程序类组件规则。同时EJB模型的部署描述符也是可选的,如果你需要它,你可以把EJB部署描述符打包成一个WEB-INF/EJB-jar.xml文件。

 

  因此,我们把上述想法EJB在webservices上表现出来。下文就来讲讲如何简单地使用NetBeans 6.9和Glassfish 3.0.1通过创建和部署EJB模型。

 

  首先,让我们使用NetBeans 6.9创建一个Webservice。


NetBeans 6.9创建一个Webservice

  

接下来,我们指定项目位置。


指定项目位置

 

  选择GlassFish 3.0.1与NetBeans 6.9是捆绑在一起的服务器。注意:我使用JavaEE 6的版本。


选择GlassFish 3.0.1与NetBeans 6.9

 

 现在我们创建一个WebService的项目叫:Weather,目标项将显示为温度。


创建一个WebService的项目:Weather

  点击Finish就完成了。

 

  这里是到WebService的代码。注意:我已经添加一个WebMethod。我还指定了Interceptor的注释。EJB 3.0的Interceptor提供了良好的方法调用控制开发。在这个例子中我们打印了从该Interceptor被调用的方法。

  这里是SimpleInterceptor.java代码。


SimpleInterceptor.java代码

  

接下来,我们清理并生成项目.


生成项目

  然后点击部署。

  从这里您可以浏览的WSDL:http://localhost:8080/WeatherService/Weather?wsdl


浏览的WSDL

  注意:在WebService上EJB模型只是一个简单便捷的组件。如果是在一个一个EJB模型的EJB-jar压缩文件部署相同,在该端点部署网址也是一样的。在Glassfish 3.0有一个bug的EJB符被当作webapps的对待。所以在这里使用的都是GlassFish 3.0.1或者GlassFish 3.1。

  你看到部署的EJB模型使用NetBeans非常容易建立的。你也可以使用测试仪测试应用程序的webservice在http://localhost:8080/WeatherService/Weather?tester。这便是51CTO为各位编译的Java EE 6的EJB模型案例。

原创粉丝点击