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

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

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

    城市獵人

    在一網(wǎng)情深的日子里,誰能說得清是苦是甜,只知道確定了就義無反顧
    posts - 1, comments - 7, trackbacks - 0, articles - 89
    來源:http://blog.163.com/e_adon/blog/static/338840452007721831904/

            在分布式開發(fā)中,JAVA客戶端程序是通過JNDI去查詢EJB的,而JNDI的全名是:The Java Naming and Directory Interface。因?yàn)镴NDI 是一組接口,所以我們只需根據(jù)接口規(guī)范編程就可以。要通過JNDI 進(jìn)行資源訪問,我們必須設(shè)置初始化上下文的參數(shù),主要是設(shè)置JNDI 驅(qū)動的類名(java.naming.factory.initial)和提供命名服務(wù)的URL
    (java.naming.provider.url)。因?yàn)镴ndi 的實(shí)現(xiàn)產(chǎn)品有很多。所以java.naming.factory.initial 的值因提供JNDI 服務(wù)器
    的不同而不同,java.naming.provider.url 的值包括提供命名服務(wù)的主機(jī)地址和端口號。

            大家在編程時,最令人氣憤的就是EJB程序?qū)懞昧耍蛻舳藚s不知道如何去調(diào)用它,一般書上只是介紹一種應(yīng)用服務(wù)器的訪問代碼其它的不會提到,找這方面資料又比較麻煩,當(dāng)誤大家許多時間和精力,因此我就把已經(jīng)找到的代碼貼出來,方便大家查找。

            暫且提供以下三種服務(wù)器的代碼,今后再慢慢補(bǔ)充吧。

            下面是訪問Jboss 服務(wù)器的
            
            例子代碼:

    1Properties props = new Properties();
    2props.setProperty("java.naming.factory.initial", "org.jnp.interfaces.NamingContextFactory");
    3props.setProperty("java.naming.provider.url", "localhost:1099");
    4InitialContext = new InitialContext(props);
    5HelloWorld helloworld = (HelloWorld) ctx.lookup("HelloWorldBean/remote");
    6

            
            下面是訪問Sun ApplicationServer 及glassfish 應(yīng)用服務(wù)器的例子代碼:
            

    1Properties props = new Properties();
    2props.setProperty("java.naming.factory.initial",
    3"com.sun.enterprise.naming.SerialInitContextFactory");
    4props.setProperty("java.naming.provider.url", "localhost:3700");
    5InitialContext = new InitialContext(props);
    6HelloWorld helloworld = (HelloWorld) ctx.lookup("com.0735jb.ejb3.HelloWorld");


            下面是訪問Weblogic10 應(yīng)用服務(wù)器的例子代碼:

    1Properties props = new Properties();
    2props.setProperty("java.naming.factory.initial", "weblogic.jndi.WLInitialContextFactory");
    3props.setProperty("java.naming.provider.url", "t3://localhost:7001");
    4InitialContext = new InitialContext(props);
    5HelloWorld helloworld = (HelloWorld) ctx.lookup("HelloWorldBean
    6#com.0735jb.ejb3.HelloWorld");

     

            上面是服務(wù)器默認(rèn)的JNDI命名規(guī)則,那么如何修改它呢.

            在Jboss 中要自定義JNDI 名稱,可以使
            用@LocalBinding 和@RemoteBinding 注釋,@LocalBinding 注釋指定Session Bean 的Local 接口的JNDI 名稱,
            @RemoteBinding 注釋指定Session Bean 的Remote 接口的JNDI 名稱,下面的代碼展示了如何自定義JNDI 名:

     

    1@Stateless
    2@Remote ({Operation.class})
    3@RemoteBinding (jndiBinding="0735jb/RemoteOperation")
    4@Local ({LocalOperation.class})
    5@LocalBinding (jndiBinding="0735jb/LocalOperation")

     

            在JSP 客戶端調(diào)用上面EJB 的代碼片斷如下:

    1InitialContext ctx = new InitialContext(props);
    2Operation operation = (Operation) ctx.lookup("0735jb/RemoteOperation");
    3在weblogic10 中,你可以通過@Stateless.mappedName()設(shè)置全局JNDI 名稱,如:
    4@Stateless(mappedName="OperationBeanRemote")
    5public class OperationBean implements Operation, LocalOperation {
    6


            客戶端調(diào)用EJB 的代碼片斷如下:

    1InitialContext ctx = new InitialContext(props);
    2Operation operation = (Operation) ctx.lookup("OperationBeanRemote#com.0735jb.ejb3.Operation");
    主站蜘蛛池模板: 亚洲国产高清视频| 亚洲av无码成人精品区一本二本| 免费在线视频你懂的| 亚洲av色香蕉一区二区三区蜜桃| 亚洲精品国产福利一二区| 在线看片免费人成视久网| 无码天堂va亚洲va在线va| 亚洲AV日韩AV高潮无码专区| 四虎成人免费影院网址| a级毛片毛片免费观看久潮| 亚洲精品第一综合99久久| 亚洲一级片内射网站在线观看| 永久黄色免费网站| 一级做a爰性色毛片免费| 亚洲视频在线观看免费视频| 免费人成视网站在线观看不卡| 免费A级毛片无码A∨| 色费女人18女人毛片免费视频 | 亚洲高清视频在线播放| 国产精品视频免费一区二区三区 | 午夜免费福利在线| 久艹视频在线免费观看| 国产精品成人亚洲| 亚洲欧洲日产国产最新| 中文字幕精品亚洲无线码一区 | 女人张开腿等男人桶免费视频| 人妻在线日韩免费视频| 美女被爆羞羞网站在免费观看| 亚洲成a人片在线观看精品| 国产成人亚洲精品青草天美| 又黄又爽一线毛片免费观看| 我们的2018在线观看免费高清| 你懂得的在线观看免费视频| 久久久久亚洲国产AV麻豆| 亚洲女人影院想要爱| 无码久久精品国产亚洲Av影片| 亚洲成av人片在线观看天堂无码| 无码高潮少妇毛多水多水免费| 99re免费视频| 国产精成人品日日拍夜夜免费| 国产黄在线观看免费观看不卡|