EJB3 helloworld

服务器 JBoss 4.2

 

  定义一个接口:

 

package com.ejb.iface; public interface Helloworld { public String sayHello(String name); }

 

实现该接口:定义一个Enterprise JavaBean 

注意:命名规范一般Bean结尾

 

package com.ejb.bean; import javax.ejb.Remote; import javax.ejb.Stateless; import com.ejb.iface.Helloworld; @Stateless @Remote(Helloworld.class) public class HelloworldBean implements Helloworld { @Override public String sayHello(String name) { return "你好..." + name; } }

 

 

EJB 客户端调用

注意:需要 jbossall-client.jar     jnp-client.jar    log4j.jar  三个jar

 

package com.client; import javax.naming.InitialContext; import com.ejb.iface.Helloworld; public class HelloworldClient { /** * @param args * @throws Exception */ public static void main(String[] args) throws Exception { InitialContext ctx = new InitialContext(); Helloworld helloworld = (Helloworld) ctx.lookup("HelloworldBean/remote"); System.out.println(helloworld.sayHello("Spring咖啡...")); } }

 

另外客户端需要一个jndi.properties文件

InitialContext ctx = new InitialContext();  执行该代码的时候客户端会在当前路径下查找该属性文件

其内容如下:(具体意思不是很懂。。。)

 

java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory java.naming.provider.url=localhost:1099 java.naming.factory.url.paks=org.jboss.naming:org.jnp.interfaces

 

注意属性文件的值后面不能有空格 否则会报出一个 [org.jnp.interfaces.NamingContextFactory   (空格) ] 

不能找到的异常

 

将工程部署到Jboss中的方式如下:

 

具体含义不解释

 

 

你可能感兴趣的:(EJB3)