Freeman Fang created CAMEL-13593: ------------------------------------ Summary: avoid “expected resource not found” warnings when using camel-mail in OSGi Key: CAMEL-13593 URL: https://issues.apache.org/jira/browse/CAMEL-13593 Project: Camel Issue Type: Improvement Reporter: Freeman Fang
In javax.mail API(1.6), it(javax.mail.Session) will use authenticator's classloader to load two default files {code} META-INF/javamail.default.address.map META-INF/javamail.default.providers {code} Since camel-mail provider a DefaultAuthenticator, which means javax mail api will try to use camel-mail bundle classloader in OSGi to load above default files. Those files aren't available for camel-mail bundle classloader, so we see warning message as {code} 2019-04-25 12:42:09,806 | WARN | 23 - scheduler://foo | j.mail | 21 - com.sun.mail.javax.mail - 1.6.1 | expected resource not found: /META-INF/javamail.default.providers 2019-04-25 12:42:09,807 | WARN | 23 - scheduler://foo | j.mail | 21 - com.sun.mail.javax.mail - 1.6.1| expected resource not found: /META-INF/javamail.default.address.map {code} This warning message isn't harmful but annoying. The javax.mail.Session will always add default stuff by code if can't find the default configuration file {code} if (providers.size() == 0) { logger.config("failed to load any providers, using defaults"); // failed to load any providers, initialize with our defaults addProvider(new Provider(Provider.Type.STORE, "imap", "com.sun.mail.imap.IMAPStore", "Oracle", Version.version)); addProvider(new Provider(Provider.Type.STORE, "imaps", "com.sun.mail.imap.IMAPSSLStore", "Oracle", Version.version)); addProvider(new Provider(Provider.Type.STORE, "pop3", "com.sun.mail.pop3.POP3Store", "Oracle", Version.version)); addProvider(new Provider(Provider.Type.STORE, "pop3s", "com.sun.mail.pop3.POP3SSLStore", "Oracle", Version.version)); addProvider(new Provider(Provider.Type.TRANSPORT, "smtp", "com.sun.mail.smtp.SMTPTransport", "Oracle", Version.version)); addProvider(new Provider(Provider.Type.TRANSPORT, "smtps", "com.sun.mail.smtp.SMTPSSLTransport", "Oracle", Version.version)); } if (addressMap.isEmpty()) { logger.config("failed to load address map, using defaults"); addressMap.put("rfc822", "smtp"); } {code} It's better we can avoid such WARN message when using camel-mail in OSGi -- This message was sent by Atlassian JIRA (v7.6.3#76005)