Sending e-mail can be an expensive operation, and you generally do not want your components waiting for e-mail to be sent. To prevent e-mail from being a bottleneck, the Oracle Commerce Platform includes an EmailListenerQueue class. This class again implements EmailListener, so it can be used in place of the SMTPEmail component. Any e-mail messages sent to components of this class are queued up and handled by a separate thread, freeing your component from the potential bottleneck. That separate thread pulls e-mail messages from the queue and sends them to another EmailListener, such as the SMTPEmail component or the SMTPBatchEmail component.

The Oracle Commerce Platform comes with an instance of EmailListenerQueue at /atg/dynamo/service/SMTPEmailQueue. This queue empties into the /atg/dynamo/service/SMTPBatchEmail component. Thus, if you send your e-mail events to the queue, they are first queued and then batched, for maximum performance. If you wish your e-mail queue to empty directly into the SMTPEmail component, simply override the SMTPEmailQueue configuration such that its emailListeners property points to SMTPEmail rather than SMTPBatchEmail.

You probably want to configure your services to send e-mail to the queue, rather than going directly to the SMTPEmail or the SMTPBatchEmail component:

emailListeners=/atg/dynamo/service/SMTPEmailQueue

Copyright © 1997, 2015 Oracle and/or its affiliates. All rights reserved. Legal Notices