在WebLogic下ejb的用戶端程式的形式和特點

來源:互聯網
上載者:User
web|程式|用戶端 對於weblogic的用戶端程式可以是JSP/servlet,也可以是Application的。1)jsp/servlet與EJB運行在同一個應用伺服器上,其典型代碼可如下:(無須建立t3協議下的串連,直接由用戶端完成)                   Context ctx=new InitialContext();                 Object obj =ctx.lookup("ejb/com/J2EE/first/ejb/HelloHome");                HelloHome trH=(HelloHome) PortableRemoteObject.narrow(obj,HelloHome.class);           Hello tr=trH.create();           out.println(tr.hello()); 註:該jndi-name可以放到web.xml中並用String JNDIName=getServletConfig().getInitParameter("para-name")來獲得jndi.2)對於一般的application而言,就與ejb不在同一個應用伺服器下,那怕是在同一台機器上。  注意:(1)在用戶端的系統變數要有:..\weblogic81 erver\lib\weblogic.jar; 否則不能運行。        (2)在檔案配置必須要有:遠程類,遠程home類(一般不包含bean類,即業務類)才能確保客戶類的運行。        通常以包的形式來組織這些檔案,要注意按package是否正確的配置,否則出錯。  其典型代碼可如下:             String url="t3://localhost:7001";     Properties prop=new Properties();     prop.put(Context.PROVIDER_URL,url);            prop.put(Context.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextFactory");            prop.put(Context.SECURITY_PRINCIPAL, "name");         prop.put(Context.SECURITY_CREDENTIALS,"code");     Context ctx=new InitialContext(prop);  Object obj=ctx.lookup("ejb/com/J2EE/first/ejb/HelloHome");  HelloHome trH=(HelloHome) PortableRemoteObject.narrow(obj,HelloHome.class);  Hello tr=trH.create();  System.out.println(tr.hello());      注意:Context.SECURITY_PRINCIPAL和Context.SECURITY_CREDENTIALS是可選的,涉及到對ejb的操作的許可權。

相關文章

Beyond APAC's No.1 Cloud

19.6% IaaS Market Share in Asia Pacific - Gartner IT Service report, 2018

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。