• 首页
  • 小学语文
  • 中学语文
  • 中学英语
  • 免费论文
  • 教学随笔
  • 学生作文
  • 综合考试
  • 试题教案
  • 育儿话题
  • 教学资源
  • 编程技术
  • 如何在JBOSS(免费的EJB server)上发布EJB.    [我要投稿]

    日期:2004-11-09   地址:   作者:
    1.准备文件

    需要的软件:JDK1.3(for WIN) ,J2EE_1_2_1_SDK,JBoss2.0(www.jboss.org)

    需要的文档:J2EE_1_2_1_SDK_DOC,Devguide1_2_1

    2.准备环境

    安装JDK1.3(支持JBOSS),装完后检查一下环境变量,可以编译运行一个小程序试一下.

    安装JBOSS2.0,完成后运行binun.bat试一下.JNDI 端口是1099,WEB端口是8080,可以用浏览器试一下,1099端口会返回一段乱码,8080端口返回空.

    3.编译和打包

    按照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拷到jbossdeploy目录下,jboss会自动发布该Bean..


    4.运行客户端程序测试

    按照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,就可以享受成功的喜悦了.


    对 如何在JBOSS(免费的EJB server)上发布EJB. 的评论   [查看评论]

    验证码:
    匿名发表: