camel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael Chen (JIRA)" <j...@apache.org>
Subject [jira] Updated: (CAMEL-1263) MailConsumer throws exception on line 113
Date Thu, 15 Jan 2009 19:14:59 GMT

     [ https://issues.apache.org/activemq/browse/CAMEL-1263?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Michael Chen updated CAMEL-1263:
--------------------------------

    Description: 
When the mail box is empty (no mail available), MailConsumer throws the following exception
on line 113.  It happens for both pop3 and imap protocols (Java Mail API 1.4.1 Sun implementation).
 

Regardless the cause, closing the folder should be enclosed in a try/catch block and ignore
any exception thrown, because it is no longer interesting to the client application.  It can
surely log the exception, but shouldn't throw it.
{code}
[java] javax.mail.MessagingException: A6 NO Mailbox is locked by POP server;
[java]   nested exception is:
[java]     com.sun.mail.iap.CommandFailedException: A6 NO Mailbox is locked by POP server
[java]     at com.sun.mail.imap.IMAPFolder.close(IMAPFolder.java:1128)
[java]     at com.sun.mail.imap.IMAPFolder.close(IMAPFolder.java:1055)
[java]     at org.apache.camel.component.mail.MailConsumer.poll(MailConsumer.java:113)
[java]     at org.apache.camel.impl.ScheduledPollConsumer.run(ScheduledPollConsumer.java:66)
[java]     at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
[java]     at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
[java]     at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
[java]     at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
[java]     at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:181)
[java]     at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:205)
[java]     at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
[java]     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
[java]     at java.lang.Thread.run(Thread.java:619)
[java] Caused by: com.sun.mail.iap.CommandFailedException: A6 NO Mailbox is locked by POP
server
[java]     at com.sun.mail.iap.Protocol.handleResult(Protocol.java:341)
[java]     at com.sun.mail.iap.Protocol.simpleCommand(Protocol.java:363)
[java]     at com.sun.mail.imap.protocol.IMAPProtocol.close(IMAPProtocol.java:976)
[java]     at com.sun.mail.imap.IMAPFolder.close(IMAPFolder.java:1125)
[java]     ... 12 more
{code}

  was:
When the mail box is empty (no mail available), MailConsumer throws the following exception
on line 113.  It happens for both pop3 and imap protocols (Java Mail API 1.4.1 Sun implementation).
 

Regardless the cause, closing the folder should be enclosed in a try/catch block and ignore
any exception thrown, because it is no longer interesting to the client application.  It can
surely log the exception, but shouldn't throw it.
{code}
     [java] javax.mail.MessagingException: A6 NO Mailbox is locked by POP server;
     [java]   nested exception is:
     [java]     com.sun.mail.iap.CommandFailedException: A6 NO Mailbox is locked by POP server
     [java]     at com.sun.mail.imap.IMAPFolder.close(IMAPFolder.java:1128)
     [java]     at com.sun.mail.imap.IMAPFolder.close(IMAPFolder.java:1055)
     [java]     at org.apache.camel.component.mail.MailConsumer.poll(MailConsumer.java:113)
     [java]     at org.apache.camel.impl.ScheduledPollConsumer.run(ScheduledPollConsumer.java:66)
     [java]     at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
     [java]     at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
     [java]     at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
     [java]     at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
     [java]     at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:181)
     [java]     at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:205)
     [java]     at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
     [java]     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
     [java]     at java.lang.Thread.run(Thread.java:619)
     [java] Caused by: com.sun.mail.iap.CommandFailedException: A6 NO Mailbox is locked by
POP server
     [java]     at com.sun.mail.iap.Protocol.handleResult(Protocol.java:341)
     [java]     at com.sun.mail.iap.Protocol.simpleCommand(Protocol.java:363)
     [java]     at com.sun.mail.imap.protocol.IMAPProtocol.close(IMAPProtocol.java:976)
     [java]     at com.sun.mail.imap.IMAPFolder.close(IMAPFolder.java:1125)
     [java]     ... 12 more
{code}


> MailConsumer throws exception on line 113
> -----------------------------------------
>
>                 Key: CAMEL-1263
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1263
>             Project: Apache Camel
>          Issue Type: Bug
>          Components: camel-mail
>    Affects Versions: 1.5.0
>         Environment: Camel
>            Reporter: Michael Chen
>
> When the mail box is empty (no mail available), MailConsumer throws the following exception
on line 113.  It happens for both pop3 and imap protocols (Java Mail API 1.4.1 Sun implementation).
 
> Regardless the cause, closing the folder should be enclosed in a try/catch block and
ignore any exception thrown, because it is no longer interesting to the client application.
 It can surely log the exception, but shouldn't throw it.
> {code}
> [java] javax.mail.MessagingException: A6 NO Mailbox is locked by POP server;
> [java]   nested exception is:
> [java]     com.sun.mail.iap.CommandFailedException: A6 NO Mailbox is locked by POP server
> [java]     at com.sun.mail.imap.IMAPFolder.close(IMAPFolder.java:1128)
> [java]     at com.sun.mail.imap.IMAPFolder.close(IMAPFolder.java:1055)
> [java]     at org.apache.camel.component.mail.MailConsumer.poll(MailConsumer.java:113)
> [java]     at org.apache.camel.impl.ScheduledPollConsumer.run(ScheduledPollConsumer.java:66)
> [java]     at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
> [java]     at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
> [java]     at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
> [java]     at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
> [java]     at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:181)
> [java]     at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:205)
> [java]     at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> [java]     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> [java]     at java.lang.Thread.run(Thread.java:619)
> [java] Caused by: com.sun.mail.iap.CommandFailedException: A6 NO Mailbox is locked by
POP server
> [java]     at com.sun.mail.iap.Protocol.handleResult(Protocol.java:341)
> [java]     at com.sun.mail.iap.Protocol.simpleCommand(Protocol.java:363)
> [java]     at com.sun.mail.imap.protocol.IMAPProtocol.close(IMAPProtocol.java:976)
> [java]     at com.sun.mail.imap.IMAPFolder.close(IMAPFolder.java:1125)
> [java]     ... 12 more
> {code}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message