首页 > 代码库 > simple ejb3

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     @Override11     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