新聞中心
我覺得做一個客戶端調(diào)用一個實體bean算是一個完整列子吧,實體bean這里不就不詳細說了??蛻舳苏{(diào)用需要使用會話bean這個也寫好吧。然后打包這個EJB,這里EJB部署到j(luò)boss下就可以使用了

10年積累的做網(wǎng)站、成都網(wǎng)站制作經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認識你,你也不認識我。但先網(wǎng)站設(shè)計后付款的網(wǎng)站建設(shè)流程,更有寧安免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
另外我使用oracle數(shù)據(jù)庫,所以在jboss下的deploy下得增加oracle數(shù)據(jù)源配置文件,如下:
- oracledb-ds.xml
oracleDS - jdbc:oracle:thin:@localhost:1521:cmmboss
oracle.jdbc.driver.OracleDriver system cmmboss oracle10g
注意這個jndi名字和你調(diào)用的時候一致,這個實在EJB這個里面的persistence.xml里面一致部署的話。EJB打包的jar可以單獨部署于deploy下面。
也可以打包成ear里面
ear的結(jié)構(gòu):mytestEJBweb.ear
- META-INF
- --application.xml
- testEJBweb.war
- testEJB.jar
客戶端調(diào)用,可以是普通類,也可以是servlet 。我這里以一個servlet距離
在servlet初始化的時候處理
- public void init() throws ServletException {
- Hashtable properties = new Hashtable();
- properties.put(Context.INITIAL_CONTEXT_FACTORY, "org.jnp.interfaces.NamingContextFactory");
- properties.put(Context.PROVIDER_URL, "jnp://localhost:1100");
這里特別注意的是使用jnp方式訪問,其他容器都有自己的訪問方式,比如weblogic使用T3,ip如果是夸ip訪問注意ip綁定,還有端口號是jnp的端口1100,而不是http端口8080等
- properties.put(Context.URL_PKG_PREFIXES, "org.jboss.naming:org.jnp.interfaces");
- try {
- InitialContext ctx = new InitialContext(properties);
- ComputerBeanRemote computerBean = (ComputerBeanRemote)ctx.lookup("mytestEJBweb/ComputerBean/remote");
這里首先調(diào)用的是ear這個資源的jndi路徑(我第一次使用了war的資源路徑,唉對jndi沒有理解,調(diào)試了一個晚上,希望大家不要犯我這樣的錯誤),然后再是EJB bean的路徑,
- this.computerBean = computerBean;
- } catch (NamingException e) {
- e.printStackTrace();
- }
- }
【編輯推薦】
- Spring支持EJB的實現(xiàn)
- EJB和Spring全面比較
- Weblogic開發(fā)和EJB基礎(chǔ)應(yīng)用
- JDO、EJB CMP、Hibernate和Amber比較
- 采用EJB開發(fā)的三個優(yōu)勢
標(biāo)題名稱:淺談如何將EJB部署在Jboss下
標(biāo)題URL:http://m.fisionsoft.com.cn/article/cohojgg.html


咨詢
建站咨詢
