You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by "Benoit Tellier (Jira)" <se...@james.apache.org> on 2022/08/16 03:02:00 UTC

[jira] [Created] (JAMES-3804) Improve error handling when mailetContainer misses a processor

Benoit Tellier created JAMES-3804:
-------------------------------------

             Summary: Improve error handling when mailetContainer misses a processor
                 Key: JAMES-3804
                 URL: https://issues.apache.org/jira/browse/JAMES-3804
             Project: James Server
          Issue Type: Improvement
          Components: Mailet Contributions
    Affects Versions: 3.7.0
            Reporter: Benoit Tellier
             Fix For: 3.8.0


Today, if I specify a mailet pointing to a processor that do not exist, James will start, and the failure will be managed at runtime: upon processing, each mail needed to be processed by the unspecified processor will instead go to the error processor.

Recovering data from such a failure is quite a journey in itself.

Example of such configuration:

{code:java}
<mailet matcher="All" class="ToProcessor">
    <processor>notFound</processor>
</mailet>
{code}

Instead of handling such failures at runtime, we could instead abort James startup.

Given we add a new method on the mailet interface, for a mailet to give the list of processor it needs, we can trivially implement such a check in the mailet container.

*Definition of dome*: Have an integration test with configuration specified above, james should fail to start.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

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