Другой подход (в случае, если вы его не учли) - использовать один файл context.xml с заполнителями.Например:
<Context>
<Resource name="jdbc/syncDB" auth="Container" type="javax.sql.DataSource"
maxTotal="100" maxIdle="30" maxWaitMillis="10000"
username="${database.username}" password="${database.password}" driverClassName="oracle.jdbc.OracleDriver"
url="${database.url}"/>
</Context>
Затем добавьте плагин war в файл maven pom.xml, в котором папка META-INF является ресурсом, который фильтрует:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<webResources>
<resource>
<directory>src/main/webapp/META-INF</directory>
<filtering>true</filtering>
<targetPath>META-INF</targetPath>
</resource>
</webResources>
</configuration>
</plugin>
Таким образомВы можете определить эти значения заполнителей как значения по умолчанию, которые могут быть переопределены для определенных профилей:
<properties>
<database.password>default_user</database.password>
<database.username>default_password</database.username>
<database.url>jdbc:oracle:thin:@oracle.host:1521:defaultsid</database.url>
</properties>
<profiles>
<profile>
<id>dev</id>
<properties>
<database.url>jdbc:oracle:thin:@oracle.host:1521:DEVELOPMENTsid</database.url>
</properties>
</profile>
</profiles>