email body is coming as blank when agent or integration agent is using email service. This service is configured to read email body from a XSL file.
email which is sent out using this service has a blank body.
While searching for a resource in classpath, the email component internally prefixes the resource path with "/". Later this path is sent to the classloader to find the resource from the classpath.
The difference between Application and Agent servers is, for integration servers/agents, default java classloader is used whose internal implementation is not able to find the resource if multiple slashes are found prefixed to the path. It can find the path successfully only if a single slash is prefixed to the path. Whereas on the application server, say weblogic, the classloader is from the appserver, which internally has some more intelligence that it can find the resource even if multiple slashes are prefixed in the path.
Diagnosing the problem
1.Observe the log for the Error.
2. Observer the Email body is blank.
Resolving the problem
For all the email components (either in sync service or asyn service), the customer should provide XSL path without the "/" in the beginning. This should work everywhere irrespective of the internal classloader implementation.