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
输出如下结果