技术开发 频道

如何在JBOSS Server上发布EJB

【IT168 技术文档】

准备文件
 
  需要的软件:JDK1.3(for WIN) ,J2EE_1_2_1_SDK,JBoss2.0(www.jboss.org)
 
  需要的文档:J2EE_1_2_1_SDK_DOC,Devguide1_2_1
 
准备环境
 
  安装JDK1.3(支持JBOSS),装完后检查一下环境变量,可以编译运行一个小程序试一下。
 
  安装JBOSS2.0,完成后运行bin\run.bat试一下。JNDI 端口是1099,WEB端口是8080,可以用浏览器试一下,1099端口会返回一段乱码,8080端口返回空。
 
编译和打包
 
  按照JavaTM 2 Enterprise Edition Developer´s Guide (v1.2.1)的Getting Started章中说的编译例子程序 ConverterEJB,然后用Deploy Tool打包生成 ConverterApp.ear.。
 
  用jar -xvf ConverterApp.ear 从中抽取 ejb-jar-ic.jar 这是打包好的和Bean有关的三个文件和工具生成meta-info\*.xml文件(所谓的deployment descriptor)。
 
  然后运行JBoss的Deploy Tool打开ejb-jar-ic.jar,设置JNDI Name为MyConverter,然后保存。(该工具会自动生成JBoss的Deployment descriptor)。
 
  在把ejb-jar-ic.jar拷到jboss\deploy目录下,jboss会自动发布该Bean。
 
运行客户端程序测试
 
按照JBoss的教学文档,修改 ConverterClient.java为:
 
import javax.naming.*;
 
import java.util.Hashtable;
 
import javax.rmi.PortableRemoteObject;
 
import java.util.Properties;
 
import java.io.FileInputStream;
 
import javax.rmi.PortableRemoteObject;
 
import Converter;
 
import ConverterHome;
 
public class ConverterClient {
 
public static void main(String[] args) {
 
try {
 
Properties props = new Properties();
 
Properties sysProps = System.getProperties();
 
try {
 
props.load (new FileInputStream ("test.properties"));
 
sysProps.putAll(props);
 
} catch (Exception e)
 
{
 
System.err.println ("Can´t read `test.proprties´");
 
System.exit (-1);
 
}
 
System.setProperties (sysProps);
 
Context initial = new InitialContext();
 
Object objref = initial.lookup("MyConverter");
 
ConverterHome home =
 
(ConverterHome)PortableRemoteObject.narrow(objref,
 
ConverterHome.class);
 
Converter currencyConverter = home.create();
 
double amount = currencyConverter.dollarToYen(200.00);
 
System.out.println(String.valueOf(amount));
 
amount = currencyConverter.yenToEuro(200.00);
 
System.out.println(String.valueOf(amount));
 
} catch (Exception ex) {
 
System.err.println("Caught an unexpected exception!");
 
ex.printStackTrace();
 
} }
 
}
 
test.properties文件内容如下:
 
java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory java.naming.provider.url=xxx.xxx.xxx.xxx:1099(写上JBoss所在机器的IP)
 
然后运行CompileClient.bat和TestClient.bat,就可以享受成功的喜悦了。
0
相关文章