I've done some significant refactoring of the Maven pom files for all the samples as part of an effort to close a number of the related JIRAs and make it easier to change the bundle for EE releases.
I've pulled up various libraries into dependencyManagement and profiles sections.
I've parameters relevant names and versions so that they can be changed in one spot.
I've added the following property in the top parent pom:
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
to get rid of the dreaded:
"[WARNING] Using platform encoding (xxxxx actually) to copy filtered resources, i.e. build is platform dependent!"
I don't think this should cause an issue but it's easy to remove if it does.
• It looks like our Ant and Maven builds aren't consistent with the libraries they end up putting in. I haven't correct this yet as things were compiling fine but they should probably be made to be consistent if possible. At least for compat, it looks like Ant likes to include commons-collections.jar and jstl.jar over and above what the Maven builds include.
[deryk] auctionMonitor > ant; ls build/dist/exploded/WEB-INF/lib/
commons-beanutils.jar
commons-collections.jar
commons-logging.jar
icefaces-compat.jar
icefaces.jar
icepush.jar
javax.faces.jar
jstl.jar
[deryk] auctionMonitor > mvn package; ls target/auctionMonitor/WEB-INF/lib
commons-beanutils-1.8.0.jar
commons-logging-1.1.jar
icefaces-3.0.1.jar
icefaces-compat-3.0.1.jar
icepush-3.0.1.jar
javax.faces-2.1.6.jar
[deryk] component-showcase > ant -q clean servlet-profile; ls -1 build/dist/exploded/WEB-INF/lib/
commons-beanutils.jar
commons-collections.jar
commons-logging.jar
icefaces-compat.jar
icefaces.jar
icepush.jar
javax.faces.jar
jstl.jar
jxl.jar
krysalis-jCharts-1.0.0-alpha-1.jar
[deryk] component-showcase > mvn -q clean package; ls -1 target/component-showcase/WEB-INF/lib
commons-beanutils-1.8.0.jar
commons-logging-1.1.jar
icefaces-3.0.1.jar
icefaces-compat-3.0.1.jar
icepush-3.0.1.jar
javax.faces-2.1.6.jar
jxl-2.6.8.jar
krysalis-jCharts-1.0.0-alpha-1.jar
One thing that gets changed as part of the EE build is the groupId in the child poms that refers to the parent pom. This will still need to be done manually as you can't use properties in the parent section. So we'll need to batch replace:
<groupId>org.icefaces.samples</groupId>
with:
<groupId>com.icesoft.icefaces-ee.samples</groupId>
To be honest, I don't think the parent/child pom relationship should actually require changing for EE releases but that's what we have for the moment.
I've done some significant refactoring of the Maven pom files for all the samples as part of an effort to close a number of the related JIRAs and make it easier to change the bundle for EE releases.
I've pulled up various libraries into dependencyManagement and profiles sections.
I've parameters relevant names and versions so that they can be changed in one spot.
I've added the following property in the top parent pom:
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
to get rid of the dreaded:
"[WARNING] Using platform encoding (xxxxx actually) to copy filtered resources, i.e. build is platform dependent!"
I don't think this should cause an issue but it's easy to remove if it does.
• It looks like our Ant and Maven builds aren't consistent with the libraries they end up putting in. I haven't correct this yet as things were compiling fine but they should probably be made to be consistent if possible. At least for compat, it looks like Ant likes to include commons-collections.jar and jstl.jar over and above what the Maven builds include.
[deryk] auctionMonitor > ant; ls build/dist/exploded/WEB-INF/lib/
commons-beanutils.jar
commons-collections.jar
commons-logging.jar
icefaces-compat.jar
icefaces.jar
icepush.jar
javax.faces.jar
jstl.jar
[deryk] auctionMonitor > mvn package; ls target/auctionMonitor/WEB-INF/lib
commons-beanutils-1.8.0.jar
commons-logging-1.1.jar
icefaces-3.0.1.jar
icefaces-compat-3.0.1.jar
icepush-3.0.1.jar
javax.faces-2.1.6.jar
[deryk] component-showcase > ant -q clean servlet-profile; ls -1 build/dist/exploded/WEB-INF/lib/
commons-beanutils.jar
commons-collections.jar
commons-logging.jar
icefaces-compat.jar
icefaces.jar
icepush.jar
javax.faces.jar
jstl.jar
jxl.jar
krysalis-jCharts-1.0.0-alpha-1.jar
[deryk] component-showcase > mvn -q clean package; ls -1 target/component-showcase/WEB-INF/lib
commons-beanutils-1.8.0.jar
commons-logging-1.1.jar
icefaces-3.0.1.jar
icefaces-compat-3.0.1.jar
icepush-3.0.1.jar
javax.faces-2.1.6.jar
jxl-2.6.8.jar
krysalis-jCharts-1.0.0-alpha-1.jar
One thing that gets changed as part of the EE build is the groupId in the child poms that refers to the parent pom. This will still need to be done manually as you can't use properties in the parent section. So we'll need to batch replace:
<groupId>org.icefaces.samples</groupId>
with:
<groupId>com.icesoft.icefaces-ee.samples</groupId>
To be honest, I don't think the parent/child pom relationship should actually require changing for EE releases but that's what we have for the moment.