[英]How to bundle glassfish-resources.xml with distributed .jar file?
在glassfish-resources.xml部署描述符文件中定義了應用程序范圍的資源。 該文件位於模塊或應用程序歸檔文件的META-INF目錄中。
但是,事實並非如此。 完成后,將.jar文件部署到我的Glassfish 3.1.2服務器上,他拋出了幾個異常,並說:
准備應用程序時發生異常:無效的資源:jdbc / malivechat-db-ds__pm
我的資源的JNDI名稱實際上是“ jdbc / malivechat-db-ds”。 因此,我不知道下划線“ __pm”來自(?)。 但是,如果我分別添加資源,例如說我通過管理控制台執行此操作,或者讓Netbeans為我部署該程序包,則一切正常。
有沒有辦法將glassfish-resources.xml文件與我們的分布式.jar文件捆綁在一起?
我的看法是,必須如此。 盡管添加資源似乎是特定於應用程序服務器的(為什么?我是說為什么要使用“ glassfish-resources.xml”,而不僅僅是“ resources.xml”?),但是肯定應該有一種方法來添加所有供應商特定的* -resources.xml文件。到我們的.jar文件,從而“支持”一組不同的應用程序服務器?
無論哪種方式,按照Glassfish文檔所說的那樣執行似乎都不起作用,或者我遇到了完全錯誤的事情。
也許這是您的問題: 錯誤243034-為了安裝jdbc池,未在Glassfish上執行項目中的文件glassfish-resources.xml。
可能相關:
如何在部署時自動在Glassfish中設置JTA數據源/資源?
如何部署Web應用程序並創建其資源 (使用建議的解決方案)
我有同樣的問題。 我通過在資源名稱中指定JNDI應用程序名稱空間來解決此問題。 嘗試將glassfish-resources.xml
JNDI資源名稱更改為如下所示: jndi-name="java:app/malivechat-db-ds"
並使用相同的語法查找您的資源。 例如在persistence.xml
:
<jta-data-source>java:app/malivechat-db-ds</jta-data-source>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.