diff --git a/phase4-lib/src/main/java/com/helger/phase4/servlet/AS4IncomingHandler.java b/phase4-lib/src/main/java/com/helger/phase4/servlet/AS4IncomingHandler.java index e37595f71..9d712fe60 100644 --- a/phase4-lib/src/main/java/com/helger/phase4/servlet/AS4IncomingHandler.java +++ b/phase4-lib/src/main/java/com/helger/phase4/servlet/AS4IncomingHandler.java @@ -814,7 +814,7 @@ public static IAS4MessageState processEbmsMessage (@Nonnull @WillNotClose final final boolean bIsPingMessage = AS4Helper.isPingMessage (aPMode); aState.setPingMessage (bIsPingMessage); - if (bIsPingMessage) + if (bIsPingMessage && (aProfile == null || !aProfile.isInvokeSPIForPingMessage())) LOGGER.info ("Received an AS4 Ping message - meaning it will NOT be handled by the custom handlers."); } diff --git a/phase4-lib/src/main/java/com/helger/phase4/servlet/AS4RequestHandler.java b/phase4-lib/src/main/java/com/helger/phase4/servlet/AS4RequestHandler.java index 8f0d5e510..6b04e8996 100644 --- a/phase4-lib/src/main/java/com/helger/phase4/servlet/AS4RequestHandler.java +++ b/phase4-lib/src/main/java/com/helger/phase4/servlet/AS4RequestHandler.java @@ -1372,7 +1372,7 @@ private IAS4ResponseFactory _handleSoapMessage (@Nonnull final HttpHeaderMap aHt // * No errors so far (sign, encrypt, ...) // * Valid PMode // * Exactly one UserMessage or SignalMessage - // * No ping/test message + // * If ping/test message then only if profile should invoke SPI // * No Duplicate message ID boolean bCanInvokeSPIs = true; if (aErrorMessagesTarget.isNotEmpty ())