[ https://issues.apache.org/jira/browse/FELIX-1124?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12725650#action_12725650 ]
Richard S. Hall commented on FELIX-1124: ---------------------------------------- Thomas, I created the following bundle activator: public class Activator implements BundleActivator { public void start(final BundleContext context) throws Exception { getClass().getClassLoader().getResourceAsStream("does/not/exist.txt"); } public void stop(BundleContext context) { } } When I run this in Felix I get: -> ps START LEVEL 1 ID State Level Name [ 0] [Active ] [ 0] System Bundle (1.9.0.SNAPSHOT) [ 1] [Active ] [ 1] Apache Felix Shell Service (1.3.0.SNAPSHOT) [ 2] [Active ] [ 1] Apache Felix Shell TUI (1.3.0.SNAPSHOT) [ 3] [Active ] [ 1] Apache Felix Bundle Repository (1.5.0.SNAPSHOT) [ 5] [Installed ] [ 1] test.logger -> start 5 DEBUG: WIRE: 5.0 -> org.osgi.framework -> 0 DEBUG: does/not/exist.txt (org.apache.felix.moduleloader.ResourceNotFoundException: does/not/exist.txt) -> I do not get a stack trace, which is what I would expect from the code for Logger. Are you passing in a Logger instance to Felix when you construct it or are you just using Felix' launcher? If the former, I would have to assume that the passed in launcher is printing the stack trace. Let me know if I am missing something. > ResourceNotFoundException too verbose > ------------------------------------- > > Key: FELIX-1124 > URL: https://issues.apache.org/jira/browse/FELIX-1124 > Project: Felix > Issue Type: Bug > Components: Framework > Affects Versions: felix-1.6.1, felix-1.8.0, felix-1.8.1 > Reporter: Thomas Diesler > > ModuleImpl logs stack traces for every resource that cannot be found. Often > resources are optional or may be located at different locations. > public URL getResourceByDelegation(String name) > { > try > { > return (URL) findClassOrResourceByDelegation(name, false); > } > catch (ClassNotFoundException ex) > { > // This should never be thrown because we are loading resources. > } > catch (ResourceNotFoundException ex) > { > m_logger.log( > Logger.LOG_DEBUG, > ex.getMessage(), > ex); > } > return null; > } > Please consider a log message without stack trace and leave it to the client > to be more verbose when appropriate. > To log no message at all and simply return null would also be consistent with > http://java.sun.com/javase/6/docs/api/java/lang/ClassLoader.html#getResource(java.lang.String) -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.