]
Fred Bricon updated JBIDE-22157:
--------------------------------
Sprint: devex #114 May 2017 (was: devex #113 April 2016)
On deployoment, utility JAR projects are being exploded on
WEB-INF/LIB
----------------------------------------------------------------------
Key: JBIDE-22157
URL:
https://issues.jboss.org/browse/JBIDE-22157
Project: Tools (JBoss Tools)
Issue Type: Bug
Components: server
Environment: Eclipse: Mars, latest version.
Webserver: Wilfly 10.0.0
Maven: 3.3.3
JBoss Tools: Latest version.
Reporter: Tiago Matias
Assignee: Rob Stryker
Fix For: 4.4.0.Alpha2
Attachments: JBIDE22157.zip
Consider two eclipse maven projects: A Web project (WAR) and a Utility project JAR with a
JSP TLD file inside.
After building the project and deploying to Wildfly the utiltiy JAR will be exploded
under WEB-INF/LIB of the WAR project.
An exploded jar is incompatible with TLD files since the JSP engine search for the TLD
file and then try to open/unzip the JAR. Since the JAR is just a folder, it causes an
"Access Denied" exception, as shown below:
org.apache.jasper.JasperException: java.io.FileNotFoundException: C:\Program
Files\Java\wildfly-10.0.0.Final\standalone\deployments\portal.web.war\WEB-INF\lib\portal.framework-0.0.1-SNAPSHOT.jar
(Acesso negado)
org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:151)
org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:412)
org.apache.jasper.compiler.Parser.parseDirective(Parser.java:475)
org.apache.jasper.compiler.Parser.parseElements(Parser.java:1456)
org.apache.jasper.compiler.Parser.parse(Parser.java:143)
A possible alternative would be to turnoff the option "Resolve dependencies from
workspace projects" in Eclipse. In this scenario the JAR won't get exploded on
WAR's WEB-INF/lib and everything works. However, any change to the JAR project
won't get picked up and deployed to the target unless it's POM version is
incremented which is incompatible with a development scenario where the projects are
constantly updated and built.
I request that the eclipse wildfly connector provides an option to control weather the
dependency JAR's are exploded or not into the final deployment.
Please note, this only applies to dependencies that are workspace projects. All the other
dependencies (spring, hibernate, etc...) are simply copied as a JAR archive, as expected.
Thank you.