YAY! done it - follow the instructions I gave inthe last posting and in addition make sure you have the “package” option unticked for icefaces in the normal “Libraries” section of the project preferences.
This works for me, but I suspect you’ll have problems if you used any of the icefaces dependencies (commons-collections etc.) in the rest of your app, since you may still have 2 copies of the jar in your project.
With ear deployments of ICEfaces plus Seam, we found it worked with placing all the ICEfaces jars in the ear/lib. Have you tried this in this instance?
I tried, but whatever I did Netbeans seems to detect the taglubs in the jars and leaves them in the war when it moves all the other jars to the ear. This is the best solution I could come up with.
There are some ways to add ICEfaces jar files and ICEfaces dependent jar files into ear project instead of war project.
As you guys have pointed out you can first create a ear project and later create a web project with ICEfaces 2.0 compatibility mode, which is added into the ear project.
After that, you could bring up projecty properties dialog for the icefaces web project, click Libraries and Compile tab, uncheck package checkboxes for ICEfaces 2.0 Alpha2 and ICEfaces 2.0 Alpha2 Compatibility so that all the jar files won't be included in war file.
And then in the enterprise project to include ICEfaces 2.0 Alpha2 and ICEfaces 2.0 Alpha2 Compatibility libraries.
Just a simple workaround:
1. Create new empty JavaEE project (with no war module).
2. Create new web application project with icefaces 2 support in compatibility mode and add it to enterprise application.
3. In web application module find file nbproject/build-impl.xml.
4. Find following lines:
<copyfiles files="${libs.icefaces2-compat-20.classpath}" iftldtodir="${build.web.dir}/WEB-INF" todir="${dist.ear.dir}/lib"/>
<copyfiles files="${libs.icefaces2-runtime-20.classpath}" iftldtodir="${build.web.dir}/WEB-INF" todir="${dist.ear.dir}/lib"/>
5. After them insert new 2 lines:
<copyfiles files="${libs.icefaces2-compat-20.classpath}" todir="${dist.ear.dir}/lib"/>
<copyfiles files="${libs.icefaces2-runtime-20.classpath}" todir="${dist.ear.dir}/lib"/>
6. Try to run.
This is the worst way to solve problem, but after it you dont need to copy files by hands.