You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-user@james.apache.org by li...@gmail.com on 2009/12/12 17:39:15 UTC

James.Mailet: RemoteDelivery: Exception caught in RemoteDelivery.run()

i am using James Mail Server 2.3.1

i am getting this exception:

INFO  James.Mailet: RemoteDelivery: Exception caught in RemoteDelivery.run()
java.lang.NumberFormatException: null
    at java.lang.Integer.parseInt(Integer.java:446)
    at java.lang.Integer.parseInt(Integer.java:519)
    at
org.apache.james.transport.mailets.RemoteDelivery$MultipleDelayFilter.accept(RemoteDelivery.java:160)
    at
org.apache.james.mailrepository.AvalonSpoolRepository.accept(AvalonSpoolRepository.java:157)
    at
org.apache.james.transport.mailets.RemoteDelivery.run(RemoteDelivery.java:1111)
    at java.lang.Thread.run(Thread.java:713)

in

RemoteDelivery:
public boolean accept (String key, String state, long lastUpdated,
String errorMessage) {
  if (state.equals(Mail.ERROR)) {
    //Test the time...
    int retries = Integer.parseInt(errorMessage);   <<<< exception
occurs here
              
    // If the retries count is 0 we should try to send the mail now!
    if (retries == 0) return true;
  ...


which is called from here

AvalonSpoolRepository:
public synchronized Mail accept(SpoolRepository.AcceptFilter filter)
  ...
  if (mail == null || !filter.accept (
                         mail.getName(),
                         mail.getState(),
                         mail.getLastUpdated().getTime(),
                         mail.getErrorMessage()))
  ...

it appears that

  mail.getErrorMessage()

can return null sometimes.

that means that the code in RemoteDelivery.accept() needs to handle that
condition.

does anyone know if this is fixed in JAMES v2.3.2?


Regards,
LiveFree





---------------------------------------------------------------------
To unsubscribe, e-mail: server-user-unsubscribe@james.apache.org
For additional commands, e-mail: server-user-help@james.apache.org