phax / phase4

phase4 - AS4 client and server for integration into existing systems. Specific support for Peppol and CEF eDelivery built-in.
Apache License 2.0
154 stars 47 forks source link

Bad Request: Error validating incoming AS4 UserMessage with the profile DBN Alliance following errors are present: [PMode.Leg[1].Security.X509EncryptionAlgorithm must use the value 'aes256-gcm' instead of 'aes128-gcm'] #228

Closed SiddharthaBhatia closed 1 month ago

SiddharthaBhatia commented 7 months ago

Hello Philip,

I am currently facing difficulty integrating DBNA due to the following error:

"C:\Program Files\Java\jdk17.0.7_7\bin\java.exe" "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2021.2.1\lib\idea_rt.jar=58630:C:\Program Files\JetBrains\IntelliJ IDEA 2021.2.1\bin" -Dfile.encoding=UTF-8 -classpath "C:\projects\DBNA\updated waala\phase4-phase4-parent-pom-2.7.4\phase4-spring-boot-demo\target\classes;C:\Users\testuser.m2\repository\org\springframework\boot\spring-boot-starter\3.2.2\spring-boot-starter-3.2.2.jar;C:\Users\testuser.m2\repository\org\springframework\boot\spring-boot\3.2.2\spring-boot-3.2.2.jar;C:\Users\testuser.m2\repository\org\springframework\spring-context\6.1.3\spring-context-6.1.3.jar;C:\Users\testuser.m2\repository\org\springframework\boot\spring-boot-autoconfigure\3.2.2\spring-boot-autoconfigure-3.2.2.jar;C:\Users\testuser.m2\repository\org\springframework\boot\spring-boot-starter-logging\3.2.2\spring-boot-starter-logging-3.2.2.jar;C:\Users\testuser.m2\repository\ch\qos\logback\logback-classic\1.4.14\logback-classic-1.4.14.jar;C:\Users\testuser.m2\repository\ch\qos\logback\logback-core\1.4.14\logback-core-1.4.14.jar;C:\Users\testuser.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.21.1\log4j-to-slf4j-2.21.1.jar;C:\Users\testuser.m2\repository\org\apache\logging\log4j\log4j-api\2.22.1\log4j-api-2.22.1.jar;C:\Users\testuser.m2\repository\jakarta\annotation\jakarta.annotation-api\2.1.1\jakarta.annotation-api-2.1.1.jar;C:\Users\testuser.m2\repository\org\springframework\spring-core\6.1.3\spring-core-6.1.3.jar;C:\Users\testuser.m2\repository\org\springframework\spring-jcl\6.1.3\spring-jcl-6.1.3.jar;C:\Users\testuser.m2\repository\org\yaml\snakeyaml\2.2\snakeyaml-2.2.jar;C:\Users\testuser.m2\repository\org\springframework\boot\spring-boot-starter-web\3.2.2\spring-boot-starter-web-3.2.2.jar;C:\Users\testuser.m2\repository\org\springframework\boot\spring-boot-starter-json\3.2.2\spring-boot-starter-json-3.2.2.jar;C:\Users\testuser.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.15.3\jackson-databind-2.15.3.jar;C:\Users\testuser.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.15.3\jackson-annotations-2.15.3.jar;C:\Users\testuser.m2\repository\com\fasterxml\jackson\core\jackson-core\2.15.3\jackson-core-2.15.3.jar;C:\Users\testuser.m2\repository\com\fasterxml\jackson\datatype\jackson-datatype-jdk8\2.15.3\jackson-datatype-jdk8-2.15.3.jar;C:\Users\testuser.m2\repository\com\fasterxml\jackson\datatype\jackson-datatype-jsr310\2.15.3\jackson-datatype-jsr310-2.15.3.jar;C:\Users\testuser.m2\repository\com\fasterxml\jackson\module\jackson-module-parameter-names\2.15.3\jackson-module-parameter-names-2.15.3.jar;C:\Users\testuser.m2\repository\org\springframework\boot\spring-boot-starter-tomcat\3.2.2\spring-boot-starter-tomcat-3.2.2.jar;C:\Users\testuser.m2\repository\org\apache\tomcat\embed\tomcat-embed-core\10.1.18\tomcat-embed-core-10.1.18.jar;C:\Users\testuser.m2\repository\org\apache\tomcat\embed\tomcat-embed-el\10.1.18\tomcat-embed-el-10.1.18.jar;C:\Users\testuser.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket\10.1.18\tomcat-embed-websocket-10.1.18.jar;C:\Users\testuser.m2\repository\org\springframework\spring-web\6.1.3\spring-web-6.1.3.jar;C:\Users\testuser.m2\repository\org\springframework\spring-beans\6.1.3\spring-beans-6.1.3.jar;C:\Users\testuser.m2\repository\org\springframework\spring-webmvc\6.1.3\spring-webmvc-6.1.3.jar;C:\Users\testuser.m2\repository\org\springframework\spring-aop\6.1.3\spring-aop-6.1.3.jar;C:\Users\testuser.m2\repository\org\springframework\spring-expression\6.1.3\spring-expression-6.1.3.jar;C:\Users\testuser.m2\repository\org\springframework\boot\spring-boot-starter-actuator\3.2.2\spring-boot-starter-actuator-3.2.2.jar;C:\Users\testuser.m2\repository\org\springframework\boot\spring-boot-actuator-autoconfigure\3.2.2\spring-boot-actuator-autoconfigure-3.2.2.jar;C:\Users\testuser.m2\repository\org\springframework\boot\spring-boot-actuator\3.2.2\spring-boot-actuator-3.2.2.jar;C:\Users\testuser.m2\repository\io\micrometer\micrometer-observation\1.12.2\micrometer-observation-1.12.2.jar;C:\Users\testuser.m2\repository\io\micrometer\micrometer-commons\1.12.2\micrometer-commons-1.12.2.jar;C:\Users\testuser.m2\repository\io\micrometer\micrometer-jakarta9\1.12.2\micrometer-jakarta9-1.12.2.jar;C:\Users\testuser.m2\repository\io\micrometer\micrometer-core\1.12.2\micrometer-core-1.12.2.jar;C:\Users\testuser.m2\repository\org\hdrhistogram\HdrHistogram\2.1.12\HdrHistogram-2.1.12.jar;C:\Users\testuser.m2\repository\org\latencyutils\LatencyUtils\2.0.3\LatencyUtils-2.0.3.jar;C:\Users\testuser.m2\repository\org\springframework\boot\spring-boot-devtools\3.2.2\spring-boot-devtools-3.2.2.jar;C:\projects\DBNA\updated waala\phase4-phase4-parent-pom-2.7.4\phase4-lib\target\classes;C:\Users\testuser.m2\repository\org\bouncycastle\bcmail-jdk18on\1.77\bcmail-jdk18on-1.77.jar;C:\Users\testuser.m2\repository\org\bouncycastle\bcprov-jdk18on\1.77\bcprov-jdk18on-1.77.jar;C:\Users\testuser.m2\repository\org\bouncycastle\bcutil-jdk18on\1.77\bcutil-jdk18on-1.77.jar;C:\Users\testuser.m2\repository\org\bouncycastle\bcpkix-jdk18on\1.77\bcpkix-jdk18on-1.77.jar;C:\Users\testuser.m2\repository\org\apache\wss4j\wss4j-ws-security-dom\3.0.2\wss4j-ws-security-dom-3.0.2.jar;C:\Users\testuser.m2\repository\org\apache\wss4j\wss4j-ws-security-common\3.0.2\wss4j-ws-security-common-3.0.2.jar;C:\Users\testuser.m2\repository\jakarta\mail\jakarta.mail-api\2.1.2\jakarta.mail-api-2.1.2.jar;C:\Users\testuser.m2\repository\org\apache\santuario\xmlsec\3.0.3\xmlsec-3.0.3.jar;C:\Users\testuser.m2\repository\commons-codec\commons-codec\1.16.0\commons-codec-1.16.0.jar;C:\Users\testuser.m2\repository\org\cryptacular\cryptacular\1.2.6\cryptacular-1.2.6.jar;C:\Users\testuser.m2\repository\org\jasypt\jasypt\1.9.3\jasypt-1.9.3.jar;C:\Users\testuser.m2\repository\com\helger\commons\ph-commons\11.1.3\ph-commons-11.1.3.jar;C:\Users\testuser.m2\repository\com\google\code\findbugs\jsr305\3.0.2\jsr305-3.0.2.jar;C:\Users\testuser.m2\repository\com\helger\commons\ph-xml\11.1.3\ph-xml-11.1.3.jar;C:\Users\testuser.m2\repository\com\helger\commons\ph-jaxb\11.1.3\ph-jaxb-11.1.3.jar;C:\Users\testuser.m2\repository\com\helger\commons\ph-jaxb-adapter\11.1.3\ph-jaxb-adapter-11.1.3.jar;C:\Users\testuser.m2\repository\com\helger\commons\ph-datetime\11.1.3\ph-datetime-11.1.3.jar;C:\Users\testuser.m2\repository\com\helger\commons\ph-bc\11.1.3\ph-bc-11.1.3.jar;C:\Users\testuser.m2\repository\com\helger\commons\ph-scopes\11.1.3\ph-scopes-11.1.3.jar;C:\Users\testuser.m2\repository\com\helger\commons\ph-json\11.1.3\ph-json-11.1.3.jar;C:\Users\testuser.m2\repository\com\helger\web\ph-mail\10.1.7\ph-mail-10.1.7.jar;C:\Users\testuser.m2\repository\org\eclipse\angus\angus-mail\2.0.2\angus-mail-2.0.2.jar;C:\Users\testuser.m2\repository\com\helger\web\ph-http\10.1.7\ph-http-10.1.7.jar;C:\Users\testuser.m2\repository\com\helger\web\ph-network\10.1.7\ph-network-10.1.7.jar;C:\Users\testuser.m2\repository\com\helger\xsd\ph-xsds-xmldsig\3.0.0\ph-xsds-xmldsig-3.0.0.jar;C:\Users\testuser.m2\repository\com\helger\xsd\ph-xsds-xlink\3.0.0\ph-xsds-xlink-3.0.0.jar;C:\Users\testuser.m2\repository\com\helger\xsd\ph-xsds-xml\3.0.0\ph-xsds-xml-3.0.0.jar;C:\Users\testuser.m2\repository\com\helger\masterdata\ph-tenancy\7.0.1\ph-tenancy-7.0.1.jar;C:\Users\testuser.m2\repository\com\helger\masterdata\ph-masterdata\7.0.1\ph-masterdata-7.0.1.jar;C:\Users\testuser.m2\repository\com\helger\commons\ph-config\11.1.3\ph-config-11.1.3.jar;C:\Users\testuser.m2\repository\com\helger\schedule\ph-schedule\5.0.0\ph-schedule-5.0.0.jar;C:\Users\testuser.m2\repository\com\helger\schedule\ph-mini-quartz\5.0.0\ph-mini-quartz-5.0.0.jar;C:\Users\testuser.m2\repository\com\helger\web\ph-web\10.1.7\ph-web-10.1.7.jar;C:\Users\testuser.m2\repository\com\helger\web\ph-servlet\10.1.7\ph-servlet-10.1.7.jar;C:\Users\testuser.m2\repository\com\helger\web\ph-useragent\10.1.7\ph-useragent-10.1.7.jar;C:\Users\testuser.m2\repository\org\eclipse\angus\angus-activation\2.0.1\angus-activation-2.0.1.jar;C:\Users\testuser.m2\repository\com\helger\web\ph-xservlet\10.1.7\ph-xservlet-10.1.7.jar;C:\Users\testuser.m2\repository\com\helger\photon\ph-oton-io\9.2.1\ph-oton-io-9.2.1.jar;C:\Users\testuser.m2\repository\com\helger\commons\ph-collection\11.1.3\ph-collection-11.1.3.jar;C:\Users\testuser.m2\repository\com\helger\commons\ph-dao\11.1.3\ph-dao-11.1.3.jar;C:\Users\testuser.m2\repository\com\helger\photon\ph-oton-audit\9.2.1\ph-oton-audit-9.2.1.jar;C:\Users\testuser.m2\repository\com\helger\photon\ph-oton-security\9.2.1\ph-oton-security-9.2.1.jar;C:\Users\testuser.m2\repository\org\slf4j\jul-to-slf4j\2.0.9\jul-to-slf4j-2.0.9.jar;C:\projects\DBNA\updated waala\phase4-phase4-parent-pom-2.7.4\phase4-profile-peppol\target\classes;C:\Users\testuser.m2\repository\com\helger\peppol\peppol-commons\9.3.0\peppol-commons-9.3.0.jar;C:\Users\testuser.m2\repository\com\helger\peppol\peppol-reporting-api\2.2.2\peppol-reporting-api-2.2.2.jar;C:\projects\DBNA\updated waala\phase4-phase4-parent-pom-2.7.4\phase4-profile-dbnalliance\target\classes;C:\projects\DBNA\updated waala\phase4-phase4-parent-pom-2.7.4\phase4-peppol-servlet\target\classes;C:\Users\testuser.m2\repository\com\helger\peppol\peppol-sbdh\9.3.0\peppol-sbdh-9.3.0.jar;C:\Users\testuser.m2\repository\com\sun\xml\bind\jaxb-impl\4.0.4\jaxb-impl-4.0.4.jar;C:\Users\testuser.m2\repository\com\sun\xml\bind\jaxb-core\4.0.4\jaxb-core-4.0.4.jar;C:\Users\testuser.m2\repository\jakarta\xml\bind\jakarta.xml.bind-api\4.0.1\jakarta.xml.bind-api-4.0.1.jar;C:\Users\testuser.m2\repository\jakarta\activation\jakarta.activation-api\2.1.2\jakarta.activation-api-2.1.2.jar;C:\Users\testuser.m2\repository\commons-lang\commons-lang\2.6\commons-lang-2.6.jar;C:\Users\testuser.m2\repository\commons-cli\commons-cli\1.5.0\commons-cli-1.5.0.jar;C:\Users\testuser.m2\repository\com\helger\diver\ph-diver-repo\1.0.0\ph-diver-repo-1.0.0.jar;C:\Users\testuser.m2\repository\com\helger\commons\ph-security\11.1.3\ph-security-11.1.3.jar;C:\Users\testuser.m2\repository\com\helger\diver\ph-diver-api\1.0.0\ph-diver-api-1.0.0.jar;C:\Users\testuser.m2\repository\org\slf4j\slf4j-api\2.0.9\slf4j-api-2.0.9.jar;C:\projects\DBNA\updated waala\phase4-phase4-parent-pom-2.7.4\phase4-dynamic-discovery\target\classes;C:\Users\testuser.m2\repository\dnsjava\dnsjava\3.5.3\dnsjava-3.5.3.jar;C:\Users\testuser.m2\repository\com\helger\phive\phive-api\9.0.0\phive-api-9.0.0.jar;C:\Users\testuser.m2\repository\com\helger\phive\phive-xml\9.0.0\phive-xml-9.0.0.jar;C:\Users\testuser.m2\repository\com\helger\schematron\ph-schematron-xslt\7.1.2\ph-schematron-xslt-7.1.2.jar;C:\Users\testuser.m2\repository\com\helger\schematron\ph-schematron-api\7.1.2\ph-schematron-api-7.1.2.jar;C:\Users\testuser.m2\repository\net\sf\saxon\Saxon-HE\11.5\Saxon-HE-11.5.jar;C:\Users\testuser.m2\repository\org\xmlresolver\xmlresolver\4.6.4\xmlresolver-4.6.4.jar;C:\Users\testuser.m2\repository\org\xmlresolver\xmlresolver\4.6.4\xmlresolver-4.6.4-data.jar;C:\Users\testuser.m2\repository\com\helger\schematron\ph-schematron-schxslt\7.1.2\ph-schematron-schxslt-7.1.2.jar;C:\Users\testuser.m2\repository\name\dmaus\schxslt\schxslt\1.9.5\schxslt-1.9.5.jar;C:\Users\testuser.m2\repository\com\helger\schematron\ph-schematron-pure\7.1.2\ph-schematron-pure-7.1.2.jar;C:\Users\testuser.m2\repository\com\helger\web\ph-httpclient\10.1.7\ph-httpclient-10.1.7.jar;C:\Users\testuser.m2\repository\org\apache\httpcomponents\client5\httpclient5\5.3\httpclient5-5.3.jar;C:\Users\testuser.m2\repository\org\apache\httpcomponents\core5\httpcore5-h2\5.2.4\httpcore5-h2-5.2.4.jar;C:\Users\testuser.m2\repository\org\slf4j\jcl-over-slf4j\2.0.9\jcl-over-slf4j-2.0.9.jar;C:\Users\testuser.m2\repository\com\helger\peppol\peppol-smp-client\9.3.0\peppol-smp-client-9.3.0.jar;C:\Users\testuser.m2\repository\com\helger\web\ph-dns\10.1.7\ph-dns-10.1.7.jar;C:\Users\testuser.m2\repository\com\helger\peppol\peppol-id\9.3.0\peppol-id-9.3.0.jar;C:\Users\testuser.m2\repository\com\helger\xsd\ph-xsds-bdxr-smp1\3.0.0\ph-xsds-bdxr-smp1-3.0.0.jar;C:\Users\testuser.m2\repository\com\helger\xsd\ph-xsds-bdxr-smp2\3.0.0\ph-xsds-bdxr-smp2-3.0.0.jar;C:\Users\testuser.m2\repository\com\helger\xsd\ph-xsds-xmldsig11\3.0.0\ph-xsds-xmldsig11-3.0.0.jar;C:\Users\testuser.m2\repository\com\helger\xsd\ph-xsds-xades132\3.0.0\ph-xsds-xades132-3.0.0.jar;C:\Users\testuser.m2\repository\com\helger\xsd\ph-xsds-xades141\3.0.0\ph-xsds-xades141-3.0.0.jar;C:\Users\testuser.m2\repository\com\helger\xsd\ph-xsds-ccts-cct-schemamodule\3.0.0\ph-xsds-ccts-cct-schemamodule-3.0.0.jar;C:\Users\testuser.m2\repository\com\helger\peppol\peppol-id-datatypes\9.3.0\peppol-id-datatypes-9.3.0.jar;C:\Users\testuser.m2\repository\com\helger\peppol\peppol-smp-datatypes\9.3.0\peppol-smp-datatypes-9.3.0.jar;C:\Users\testuser.m2\repository\jakarta\xml\ws\jakarta.xml.ws-api\4.0.1\jakarta.xml.ws-api-4.0.1.jar;C:\Users\testuser.m2\repository\jakarta\xml\soap\jakarta.xml.soap-api\3.0.1\jakarta.xml.soap-api-3.0.1.jar;C:\Users\testuser.m2\repository\com\helger\xsd\ph-xsds-wsaddr\3.0.0\ph-xsds-wsaddr-3.0.0.jar;C:\Users\testuser.m2\repository\org\apache\httpcomponents\core5\httpcore5\5.2.4\httpcore5-5.2.4.jar;C:\projects\DBNA\updated waala\phase4-phase4-parent-pom-2.7.4\phase4-cef-client\target\classes;C:\projects\DBNA\updated waala\phase4-phase4-parent-pom-2.7.4\phase4-profile-cef\target\classes;C:\projects\DBNA\updated waala\phase4-phase4-parent-pom-2.7.4\phase4-peppol-client\target\classes;C:\Users\testuser.m2\repository\com\helger\ph-sbdh\5.0.1\ph-sbdh-5.0.1.jar;C:\Users\testuser.m2\repository\com\helger\phive\rules\phive-rules-peppol\3.1.6\phive-rules-peppol-3.1.6.jar;C:\Users\testuser.m2\repository\com\helger\ubl\ph-ubl21\8.0.3\ph-ubl21-8.0.3.jar;C:\Users\testuser.m2\repository\com\helger\ubl\ph-ubl23\8.0.3\ph-ubl23-8.0.3.jar;C:\Users\testuser.m2\repository\com\helger\cii\ph-cii-d16b\3.0.2\ph-cii-d16b-3.0.2.jar" com.testing.dbna.Main -f "C:/projects/DBNA/updated waala/phase4-phase4-parent-pom-2.7.4/phase4-spring-boot-demo/src/main/java/com/testing/dbna/DBNA-invoice_Minimum.xml" -r LEI::xxxxxxACxxxxxxxxxDxx -s LEI::xxxxxxACxxxxxxxxxDxx -u http://localhost:8080/as4 16:15:34.359 [main] INFO com.testing.dbna.Main -- We have --filePath option = C:/projects/DBNA/updated waala/phase4-phase4-parent-pom-2.7.4/phase4-spring-boot-demo/src/main/java/com/testing/dbna/DBNA-invoice_Minimum.xml 16:15:34.367 [main] INFO com.testing.dbna.Main -- We have --senderPartyId option LEI::xxxxxxACxxxxxxxxxDxx 16:15:34.367 [main] INFO com.testing.dbna.Main -- We have --receiverPartyId option LEI::xxxxxxACxxxxxxxxxDxx 16:15:34.367 [main] INFO com.testing.dbna.Main -- We have --url option http://localhost:8080/as4 16:15:35.160 [main] INFO com.helger.phase4.mgr.MetaAS4Manager -- MetaAS4Manager is initialized with in-memory data structures 16:15:35.180 [main] INFO com.helger.phase4.mgr.MetaAS4Manager -- Creating AS4 managers using factory class com.helger.phase4.mgr.AS4ManagerFactoryInMemory 16:15:35.271 [main] INFO com.helger.phase4.profile.AS4ProfileManager -- Set the default AS4 profile to 'peppol' 16:15:35.272 [main] INFO com.helger.phase4.profile.AS4ProfileManager -- Set the default AS4 profile to 'cef' 16:15:35.275 [main] INFO com.helger.phase4.profile.AS4ProfileManager -- 4 AS4 profiles are registered 16:15:35.276 [main] INFO com.helger.phase4.mgr.MetaAS4Manager -- MetaAS4Manager was initialized 16:15:35.584 [main] WARN com.testing.dbna.profile.DBNASender -- The check of the receiver's Peppol AP certificate was explicitly disabled. 16:15:37.247 [main] INFO com.helger.phase4.sender.AS4BidirectionalClientHelper -- Sending AS4 UserMessage to 'http://localhost:8080/as4' with max. 1 retries 16:15:37.594 [main] INFO com.helger.phase4.wss.WSSConfigManager -- None of the WSSConfig Security Providers is already installed - doing it now 16:15:37.710 [main] INFO com.helger.phase4.messaging.crypto.AS4Signer -- Now signing AS4 message [SOAP_12]. KeyIdentifierType=BST_DIRECT_REFERENCE; KeyAlias='cert'; SignAlgo=http://www.w3.org/2001/04/xmldsig-more#rsa-sha256; DigestAlgo=http://www.w3.org/2001/04/xmlenc#sha256; C14NAlgo=http://www.w3.org/2001/10/xml-exc-c14n# 16:15:37.802 [main] WARN org.apache.jcp.xml.dsig.internal.dom.DOMReference -- The input bytes to the digest operation are null. This may be due to a problem with the Reference URI or its Transforms. 16:15:37.826 [main] INFO com.helger.phase4.messaging.crypto.AS4Encryptor -- Now encrypting AS4 MIME message. KeyIdentifierType=BST_DIRECT_REFERENCE; EncAlgo=http://www.w3.org/2009/xmlenc11#aes128-gcm; KeyEncAlgo=RSA_OAEP_XENC11; MgfAlgo=http://www.w3.org/2009/xmlenc11#mgf1sha256; DigestAlgo=http://www.w3.org/2001/04/xmlenc#sha256; CertificateSubjectCN=C=US,ST=Texas,O=testing Corporation,OU=testing Finland,2.5.4.97=#130f44554e533a3a363234363337373337,CN=testing,1.2.840.113549.1.9.1=#16166172756e2e6b756d617240626173776172652e636f6d 16:15:42.662 [main] INFO com.helger.phase4.util.AS4ResourceHelper -- Converting [[Entity-Class: HttpMimeMessageEntity, Content-Type: multipart/related; boundary="----=_Part_0_1802896480.1710326737966"; type="application/soap+xml"; charset=UTF-8, Content-Encoding: null, chunked: false]; MimeMsg=[com.helger.phase4.messaging.mime.AS4MimeMessage@1549bba7; IsRepeatable=false]] to a repeatable HTTP entity using file C:\Users\SIDDHA~1\AppData\Local\Temp\phase4-res-18311975753150810233.tmp 16:15:42.748 [main] INFO com.helger.phase4.http.BasicHttpPoster -- Starting to transmit AS4 Message to 'http://localhost:8080/as4' 16:15:43.175 [main] INFO com.helger.phase4.http.BasicHttpPoster -- Failed transmitting AS4 Message to 'http://localhost:8080/as4' after 423 ms 16:15:43.180 [main] WARN com.helger.phase4.http.BasicHttpPoster -- Error sending message 'b4280d86-0ef1-4d6c-8659-455e91994f24@phase4' to 'http://localhost:8080/as4': ExtendedHttpResponseException - [400] All 11 headers returned Referrer-Policy=strict-origin-when-cross-origin X-Frame-Options=SAMEORIGIN X-Content-Type-Options=nosniff X-XSS-Protection=1; mode=block Strict-Transport-Security=max-age=3600;includeSubDomains Cache-Control=no-cache, no-store, must-revalidate, proxy-revalidate Vary=Accept-Encoding Content-Type=text/plain;charset=UTF-8 Transfer-Encoding=chunked Date=Wed, 13 Mar 2024 10:45:43 GMT Connection=close Response Body (in UTF-8): Bad Request: Error validating incoming AS4 UserMessage with the profile DBN Alliance following errors are present: [PMode.Leg[1].Security.X509EncryptionAlgorithm must use the value 'aes256-gcm' instead of 'aes128-gcm'] - waiting 10000 ms, than retrying 16:15:53.199 [main] INFO com.helger.phase4.http.BasicHttpPoster -- Retry #1/1 for sending message with ID 'b4280d86-0ef1-4d6c-8659-455e91994f24@phase4' 16:15:53.200 [main] INFO com.helger.phase4.http.BasicHttpPoster -- Starting to transmit AS4 Message to 'http://localhost:8080/as4' 16:15:53.282 [main] INFO com.helger.phase4.http.BasicHttpPoster -- Failed transmitting AS4 Message to 'http://localhost:8080/as4' after 82 ms 16:15:53.294 [main] ERROR com.helger.phase4.sender.AbstractAS4UserMessageBuilder -- Exception sending AS4 user message com.helger.phase4.util.Phase4Exception: Wrapped Phase4Exception at com.helger.phase4.sender.AbstractAS4UserMessageBuilderMIMEPayload.mainSendMessage(AbstractAS4UserMessageBuilderMIMEPayload.java:237) at com.helger.phase4.sender.AbstractAS4MessageBuilder.sendMessage(AbstractAS4MessageBuilder.java:856) at com.helger.phase4.sender.AbstractAS4UserMessageBuilder.sendMessageAndCheckForReceipt(AbstractAS4UserMessageBuilder.java:798) at com.helger.phase4.sender.AbstractAS4UserMessageBuilder.sendMessageAndCheckForReceipt(AbstractAS4UserMessageBuilder.java:764) at com.testing.dbna.Main.postData(Main.java:154) at com.testing.dbna.Main.main(Main.java:117) Caused by: com.helger.httpclient.response.ExtendedHttpResponseException: [400] All 11 headers returned Referrer-Policy=strict-origin-when-cross-origin X-Frame-Options=SAMEORIGIN X-Content-Type-Options=nosniff X-XSS-Protection=1; mode=block Strict-Transport-Security=max-age=3600;includeSubDomains Cache-Control=no-cache, no-store, must-revalidate, proxy-revalidate Vary=Accept-Encoding Content-Type=text/plain;charset=UTF-8 Transfer-Encoding=chunked Date=Wed, 13 Mar 2024 10:45:53 GMT Connection=close Response Body (in UTF-8): Bad Request: Error validating incoming AS4 UserMessage with the profile DBN Alliance following errors are present: [PMode.Leg[1].Security.X509EncryptionAlgorithm must use the value 'aes256-gcm' instead of 'aes128-gcm'] at com.helger.httpclient.response.ExtendedHttpResponseException.create(ExtendedHttpResponseException.java:211) at com.helger.httpclient.response.ResponseHandlerHttpEntity.handleResponse(ResponseHandlerHttpEntity.java:55) at com.helger.phase4.sender.AS4BidirectionalClientHelper.lambda$sendAS4UserMessageAndReceiveAS4SignalMessage$0(AS4BidirectionalClientHelper.java:125) at com.helger.phase4.client.AbstractAS4Client.lambda$sendMessageWithRetries$1(AbstractAS4Client.java:589) at org.apache.hc.client5.http.impl.classic.CloseableHttpClient.execute(CloseableHttpClient.java:247) at org.apache.hc.client5.http.impl.classic.CloseableHttpClient.execute(CloseableHttpClient.java:188) at com.helger.httpclient.HttpClientManager.execute(HttpClientManager.java:137) at com.helger.httpclient.HttpClientManager.execute(HttpClientManager.java:102) at com.helger.phase4.http.BasicHttpPoster.sendGenericMessage(BasicHttpPoster.java:201) at com.helger.phase4.http.BasicHttpPoster.sendGenericMessageWithRetries(BasicHttpPoster.java:317) at com.helger.phase4.client.AbstractAS4Client.sendMessageWithRetries(AbstractAS4Client.java:591) at com.helger.phase4.sender.AS4BidirectionalClientHelper.sendAS4UserMessageAndReceiveAS4SignalMessage(AS4BidirectionalClientHelper.java:137) at com.helger.phase4.sender.AbstractAS4UserMessageBuilderMIMEPayload.mainSendMessage(AbstractAS4UserMessageBuilderMIMEPayload.java:211) ... 5 common frames omitted

Process finished with exit code 0

phax commented 7 months ago

Based on DBNA AS4 profile, you need to use AES-256 GCM. It seems like you are sending out with AES-128 GCM instead.

It seems like you are missing the DBNA profile in your pom.xml - see https://github.com/phax/phase4/wiki/Profile-DBNAlliance for details.

Please make sure, that for DBNA sending, you set the DBNA profile dbnalliance as the default in the AS4 Profile Manager.

SiddharthaBhatia commented 7 months ago

Hello Philip,

Thanks for the prompt reply !

I have made the following changes to the phase4-spring-boot-demo provided within the phase4-library:

  1. AS4ProfileSelector.setCustomAS4ProfileID (AS4DBNAllianceProfileRegistarSPI.AS4_PROFILE_ID); inside ServletConfig.java

  2. Phase4PeppolServletConfiguration.setReceiverCheckEnabled (false); Phase4PeppolServletConfiguration.setSMPClient (new BDXR2ClientReadOnly(URLHelper.getAsURI (sSMPURL))); Phase4PeppolServletConfiguration.setAS4EndpointURL (sAPURL); Phase4PeppolServletConfiguration.setAPCertificate (aAPCert);

  3. I have also included :

    com.helger.phase4 phase4-profile-dbnalliance 2.7.4

    in pom.xml

Thanks, Siddhartha Bhatia

phax commented 7 months ago

Super. And does it work now?

phax commented 7 months ago

I think I understand. These are the changed you did and you get the respective error. Additional to your changes, please remove these from your POM:

In general, I think the Peppol stub is not ideal for starting with DBNA. However, as I don't have DBNA connectivity myself, I cannot help you with the details.

jicr74 commented 7 months ago

Hello Philip,

Just to confirm The phase4-server-webapp(C3) works seamlessly with DBNA in an 'out of the box' fashion. However, it seems that not any phase4-xxx-client(C2) will. am I right?

phax commented 7 months ago

@jicr74 thanks, good to know :) The phase4-peppol-client surely does not. I think a separate client would make sense. If you think so too, just create a separate issue for that :)

phax commented 5 months ago

With phase4 2.7.7 the new submodue phase4-dbnalliance-client should help you