You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Maciej Kara? (JIRA)" <ji...@codehaus.org> on 2014/05/21 17:03:10 UTC
[jira] (MEAR-188) Project property cannot be resolved inside
element
Maciej Kara? created MEAR-188:
---------------------------------
Summary: Project property cannot be resolved inside <env-entry> element
Key: MEAR-188
URL: https://jira.codehaus.org/browse/MEAR-188
Project: Maven Ear Plugin
Issue Type: Bug
Affects Versions: 2.9
Reporter: Maciej Kara?
Attachments: test.zip
I have created simple ear project with filters. I want to use different settings for each environment and those settings should be passed to generated *application.xml* file inside the *env-entries*. The generation of ear package is done as shown below:
{code:xml}
<plugin>
<artifactId>maven-ear-plugin</artifactId>
<version>2.9</version>
<configuration>
<generateApplicationXml>true</generateApplicationXml>
<version>6</version>
<envEntries>
<env-entry>
<env-entry-name>customProperty</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>${custom.property}</env-entry-value>
</env-entry>
</envEntries>
<applicationName>${custom.property}</applicationName>
</configuration>
</plugin>
{code}
To read maven project properties from external properties file I had to use another plugin: [properties-maven-plugin|http://mojo.codehaus.org/properties-maven-plugin/]. It successfully reads properties from file and sets them as maven project properties, so I can insert them in pom.xml file using *${}*. It works for most of the pom.xml elements (i.e. *<applicationName>*), unfortunately it is not successfully looked up when I place it inside *env-entry* element where I need it. Below is generated *application.xml*.
{code:xml}
<?xml version="1.0" encoding="UTF-8"?>
<application xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/application_6.xsd" version="6">
<application-name>default property</application-name>
<display-name>test</display-name>
<env-entry>
<env-entry-name>customProperty</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>${custom.property}</env-entry-value>
</env-entry>
</application>
{code}
If I put project properties inside the <properties></properties> block everything works fine, but that doesn't allow me to use filters for *application.xml*.
I'm attaching maven project with all necessary configuration. I have also submitted an issue at [Stackoverflow|http://stackoverflow.com/questions/23734249/maven-ear-plugin-project-property-lookup-fails], because I didn't have account here.
--
This message was sent by Atlassian JIRA
(v6.1.6#6162)