1、首先:新建一个文件夹用于放置java类文件,比如:firstejb
2、可在该目录下新建一个文件夹作为java文件的包比如:first
3、在first新建java类,如:
HelloRemote.java
package first; import javax.ejb.Remote; @Remote public interface HelloRemote { public String sayHello(String user); }
Hello.java
package first; import javax.ejb.Stateless; @Stateless public class Hello implements HelloRemote { public String sayHello(String user){ return "hello,"+user; } }
4、编译该文件first中的java类,(首先要先设置一下classpath)如:(因为编译该文件需要用到jboss中中的jar,所以需先设置classpath)
E:\JavaS2SHProject\firstejb>set classpath=D:\Program Files\JavaJBossServer\jboss4.2\client\jboss-ejb3x.jar;.
5、编译java类:如:
E:\JavaS2SHProject\firstejb>javac first\*.java
6、将该包中的类打包
E:\JavaS2SHProject\firstejb>jar cvf firstEJB.jar .
7、启动jboss,可进入jboss中的bin目录下通过双击run.bat进行启动,或者在命令行下启动,
D:\Program Files\JavaJBossServer\jboss4.2\bin>run.bat
8、将打包好地jar放置jboss中D:\Program Files\JavaJBossServer\jboss4.2\server\default\deploy目录(这是我自己电脑的目录)
9、编写测试类:
HelloTest.java
import javax.naming.*; import first.HelloRemote; public class HelloTest { public static void main(String[] args){ System.setProperty(Context.INITIAL_CONTEXT_FACTORY,"org.jnp.interfaces.NamingContextFactory"); System.setProperty(Context.PROVIDER_URL,"jnp://localhost:1099"); Context ctx=null; try{ ctx=new InitialContext(); HelloRemote hello=(HelloRemote)ctx.lookup("Hello/remote"); String result=hello.sayHello("lkh"); System.out.println(result); }catch(NamingException e){ e.printStackTrace(); } } }
10、编译HelloTest.java
E:\JavaS2SHProject\firstejb>javac HelloTest.java
E:\JavaS2SHProject\firstejb>set classpath=D:\Program Files\JavaJBossServer\jboss4.2\client\jbossall-client.jar;.
11、执行HelloTest
java HelloTest
输出如下结果