我已經使用我的weblogic控制檯創建了一個JNDI數據源,但我無法從我的Web應用程序訪問該對象。以下是詳細內容如何訪問weblogic 10.3.6中定義的JNDI數據源
在WebLogic 10.3.6,我已經給了JNDI名稱爲數據源爲:
:jdbc/mydb
要想從我的web應用程序的數據庫連接我在我的web應用程序編寫的代碼
Context initContext = new InitialContext();
DataSource ds = (DataSource)initContext.lookup("java:/comp/env/jdbc/mydb");
jndiConnection = ds.getConnection();
早些時候,我使用Tomcat作爲服務器,我能得到數據庫連接,當我配置的文件tomcat/conf/server.xml
在資源的詳細信息,但是當我使用使用WebLogic Server我得到以下錯誤啓動:
Cannot establish DB connection to JNDI:java:/comp/env/jdbc/mydb While trying to look up /comp/env/jdbc/mydb in /app/webapp/sample.war/1811641702. caused by: javax.naming.NameNotFoundException: While trying to look up /comp/env/jdbc/mydb in /app/webapp/sample.war/1811641702.; remaining name '/comp/env/jdbc/mydb'
我試過了這個鏈接中提到的選項:How to lookup JNDI resources on WebLogic?但我仍然面臨問題。
請讓我知道我在做什麼錯誤,訪問JNDI對象的過程是什麼。
您的意思是它命名爲 「jdbc/mydb的」,而不是 「的Java/MYDB」? – 2013-04-25 17:22:00
@better_use_mkstemp是的,我已經更新了我的問題,感謝您指出它。 – chaitanya 2013-04-25 18:29:48
您是否還嘗試過在問題鏈接中的第二個解決方案?第一個答案適用於Tomcat,但我不確定它始終可用於weblogic。刪除java:comp/env /並嘗試initContext.lookup(「jdbc/mydb」)? – 2013-04-25 18:34:30