This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
020225_2 EE win2000, jdk1.4 According to the HIE Orion web db doc (in http://devtools.eng/teams/HIE/projects/Jasper/Orion/orion_web_db.html#exec) "When the IDE creates a WAR file and discovers .zip files in the WEB-INF/lib directory, then a warning message would appear in the output window log to inform the user that zip files are not added to the server's classpath automatically, and therefore they will need to explicitly add it using their server's administration tools." I had classes12.zip in WEB-INF/lib. When I execute my web app, there is no warning generated in the output window.
First, it is perfectly legal to have .zip files in the WEB-INF/lib directory, even though they are not added into classpath. Secondly, shouldn't this warning be generated by Tomcat when the .war file is deployed ? To me it seems a bit excessive to be saying "this will not work the way we think you think this will work". Also, it addresses only a part of the problem: we are assuming that: a) the user knows that libraries should be added to WEB-INF/lib b) the user does not know that .zip files are not considered libraries Why are we assuming PARTIAL knowledge ? We should either be assuming full knowledge or no knowledge.
I think we've set the user up to have this partial knowledge. Things worked differently in the previous version (with Tomcat 3.2), so we need to address the change in behavior which could be perceived as a regression by the user (who may generally understand the specs but hasn't read them word-for-word). I think the user's general understanding is that packaged classes go in the WEB-INF/lib directory in order for the server to add them to the classpath. They may not expect that there is a difference between zip and jar files. This seems to be historical--many java libraries are packaged as Zip files instead of JAR files (Oracle's, for example). Wouldn't it be easy to place the message in the output log as requested?
This is a migration issue from TC 3.2 to 4.0, so we need to guide the user through this change. My request is to add the following message to the output log if the user has placed ZIP files in the WEB-INF/lib directory. This is one of the first places they will look to see why their JDBC driver (for example) wasn't found. The message would appear when the user has deployed or executed the web module: ZIP files located in the WEB-INF/lib directory are not automatically added to Tomcat's execution classpath. See the online help topic "Setting Tomcat Installation Properties" for adding ZIP files using the External Execution Process property.
Fixed for FCS.
I do not consider the current fix satisfactory. There is an annoying message box every time the user executes any component (even if the execution does not cause a server restart). I agree with Jeff that the message should appear in the output window, since if for some reason the user does want the .zip file in WEB-INF/lib, then such a message can be ignored. The dialog can not be ignored - it has to be explicitly closed.
Warning message was redirected to the Tomcat's output window where it is displayed together with context's log file messages.
Verified in build 020425_3.