2014-07-21 89 views
0

我有一個耳朵,包括部署在jboss上的幾個war作爲7.1.1。每個戰爭都有一個定製的JBoss Web應用程序部署描述符(jboss-web.xml),它聲明瞭上下文根和幾個jndi數據源,這些數據源都在不同的web應用程序之間共享。具有相同資源的多個JBoss Web應用程序部署描述符

<?xml version="1.0" encoding="UTF-8"?> 
<jboss-web> 

<context-root>${app.name}</context-root> 

<resource-ref> 
    <res-ref-name>${datasource}</res-ref-name> 
    <res-type>javax.sql.DataSource</res-type> 
    <jndi-name>java:/TenantDS</jndi-name> 
</resource-ref> 

<resource-ref> 
    <res-ref-name>${shared.datasource}</res-ref-name> 
    <res-type>javax.sql.DataSource</res-type> 
    <jndi-name>java:/CustomerDS</jndi-name> 
</resource-ref> 

[...] 
</jboss-web> 

如果我添加另一場戰爭有一個JBoss-web.xml文件聲明僅第一數據源(因爲它是通過這場戰爭中使用的唯一的一個),則沒有剩餘的戰爭能夠再達到缺少的數據源。

Web應用程序特定的部署描述符如何具有這樣的行爲?那麼,這個配置有什麼問題?應該在哪裏聲明數據源?

回答

0

你有沒有在web.xml中聲明數據源?你必須在每個war應用程序的jboss-web.xml和web.xml中都有。

+0

在web.xml我已經使用過的數據源,它工作正常,但我需要在jboss-web.xml(但不是web.xml)中添加未使用的,否則DS無法通過任何其他戰爭 – Gab

相關問題