Oleg Kurchenko created JAMES-4226:
-------------------------------------
Summary: Problem during reading: -----END PRIVATE KEY----- not
found
Key: JAMES-4226
URL: https://issues.apache.org/jira/browse/JAMES-4226
Project: James Server
Issue Type: Bug
Components: Mailet Contributions
Affects Versions: 3.9.0
Environment: Linux 857155.cloud4box.ru 7.0.0-22-generic #22-Ubuntu SMP
PREEMPT_DYNAMIC Mon May 25 15:54:34 UTC 2026 x86_64 GNU/Linux
openjdk 21.0.12 2026-07-21
OpenJDK Runtime Environment (build 21.0.12+8-1-26.04-Ubuntu)
OpenJDK 64-Bit Server VM (build 21.0.12+8-1-26.04-Ubuntu, mixed mode, sharing)
Reporter: Oleg Kurchenko
on start
{code:java}
05-сент.-2026 14:40:39.218 ERROR [main]
org.apache.james.mailetcontainer.lib.AbstractStateMailetProcessor.parseConfiguration:327
- Unable to init mailet org.apache.james.jdkim.mailets.DKIMSign
jakarta.mail.MessagingException: Problem during reading: -----END PRIVATE
KEY----- not found
at org.apache.james.jdkim.mailets.DKIMSign.init(DKIMSign.java:150)
~[james-server-mailet-dkim-3.9.0.jar:3.9.0]
at org.apache.mailet.base.GenericMailet.init(GenericMailet.java:227)
~[apache-mailet-base-3.9.0.jar:3.9.0]
at
org.apache.james.container.spring.bean.factory.mailetcontainer.MailetLoaderBeanFactory.getMailet(MailetLoaderBeanFactory.java:45)
~[james-server-spring-3.9.0.jar:3.9.0]
at
org.apache.james.mailetcontainer.lib.AbstractStateMailetProcessor.parseConfiguration(AbstractStateMailetProcessor.java:323)
~[james-server-mailetcontainer-impl-3.9.0.jar:3.9.0]
at
org.apache.james.mailetcontainer.lib.AbstractStateMailetProcessor.init(AbstractStateMailetProcessor.java:118)
~[james-server-mailetcontainer-impl-3.9.0.jar:3.9.0]
at
org.apache.james.mailetcontainer.impl.MailetProcessorImpl.init(MailetProcessorImpl.java:196)
~[james-server-mailetcontainer-impl-3.9.0.jar:3.9.0]
at
org.apache.james.mailetcontainer.impl.CompositeProcessorImpl.createMailProcessor(CompositeProcessorImpl.java:72)
~[james-server-mailetcontainer-impl-3.9.0.jar:3.9.0]
at
org.apache.james.mailetcontainer.lib.AbstractStateCompositeProcessor.init(AbstractStateCompositeProcessor.java:177)
~[james-server-mailetcontainer-impl-3.9.0.jar:3.9.0]
at
org.apache.james.mailetcontainer.impl.CompositeProcessorImpl.init(CompositeProcessorImpl.java:60)
~[james-server-mailetcontainer-impl-3.9.0.jar:3.9.0]
at
java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
~[?:?]
at java.base/java.lang.reflect.Method.invoke(Method.java:580) ~[?:?]
at
org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMethod.invoke(InitDestroyAnnotationBeanPostProcessor.java:457)
~[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:401)
~[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:219)
~[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:429)
~[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1818)
~[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:607)
~[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529)
~[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339)
~[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:373)
[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337)
[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.support.DefaultListableBeanFactory.instantiateSingleton(DefaultListableBeanFactory.java:1222)
[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingleton(DefaultListableBeanFactory.java:1188)
[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:1123)
[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:987)
[spring-context-6.2.8.jar:6.2.8]
at
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:627)
[spring-context-6.2.8.jar:6.2.8]
at
org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:144)
[spring-context-6.2.8.jar:6.2.8]
at
org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:95)
[spring-context-6.2.8.jar:6.2.8]
at
org.apache.james.container.spring.context.JamesServerApplicationContext.<init>(JamesServerApplicationContext.java:43)
[james-server-spring-3.9.0.jar:3.9.0]
at
org.apache.james.app.spring.JamesAppSpringMain.init(JamesAppSpringMain.java:81)
[james-server-spring-app-3.9.0.jar:3.9.0]
at
org.apache.james.app.spring.JamesAppSpringMain.main(JamesAppSpringMain.java:57)
[james-server-spring-app-3.9.0.jar:3.9.0]
Caused by: java.io.IOException: -----END PRIVATE KEY----- not found
at org.bouncycastle.util.io.pem.PemReader.loadObject(Unknown Source)
~[bcprov-jdk18on-1.81.jar:?]
at org.bouncycastle.util.io.pem.PemReader.readPemObject(Unknown Source)
~[bcprov-jdk18on-1.81.jar:?]
at org.bouncycastle.openssl.PEMParser.readObject(Unknown Source)
~[bcpkix-jdk18on-1.81.jar:?]
at
org.apache.james.jdkim.mailets.DKIMSign.extractPrivateKey(DKIMSign.java:208)
~[james-server-mailet-dkim-3.9.0.jar:3.9.0]
at org.apache.james.jdkim.mailets.DKIMSign.init(DKIMSign.java:144)
~[james-server-mailet-dkim-3.9.0.jar:3.9.0]
... 31 more
05-сент.-2026 14:40:39.240 ERROR [main]
org.apache.james.mailetcontainer.lib.AbstractStateMailetProcessor.parseConfiguration:329
- Caused by nested exception:
java.io.IOException: -----END PRIVATE KEY----- not found
at org.bouncycastle.util.io.pem.PemReader.loadObject(Unknown Source)
~[bcprov-jdk18on-1.81.jar:?]
at org.bouncycastle.util.io.pem.PemReader.readPemObject(Unknown Source)
~[bcprov-jdk18on-1.81.jar:?]
at org.bouncycastle.openssl.PEMParser.readObject(Unknown Source)
~[bcpkix-jdk18on-1.81.jar:?]
at
org.apache.james.jdkim.mailets.DKIMSign.extractPrivateKey(DKIMSign.java:208)
~[james-server-mailet-dkim-3.9.0.jar:3.9.0]
at org.apache.james.jdkim.mailets.DKIMSign.init(DKIMSign.java:144)
~[james-server-mailet-dkim-3.9.0.jar:3.9.0]
at org.apache.mailet.base.GenericMailet.init(GenericMailet.java:227)
~[apache-mailet-base-3.9.0.jar:3.9.0]
at
org.apache.james.container.spring.bean.factory.mailetcontainer.MailetLoaderBeanFactory.getMailet(MailetLoaderBeanFactory.java:45)
~[james-server-spring-3.9.0.jar:3.9.0]
at
org.apache.james.mailetcontainer.lib.AbstractStateMailetProcessor.parseConfiguration(AbstractStateMailetProcessor.java:323)
~[james-server-mailetcontainer-impl-3.9.0.jar:3.9.0]
at
org.apache.james.mailetcontainer.lib.AbstractStateMailetProcessor.init(AbstractStateMailetProcessor.java:118)
~[james-server-mailetcontainer-impl-3.9.0.jar:3.9.0]
at
org.apache.james.mailetcontainer.impl.MailetProcessorImpl.init(MailetProcessorImpl.java:196)
~[james-server-mailetcontainer-impl-3.9.0.jar:3.9.0]
at
org.apache.james.mailetcontainer.impl.CompositeProcessorImpl.createMailProcessor(CompositeProcessorImpl.java:72)
~[james-server-mailetcontainer-impl-3.9.0.jar:3.9.0]
at
org.apache.james.mailetcontainer.lib.AbstractStateCompositeProcessor.init(AbstractStateCompositeProcessor.java:177)
~[james-server-mailetcontainer-impl-3.9.0.jar:3.9.0]
at
org.apache.james.mailetcontainer.impl.CompositeProcessorImpl.init(CompositeProcessorImpl.java:60)
~[james-server-mailetcontainer-impl-3.9.0.jar:3.9.0]
at
java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
~[?:?]
at java.base/java.lang.reflect.Method.invoke(Method.java:580) ~[?:?]
at
org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMethod.invoke(InitDestroyAnnotationBeanPostProcessor.java:457)
~[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:401)
~[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:219)
~[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:429)
~[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1818)
~[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:607)
~[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529)
~[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339)
~[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:373)
[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337)
[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.support.DefaultListableBeanFactory.instantiateSingleton(DefaultListableBeanFactory.java:1222)
[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingleton(DefaultListableBeanFactory.java:1188)
[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:1123)
[spring-beans-6.2.8.jar:6.2.8]
at
org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:987)
[spring-context-6.2.8.jar:6.2.8]
at
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:627)
[spring-context-6.2.8.jar:6.2.8]
at
org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:144)
[spring-context-6.2.8.jar:6.2.8]
at
org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:95)
[spring-context-6.2.8.jar:6.2.8]
at
org.apache.james.container.spring.context.JamesServerApplicationContext.<init>(JamesServerApplicationContext.java:43)
[james-server-spring-3.9.0.jar:3.9.0]
at
org.apache.james.app.spring.JamesAppSpringMain.init(JamesAppSpringMain.java:81)
[james-server-spring-app-3.9.0.jar:3.9.0]
at
org.apache.james.app.spring.JamesAppSpringMain.main(JamesAppSpringMain.java:57)
[james-server-spring-app-3.9.0.jar:3.9.0] {code}
but in config (work with 3.8.2)
{code:java}
<mailet match="All" class="org.apache.james.jdkim.mailets.DKIMSign">
<signatureTemplate>v=1; s=james; d=*******.ru;
h=Message-ID:Date:Subject:From:To:MIME-Version:Content-Type; a=rsa-sha256; bh=;
b=;</signatureTemplate>
<privateKey>
-----BEGIN PRIVATE
KEY-----MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCpWOJIU5PKIeMa
......................
+1xIWFWk4dVXbiVmwC1gWXE=
-----END PRIVATE KEY-----
</privateKey>
</mailet>
{code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]