Hi Joerg
Is it related to Camel or Karaf update ?
I remember that Camel changed way to deal with classloader in some
components (we fixed a couple, but maybe mail component is impacted).
Regards
JB
On 03/02/2022 16:55, Jörg Jansen wrote:
Hi all,
I've recognized a strange behavior, where I need some help.
Running my pure camel route, to read mail attachments, everything works as
expected.
When running the same within my karaf distribution, the attachments could not
be resolved.
My route looks like this:
from("pop3://mypop3server?username=myuser
&password=mypassword&unseen=true&delay=20000")
.routeId("mail-test-route")
.split().method(SplitAttachmentsExpression.class)
.log(LoggingLevel.INFO, "Received Attachment: ${body}")
.to("file:out")
.end()
;
Instead of my attachments, I now receive the plain text with the Base64 encoded
attachments.
I'm using camel 3.14.1 and karaf 4.3.6.
To reproduce this scenario you just need the following steps:
- start karaf
- repo-add camel
- feature:install camel-blueprint camel-mail
- deploy the attache camel-route indo deploy folder
Route to deploy:
<?xml version="1.0" encoding="UTF-8"?>
<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0
http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
http://camel.apache.org/schema/blueprint
http://camel.apache.org/schema/blueprint/camel-blueprint.xsd">
<camelContext id="mail-test" xmlns="http://camel.apache.org/schema/blueprint" trace="false"
logMask="true" useBreadcrumb="true" streamCache="false">
<route id="mail-test-route">
<from uri="pop3:// mypop3server?username= myuser &password= mypassword
&unseen=true&delay=20000"/>
<split>
<method
beanType="org.apache.camel.component.mail.SplitAttachmentsExpression" />
<log message="Me Got ${body}" loggingLevel="INFO" />
<to uri="file:mail/out" />
</split>
</route>
</camelContext>
</blueprint>
Any advice would be great,
Joerg