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: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to