<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));//沒有任何實現類的接口如果能調用方法?  回復  更多評論
      


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


    網站導航:
     
    主站蜘蛛池模板: 成人福利在线观看免费视频| 久久久久久一品道精品免费看| 国产精品亚洲а∨天堂2021| 久久国产免费福利永久| 中文字幕亚洲色图| 18禁成人网站免费观看| 亚洲女人18毛片水真多| 男女免费观看在线爽爽爽视频 | 精品亚洲永久免费精品| 久久精品国产精品亚洲艾草网美妙 | 免费观看美女裸体网站| 欧美亚洲国产SUV| 国产在线98福利播放视频免费| 日韩欧美亚洲中文乱码| 免费在线观看黄网| 国产伦精品一区二区免费| 亚洲色精品aⅴ一区区三区| 精品亚洲永久免费精品| 亚洲综合亚洲国产尤物| 国产精品成人免费视频网站京东| 亚洲AV无码专区国产乱码不卡| 免费v片在线观看无遮挡| 中文字幕在线视频免费| 2022年亚洲午夜一区二区福利| 国产成人无码免费看视频软件 | 成年人免费观看视频网站| 亚洲av无码有乱码在线观看| 亚洲欧洲久久久精品| 无码人妻一区二区三区免费看| 亚洲欧洲精品一区二区三区| 妞干网在线免费视频| a级毛片免费高清视频| 亚洲人成网站在线播放影院在线 | 久久精品国产精品亚洲色婷婷| h视频在线观看免费完整版| 亚洲国产精品无码久久九九大片| 日韩亚洲精品福利| 99ee6热久久免费精品6| 亚洲欧美日韩中文无线码 | 日韩国产欧美亚洲v片| 亚洲精品中文字幕乱码三区|