user7844226
user7844226

Reputation:

Placeholders in properties file are not replaced in target by maven

I have a filter.properties file that contains the following :

database.driver= mydatabase
database.url= myURL
database.user=usr
database.password=pwd
database.initialsize=3
database.maxactive=5

I also have this in my openejb.xml file in a Resource tag :

JdbcDriver ${database.driver}
JdbcUrl ${database.url}
UserName ${database.user}
Password ${database.password}

But when I do a tomee:run with maven I get a ton of errors of this type :

Unable to resolve class ${database.driver}

OR

Caused by: java.lang.ClassNotFoundException: ${database.driver}

I've tried to counter the problem by adding in my pom.xml :

<properties>
<myDatabase.driver>${database.driver}</myDatabase.driver>
</properties>

But it didn't work.

All suggestions are welcomed.

Best regards.

Upvotes: 1

Views: 2170

Answers (1)

Joop Eggen
Joop Eggen

Reputation: 109603

https://maven.apache.org/plugins/maven-resources-plugin/examples/filter.html

Set

<filtering>true</filtering>

This assumes everything is a resource, file on the class path.

Alternatively create such a data source outside of the application in Tomcat.

Upvotes: 1

Related Questions