我可以在我的application.xml文件中放置服务器变量,为所有环境创建一个ear文件吗?

时间:2011-02-14 22:00:30

标签: java-ee ear

早些时候,我曾经根据不同的环境(QA,Dev,Prod等)创建了4个ear文件,但现在我的要求是我需要只有一个ear文件用于所有环境。我已经配置了我的上下文-root在websphere服务器中,通过设置WebSphere Environment变量。但是当我访问我的应用程序时,我收到了FileNotFoundException。我甚至试图设置一个变量 在variable.xml文件中,但我仍然得到相同的异常。我想知道如何克服这个问题。

我的application.xml文件EARLER如下:(标签的值随着QA projQA的环境而变化)

<?xml version="1.0" encoding="UTF-8"?>   
<application id="Application_ID" version="1.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/application_1_4.xsd">   
    <display-name>proj_2_1_DEV_001</display-name>   
    <module id="WebModule_1249062768099">   
        <web>   
            <web-uri>proj_2_1_DEV_001.war</web-uri>   
            <context-root>projDev<context-root>   
        </web>   
    </module>   
</application>  

After configuring Environment variable in websphere server with name ctx_path and value as projDev(for dev):: 

<?xml version="1.0" encoding="UTF-8"?>   
<application id="Application_ID" version="1.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/application_1_4.xsd">   
    <display-name>proj_2_1_DEV_001</display-name>   
    <module id="WebModule_1249062768099">   
        <web>   
            <web-uri>proj_2_1_DEV_001.war</web-uri>   
            <context-root>[b]${ctx_path}</[/b]context-root>   
        </web>   
    </module>   
</application>  

1 个答案:

答案 0 :(得分:0)

这通常由AppOverrides解决;查看this example