<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    沉睡森林@漂在北京

    本處文章除注明“轉載”外均為原創,轉載請注明出處。

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      152 隨筆 :: 4 文章 :: 114 評論 :: 0 Trackbacks
      做了一個ejb的小例子,開始利用jboss5出現了問題,后來換了3的版本就好了。下面是代碼貼出來,主要是別人的代碼改的,相信很多人都看過這個代碼了。
    package com.myejb.greet;

    import java.rmi.RemoteException;

    import javax.ejb.EJBObject;

    public interface Greet extends EJBObject{
        
    public double calculateMagic(double seed) throws RemoteException;
    }


    package com.myejb.greet;

    import javax.ejb.SessionBean;
    import javax.ejb.SessionContext;

    public class GreetBean implements SessionBean {
        
        
    private static final long serialVersionUID = 6729996959104578698L;

        
    public double calculateMagic(double seed) {
            System.out.println(
    "Someone called `calculateMagic!'");
            
    return seed * Math.random();
        }

        
    public GreetBean() {
        }

        
    public void ejbCreate() {
            System.out.println(
    "Create Greet EJB.");
        }

        
    public void ejbRemove() {
            System.out.println(
    "Remove Greet EJB.");
        }

        
    public void ejbActivate() {
            System.out.println(
    "Activate Greet EJB");
        }

        
    public void ejbPassivate() {
            System.out.println(
    "Passivate Greet EJB");
        }

        
    /**
         * Set context for `Greet' EJB
         
    */
        
    public void setSessionContext(SessionContext sc) {
            System.out.println(
    "Set context for Greet EJB");
        }
    }


    package com.myejb.greet;

    import java.rmi.RemoteException;

    import javax.ejb.CreateException;
    import javax.ejb.EJBHome;

    public interface GreetHome extends EJBHome {
        Greet create() 
    throws RemoteException, CreateException;
    }


    下面是META-INF下面的XML配置文件:
    ejb-jar.xml
    <?xml version="1.0" encoding="UTF-8"?> 
    <!DOCTYPE ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN" "http://java.sun.com/dtd/ejb-jar_2_0.dtd"> 
    <ejb-jar>
        
    <description>jBoss test application </description>
        
    <display-name>Test</display-name>
        
    <enterprise-beans>
            
    <session>
                
    <ejb-name>GreetEJB</ejb-name>
                
    <home>com.myejb.greet.GreetHome</home>
                
    <remote>com.myejb.greet.Greet</remote>
                
    <ejb-class>com.myejb.greet.GreetBean</ejb-class>
                
    <session-type>Stateless</session-type>
                
    <transaction-type>Bean</transaction-type>
            
    </session>
        
    </enterprise-beans>
    </ejb-jar>

    jboss.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <jboss>
        
    <enterprise-beans>
            
    <session>
                
    <ejb-name>GreetEJB</ejb-name>
                
    <jndi-name>GreetingEJB</jndi-name>
            
    </session>
            
    <secure>false</secure>
        
    </enterprise-beans>
    </jboss>
      

    下面是測試java類:
    import java.util.Hashtable;

    import javax.naming.Context;
    import javax.naming.InitialContext;
    import javax.rmi.PortableRemoteObject;

    import com.myejb.greet.Greet;
    import com.myejb.greet.GreetHome;

    public class TestMain {

        
    /**
         * 
    @param args
         
    */
        @SuppressWarnings(
    "unchecked")
        
    public static void main(String[] args) {
            Hashtable env 
    = new Hashtable();
            env.put(Context.INITIAL_CONTEXT_FACTORY, 
    "org.jnp.interfaces.NamingContextFactory");
            env.put(Context.URL_PKG_PREFIXES, 
    "org.jboss.naming");
            env.put(Context.PROVIDER_URL, 
    "localhost:1099");

            
    try {
                Context jndiContext 
    = new InitialContext(env);
                System.out.println(
    "Got context");
                Object ref 
    = jndiContext.lookup("GreetingEJB");
                System.out.println(
    "Got reference");
                GreetHome home 
    = (GreetHome) PortableRemoteObject.narrow(ref, GreetHome.class);
                Greet greet 
    = home.create();
                System.out.print(
    "The magic number from server is ");
                System.out.println(greet.calculateMagic(
    123.456));
            } 
    catch (Exception ex) {
                ex.printStackTrace();
            }
        }
    }


    posted on 2009-03-11 13:51 王總兵 閱讀(892) 評論(2)  編輯  收藏

    評論

    # re: 一個EJB的小例子 2009-03-11 13:52 王兵
    注意需要把C:\Program Files\jboss-3.2.5\client這個目錄下面的一些關于client的jar包考到client的測試環境下

    不然編譯和運行都有問題  回復  更多評論
      

    # re: 一個EJB的小例子[未登錄] 2012-09-10 21:49 123
    感覺有問題??!
    Greet greet = home.create();//這里返回的是什么對象?
    System.out.println(greet.calculateMagic(123.456));//沒有任何實現類的接口如果能調用方法?  回復  更多評論
      


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 狠狠热精品免费观看| 男女啪啪免费体验区| 久久这里只精品热免费99| 精品久久香蕉国产线看观看亚洲| 免费视频成人国产精品网站| 俄罗斯极品美女毛片免费播放| 黄色一级毛片免费看| 中文字幕亚洲第一| 最新国产乱人伦偷精品免费网站 | 久久久高清免费视频| 亚洲中文字幕无码中文字| 在线观看无码的免费网站| 亚洲高清国产拍精品熟女| 国产乱子伦精品免费无码专区 | 亚洲国产精品成人综合色在线婷婷| 久久久久高潮毛片免费全部播放 | 国产婷婷高清在线观看免费| 日本系列1页亚洲系列| 国产成人高清亚洲| 十八禁在线观看视频播放免费| 亚洲va在线va天堂va888www| 亚洲一级免费毛片| 亚洲精品乱码久久久久久V| 亚洲精品成人片在线观看| 中文无码成人免费视频在线观看| 久久亚洲精品中文字幕| 97人妻无码一区二区精品免费| 亚洲精品无码av中文字幕| 亚洲婷婷国产精品电影人久久| 日韩精品无码免费专区午夜| 亚洲视频在线观看网址| 日韩在线视频免费看| 国产福利免费视频| 亚洲an日韩专区在线| 亚洲国产精品毛片av不卡在线| 一级毛片免费不卡在线| 亚洲粉嫩美白在线| 亚洲精品自在在线观看| 欧洲乱码伦视频免费| 亚洲一级片免费看| 亚洲人成人伊人成综合网无码|