2010-06-19 103 views
0

我快要瘋了試圖解決這一問題異常:javax.naming.NameNotFoundException:不綁定JNDI名稱未綁定

這是建在的IntelliJ和部署在JBoss 4.2.3條紋Web應用程序無法無天(使用4.2.3因爲Stripes在更新的版本中有問題,我以前成功地使用了4.2.3,所以我知道這不是問題)。我有一個名爲「ListingManagerBean」的會話bean。我檢查了jboss jndi樹,並且找不到它。所以看起來問題在於jar沒有被部署。我看着我的耳朵文件,它有戰爭和罐子。耳結構如下:

lawless.ear 
|- lawless.jar 
|- lawless.war 
|- [a bunch of other jars] 
|- META-INF 
    |- application.xml 
    |- MANIFEST.MF 

的application.xml如下:

<?xml version="1.0" encoding="UTF-8"?> 
<application xmlns="http://java.sun.com/xml/ns/javaee" 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
    http://java.sun.com/xml/ns/javaee/application_5.xsd" 
      version="5"> 
    <display-name>Lawless</display-name> 
    <module id="Lawless-EJB"> 
     <ejb>lawless.jar</ejb> 
    </module> 
    <module id="Lawless-Web"> 
     <web> 
      <web-uri>lawless.war</web-uri> 
      <context-root>/</context-root> 
     </web> 
    </module> 
</application> 

我缺少的東西?請幫助。

回答

0

您可以檢查服務器日誌文件並按照ear文件的部署。如果jar文件無法部署,您會在那裏找到它,並提供或多或少有意義的錯誤消息,指出在哪裏查找錯誤。

+0

嗨。謝謝回覆。我沒有任何錯誤是日誌。我看到一些行表明lawless.jar已經部署,更具體地說,它爲ListingManagerBean創建了一個服務。另外,jar中的實體連接到數據庫並在應用程序啓動時生成表。所以我完全搞不明白爲什麼豆子不會在jndi樹中。我甚至嘗試使用註釋來設置jndi的名稱,但這也不起作用。 – Brian 2010-06-20 04:12:48

+0

還注意到一條非常有趣的行: 將工廠綁定到JNDI名稱:persistence.units:ear = lawless.ear,jar = lawless.jar,unitName = lawless – Brian 2010-06-20 04:17:22