cancel
Showing results for 
Search instead for 
Did you mean: 

Erroneous/Unspecified headers are:[ DCJMSMessageProperty0]

udayabhaskar
Explorer
0 Kudos

Hi,

We are migrating from PI 7.4 dual stack to PO 7.5 single stack and getting below error

com.sap.aii.adapter.jms.core.channel.filter.DynamicConfigurationException: Dynamic header records are missing/incorrect specified in message: a4e7ffbe-a0c3-11ee-cf80-000000689478. Erroneous/Unspecified headers are:[ DCJMSMessageProperty0 ]"

We took a trace and got the below error for which we have tried to implement "KBA 2063806 - Enhanced Duplicate Handling in JMS Adapter sender channels" but still getting error.

com.sap.aii.adapter.xi.ms.AckProcessor.processAck()

com.sap.aii.af.lib.trace.Trace.errorT : 486

com.sap.aii.adapter.xi.ms.AckProcessor.processAck : 235

com.sap.aii.adapter.xi.ms.AckProcessor.run : 179

com.sap.engine.core.thread.impl3.ActionObject.run : 37

java.security.AccessController.doPrivileged (Native Method)

com.sap.engine.core.thread.impl3.SingleThread.execute : 185

com.sap.engine.core.thread.impl3.SingleThread.run : 302

Acknowledgement handling failed for type SystemErrorAck. Reason: com.sap.engine.interfaces.messaging.api.exception.MessagingException: Acknowledgement not possible for synchronous message.

========================================================================

Our configuration is as below: Bloomberg (JMS sender) -> PO -> SAP (RFC receiver) -> PO - Bloomberg (JMS Receiver)

JMS has a separate sender and receiver channel because they have separate queues to send and receive data. The receiver channel name has been added in the module configuration of the sender channel and also response one way bean has been added.

In the 7.4 dual stack version we have created Sender Agreement, Receiver Agreement, Interface Determination and Receiver Determination. However in the 7.5 single stack we have created an ICO.

We are also using a UDF in our mapping through which we are getting few fields too our header so that the receiving Bloomberg system can accept the data

Below is the UDF that we are using:

public String Set_Header_OC(String var1, Container container) throws StreamTranformationException{

String a, c = "";

DynamicConfiguration conf = (DynamicConfiguration) container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);

DynamicConfigurationKey key1 = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/JMS","DCJMSMessageProperty0");

a = conf.get(key1);

c = conf.get(key1);

String e = "E";

if(c.equals(e)){

a ="N";

}

else{

a = "8";

}

conf.put(key1,a);

DynamicConfigurationKey key2 = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/JMS","DCJMSMessageProperty1");

String b = "6089";

conf.put(key2,b);

return "";

}

========================================================================

Accepted Solutions (0)

Answers (0)