2009-05-28 80 views
2

是否可以覆蓋war文件的WEB-INF/jboss-web.xml中的設置?我有一個來自供應商的war文件,我想更改它使用的數據源而不修改war文件本身。是否可以覆蓋jboss-web.xml文件中的設置?

<?xml version="1.0" encoding="UTF-8"?> 
<jboss-web> 
    .... 
    <resource-ref> 
    <res-ref-name>jdbc/primaryDatasource</res-ref-name> 
    <res-type>javax.sql.DataSource</res-type> 
    <jndi-name>java:/primaryDS</jndi-name> 
</resource-ref> 

我想要在同一容器中運行相同的戰爭文件的兩個副本,但每個指向不同的數據庫。我可以修改戰爭文件本身,但每次供應商發佈更新時,我都必須對其進行重新修改。

我想第一個war文件繼續使用primaryDS,但第二個實例使用secondaryDS。我使用的容器是jboss-4.2.3.GA。

回答

1

你的意思是你想改變'primaryDS'的配置方式嗎?這與web.xml或JBoss的web.xml默認值無關。這是在JBoss特定的容器配置中配置的。我忘記了這個文件的位置,但它是包含元素的文件。

你的意思是你想要.war引用「primaryDS」之外的內容嗎? J2EE模型表示,這實際上是您作爲部署者的工作,將供應商/應用程序的虛擬名稱'jdbc/primaryDatasource'連接到容器中的實際數據源。

但是...你能不能簡單地將你想要的配置重命名或複製到你的容器中名爲'primaryDS'的配置中?

如果你有一個.war文件,兩個副本,並且想要以不同方式配置它們,那麼恐怕似乎沒有辦法修改web.xml。 'primaryDS'不能解決兩件事。

相關問題