wayne

          EJB3 (4)

          如果一個遠程接口有兩個實現,需要用mappedName來區分
          首先定義一個遠程接口:

          @Remote
          public interface HelloRemote {

              String sayHi(String name);
          }


          第一個實現:
          @Stateless(mappedName="hello")
          public class HelloBean implements HelloRemote {

              
          public String sayHi(String name) {
                  
          return "Hi " + name; 
              }

          }

          第二個實現:
          @Stateless(mappedName="hello2")
          public class HelloBean2 implements HelloRemote{

              
          public String sayHi(String name) {
                  
          return "Hello " + name;
              }


          }

          兩個無狀態會話bean實現了同一個遠程接口,但它們的mappedName不一樣,還有它們各自重寫了sayHi業務方法。部署EJB模塊然后測試,首先是Servlet:
              @EJB(mappedName="hello2")
              
          private HelloRemote helloBean2;
              @EJB(mappedName
          ="hello")
              
          private HelloRemote helloBean;

          然后是JSP:
          <%
                      InitialContext ctx 
          = new InitialContext();
                      HelloRemote helloBean 
          = (HelloRemote)ctx.lookup("hello");
                      out.println(helloBean.sayHi(
          "Tom"));
                      HelloRemote helloBean2 
          = (HelloRemote)ctx.lookup("hello2");
                      out.println(
          "<br>" + helloBean2.sayHi("Tom"));
          %>

          呵呵,遠程調用也實現了多態

          posted on 2008-09-13 00:21 waynemao 閱讀(173) 評論(0)  編輯  收藏


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


          網站導航:
           

          My Links

          Blog Stats

          常用鏈接

          留言簿(1)

          隨筆分類

          隨筆檔案

          default

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 五原县| 明水县| 温泉县| 南皮县| 突泉县| 岐山县| 高邮市| 安新县| 都昌县| 柞水县| 嘉定区| 封开县| 华亭县| 开原市| 会理县| 鄂温| 顺义区| 准格尔旗| 阳谷县| 普陀区| 廊坊市| 那曲县| 饶平县| 霍邱县| 晋城| 宣武区| 宾阳县| 喀喇沁旗| 肇州县| 莎车县| 余江县| 迭部县| 长丰县| 滦南县| 揭阳市| 独山县| 太仆寺旗| 广南县| 密云县| 玉屏| 绍兴市|