Server version: Apache Tomcat/8.0.14 Server built: Sep 24 2014 09:01:51 Server number: 8.0.14.0 OS Name: Linux OS Version: 3.8.0-29-generic Architecture: amd64 JVM Version: 1.7.0_55-b14 JVM Vendor: Oracle Corporation
I have implemented a custom WebappClassLoaderBase and StandardRoot, and it looks like it is working; but the resources added are not available to the web app. What follows is a bit long and I apologize for that, but didn't want to leave out potentially important information. Any ideas on what's wrong? This is the code snippet: wsRoot = IDWMPluginRegistry.getInstance().getWebRoot(); log.info("IDWMClassLoader init: " + wsRoot.getContext().getName()); Set<IDWMPlugin> plugins = IDWMPluginRegistry.getInstance().getPlugins(); for(IDWMPlugin plugin: plugins) { log.info("Loading plugin: " + plugin.getLoaderClassName()); try { if(wsRoot == null) { log.info("wsRoot not set."); wsRoot = new StandardRoot(); } if(wsRoot.getContext() == null) { throw new Exception("NO CONTEXT!!!!!!!"); } File pFile = plugin.getRoot(); log.info("Adding plugin root " + pFile.getAbsolutePath() + " to the WebResourceRoot as a DirResourceSet."); DirResourceSet drs = new DirResourceSet(wsRoot, "/", pFile.getAbsolutePath(), "/"); log.info("DirResourceSet base URL = " + drs.getBaseUrl().toString()); wsRoot.addPostResources(drs); } catch(Exception e) { log.log(Level.SEVERE, "Error setting up class path", e); } } And here is the catalina.out log pertaining to this section of code. 17-May-2015 23:27:52.399 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/apache-tomcat-8.0.14/webapps/ROOT 17-May-2015 23:27:53.243 INFO [localhost-startStop-1] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time. 17-May-2015 23:27:53.385 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/apache-tomcat-8.0.14/webapps/ROOT has finished in 986 ms 17-May-2015 23:27:53.388 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/apache-tomcat-8.0.14/webapps/idwm 17-May-2015 23:27:53.424 INFO [localhost-startStop-1] com.comsquared.idw.catalina.ext.IDWMFileDirContext.<init> Default Constructor. 17-May-2015 23:27:53.425 INFO [localhost-startStop-1] com.comsquared.idw.catalina.ext.IDWMFileDirContext.importPlugins System property idwm.plugins not set; using default plugin path /usr/us/idwm/plugins 17-May-2015 23:27:53.431 INFO [localhost-startStop-1] com.comsquared.idw.catalina.ext.IDWMFileDirContext.importFromDirectory Found plugin at /usr/us/idwm/plugins/idw-plugins-role_change_attribute_audit 17-May-2015 23:27:54.146 INFO [localhost-startStop-1] com.comsquared.idw.catalina.ext.IDWMClassLoader.<init> parent constructor.class java.net.URLClassLoader 17-May-2015 23:27:54.147 INFO [localhost-startStop-1] com.comsquared.idw.catalina.ext.IDWMClassLoader.init IDWMClassLoader init: /idwm 17-May-2015 23:27:54.148 INFO [localhost-startStop-1] com.comsquared.idw.catalina.ext.IDWMClassLoader.init Loading plugin: idwplugin.RoleChangeAttributeAudit.RoleChangeAttributeAuditPluginLoader 17-May-2015 23:27:54.148 INFO [localhost-startStop-1] com.comsquared.idw.catalina.ext.IDWMClassLoader.init Adding plugin root /usr/us/idwm/plugins/idw-plugins-role_change_attribute_audit to the WebResourceRoot as a DirResourceSet. 17-May-2015 23:27:54.148 INFO [localhost-startStop-1] com.comsquared.idw.catalina.ext.IDWMClassLoader.init DirResourceSet base URL = file:/usr/us/idwm/plugins/idw-plugins-role_change_attribute_audit/ 17-May-2015 23:28:05.198 INFO [localhost-startStop-1] com.comsquared.idwm.DataSourceFactory.getObjectInstance Get JNDI datasource ImageDirectorWorkflowDS from app config log4j:WARN No such property [maxBackupIndex] in org.apache.log4j.DailyRollingFileAppender. 17-May-2015 23:28:15.367 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/apache-tomcat-8.0.14/webapps/idwm has finished in 21,978 ms 17-May-2015 23:28:15.371 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/apache-tomcat-8.0.14/webapps/docs 17-May-2015 23:28:15.425 INFO [localhost-startStop-1] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time. 17-May-2015 23:28:15.452 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/apache-tomcat-8.0.14/webapps/docs has finished in 82 ms 17-May-2015 23:28:15.453 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/apache-tomcat-8.0.14/webapps/examples 17-May-2015 23:28:15.983 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/apache-tomcat-8.0.14/webapps/examples has finished in 530 ms 17-May-2015 23:28:15.984 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/apache-tomcat-8.0.14/webapps/host-manager 17-May-2015 23:28:16.046 INFO [localhost-startStop-1] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time. 17-May-2015 23:28:16.054 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/apache-tomcat-8.0.14/webapps/host-manager has finished in 69 ms 17-May-2015 23:28:16.057 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/apache-tomcat-8.0.14/webapps/manager 17-May-2015 23:28:16.121 INFO [localhost-startStop-1] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time. 17-May-2015 23:28:16.125 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/apache-tomcat-8.0.14/webapps/manager has finished in 68 ms 17-May-2015 23:28:16.169 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"] 17-May-2015 23:28:16.179 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["ajp-nio-8009"] 17-May-2015 23:28:16.180 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 23891 ms