simple ejb3

服务端 发布到Jboss AS 7.1.1 Final版本中

把下面的服务器端的导出为myejb3.jar

拷贝到/jboss/standalone/deployments 目录下,

在/jboss/bin 目录下,  找到standalone.bat 文件 ,并双击启动 jboss。

代码如下:

接口 HelloWorld

1 package com.ouyang.ejb3;
2 
3 public interface HelloWorld {
4 
5     public String sayHello(String name);
6 }
HelloWorld

实现类:HelloWorldBean

 1 package com.ouyang.ejb3;
 2 
 3 import javax.ejb.Remote;
 4 import javax.ejb.Stateless;
 5 
 6 @Stateless
 7 @Remote({HelloWorld.class})
 8 public class HelloWorldBean implements HelloWorld {
 9 
10     @Override
11     public String sayHello(String name) {
12         return name+"say:hello! World,this is my first EJB3.";
13     }
14 }
HelloWorldBean

 

新建一个客户端Web项目,使用tomcat发布

index.jsp

 1 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
 2 <%@ page import="java.util.*,javax.naming.*,com.ouyang.ejb3.HelloWorld"%>
 3 <%
 4         final Hashtable<String, String> jndiProperties = new Hashtable<String, String>();
 5         jndiProperties.put(Context.URL_PKG_PREFIXES, "org.jboss.ejb.client.naming");
 6         final Context context = new InitialContext(jndiProperties);
 7         final String appName = "";        //这里是.EAR包的名称,如果你打包成JAR发布的话,这里则留空
 8         final String moduleName = "myejb3";        //这里是你发布的JAR文件名,如helloworld.jar,则这里应该为helloworld。去掉后缀即可
 9         final String distinctName = "";                  //如果没有定义其更详细的名称,则这里留空
10         final String beanName = "HelloWorldBean";       //这里为实现类的名称
11         final String viewClassName = HelloWorld.class.getName();        //这里为你的接口名称
12         try {
13             HelloWorld hw = (HelloWorld) context.lookup("ejb:" + appName + "/" + moduleName + "/" + distinctName + "/" + beanName + "!" + viewClassName);
14             System.out.println(hw.sayHello("hello ejb3"));
15         }catch(NamingException e) { 
16             e.printStackTrace(); 
17         } 
18 %>
index.jsp
posted @ 2014-07-25 16:19  oyaimj  阅读(134)  评论(0编辑  收藏  举报