cancel
Showing results for 
Search instead for 
Did you mean: 

Inbound Messages fail with exception "java.lang.IllegalArgumentException: Must parse configuration pairs before parsing configuration map."

Former Member
0 Kudos

Dear all,

I already looked for OSS notes and researched this forum for a similar case with no success. Also opened an incident with SAP but I would like to check if any of you experienced this error before.

My problem is that any message that arrives at the Adapter Engine fails with the exception (the exception below was caught with Trace at Debug mode):


com.sap.engine.interfaces.messaging.api.exception.MessagingException: Catching java.lang.IllegalArgumentException: Must parse configuration pairs before parsing configuration map.at com.sap.aii.af.lib.util.configuration.string.ConfigurationStringParser.checkNoPairConfiguration(ConfigurationStringParser.java:102)at com.sap.aii.af.lib.util.configuration.string.ConfigurationStringParser.parseConfigurationMap(ConfigurationStringParser.java:64)at com.sap.aii.adapter.xi.ms.messagelogging.cfg.GlobalMessageLoggingConfiguration.provideConfiguration(GlobalMessageLoggingConfiguration.java:16)at com.sap.aii.adapter.xi.ms.messagelogging.cfg.ScenarioMessageLoggingConfiguration.provideConfiguration(ScenarioMessageLoggingConfiguration.java:45)at com.sap.aii.adapter.xi.ms.messagelogging.cfg.DefaultMessageLoggingConfiguration.isLogging(DefaultMessageLoggingConfiguration.java:10)at com.sap.aii.adapter.xi.ms.messagelogging.ConfigurableMessageLogger.log(ConfigurableMessageLogger.java:34)at com.sap.aii.adapter.xi.ms.XIEventHandler$PREProcessingBlock.process(XIEventHandler.java:1346)at com.sap.engine.messaging.impl.spi.stage.ProcessorImpl.proceedToProcessingBlock(ProcessorImpl.java:99)at com.sap.engine.messaging.impl.spi.stage.ProcessorImpl.proceedToProcessingBlock(ProcessorImpl.java:114)at com.sap.engine.messaging.impl.spi.stage.ProcessorImpl.processMessage(ProcessorImpl.java:70)at com.sap.aii.adapter.xi.ms.XIEventHandler.onSend(XIEventHandler.java:369)at com.sap.engine.messaging.impl.api.ConnectionImpl.send(ConnectionImpl.java:186)at com.sap.aii.af.app.modules.CallAdapterWithMessageBean.process_sender(CallAdapterWithMessageBean.java:402)at com.sap.aii.af.app.modules.CallAdapterWithMessageBean.process(CallAdapterWithMessageBean.java:210)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)at java.lang.reflect.Method.invoke(Method.java:597)at com.sap.engine.services.ejb3.runtime.impl.RequestInvocationContext.proceedFinal(RequestInvocationContext.java:47)at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:166)at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatesTransition.invoke(Interceptors_StatesTransition.java:19)at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179)at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Resource.invoke(Interceptors_Resource.java:50)at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179)at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.doWorkWithAttribute(Interceptors_Transaction.java:37)at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.invoke(Interceptors_Transaction.java:21)at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179)at com.sap.engine.services.ejb3.runtime.impl.Interceptors_MethodRetry.invoke(Interceptors_MethodRetry.java:46)at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179)at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:191)at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatelessInstanceGetter.invoke(Interceptors_StatelessInstanceGetter.java:23)at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179)at com.sap.engine.services.ejb3.runtime.impl.Interceptors_SecurityCheck.invoke(Interceptors_SecurityCheck.java:25)at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179)at com.sap.engine.services.ejb3.runtime.impl.Interceptors_ExceptionTracer.invoke(Interceptors_ExceptionTracer.java:17)at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179)at com.sap.engine.services.ejb3.runtime.impl.DefaultInvocationChainsManager.startChain(DefaultInvocationChainsManager.java:138)at com.sap.engine.services.ejb3.runtime.impl.DefaultEJBProxyInvocationHandler.invoke(DefaultEJBProxyInvocationHandler.java:172)at com.sap.engine.services.ejb3.runtime.impl.DefaultEJBProxyInvocationHandler.invoke(DefaultEJBProxyInvocationHandler.java:99)at com.sun.proxy.$Proxy5414.process(Unknown Source)at com.sap.aii.af.app.mp.ejb.ModuleProcessorBean.process(ModuleProcessorBean.java:264)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)at java.lang.reflect.Method.invoke(Method.java:597)at com.sap.engine.services.ejb3.runtime.impl.RequestInvocationContext.proceedFinal(RequestInvocationContext.java:47)at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:166)at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatesTransition.invoke(Interceptors_StatesTransition.java:19)at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179)at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Resource.invoke(Interceptors_Resource.java:50)at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179)at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.doWorkWithAttribute(Interceptors_Transaction.java:37)at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.invoke(Interceptors_Transaction.java:21)at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179)at com.sap.engine.services.ejb3.runtime.impl.Interceptors_MethodRetry.invoke(Interceptors_MethodRetry.java:46)at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179)at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:191)at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatelessInstanceGetter.invoke(Interceptors_StatelessInstanceGetter.java:23)at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179)at com.sap.engine.services.ejb3.runtime.impl.Interceptors_SecurityCheck.invoke(Interceptors_SecurityCheck.java:25)at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179)at com.sap.engine.services.ejb3.runtime.impl.Interceptors_ExceptionTracer.invoke(Interceptors_ExceptionTracer.java:17)at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179)at com.sap.engine.services.ejb3.runtime.impl.DefaultInvocationChainsManager.startChain(DefaultInvocationChainsManager.java:138)at com.sap.engine.services.ejb3.runtime.impl.DefaultEJBProxyInvocationHandler.invoke(DefaultEJBProxyInvocationHandler.java:172)at com.sap.engine.services.ejb3.runtime.impl.DefaultEJBProxyInvocationHandler.invoke(DefaultEJBProxyInvocationHandler.java:99)at com.sun.proxy.$Proxy5459.process(Unknown Source)at com.sap.aii.adapter.soap.ejb.MPCallerApplication.callModuleProcessor(MPCallerApplication.java:404)at com.sap.aii.adapter.soap.ejb.MPCallerApplication.perform(MPCallerApplication.java:255)at com.sap.aii.af.sdk.xi.srt.ApplicationBubble.onMessage(ApplicationBubble.java:29)at com.sap.aii.af.sdk.xi.srt.ExtensionBubble.onMessage(ExtensionBubble.java:59)at com.sap.aii.adapter.soap.web.SOAPHandler.processSOAPtoXMB(SOAPHandler.java:689)at com.sap.aii.adapter.soap.web.MessageServlet.doPost(MessageServlet.java:530)at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.runServlet(FilterChainImpl.java:202)at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:103)at com.sap.engine.services.servlets_jsp.server.servlet.AuthenticationFilter.doFilter(AuthenticationFilter.java:126)at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:79)at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:441)at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:210)at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:441)at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:430)at com.sap.engine.services.servlets_jsp.filters.DSRWebContainerFilter.process(DSRWebContainerFilter.java:38)at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)at com.sap.engine.services.servlets_jsp.filters.ServletSelector.process(ServletSelector.java:81)at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)at com.sap.engine.services.servlets_jsp.filters.ApplicationSelector.process(ApplicationSelector.java:278)at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)at com.sap.engine.services.httpserver.filters.WebContainerInvoker.process(WebContainerInvoker.java:81)at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)at com.sap.engine.services.httpserver.filters.ResponseLogWriter.process(ResponseLogWriter.java:60)at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)at com.sap.engine.services.httpserver.filters.DefineHostFilter.process(DefineHostFilter.java:27)at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)at com.sap.engine.services.httpserver.filters.MonitoringFilter.process(MonitoringFilter.java:29)at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)at com.sap.engine.services.httpserver.filters.SessionSizeFilter.process(SessionSizeFilter.java:26)at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)at com.sap.engine.services.httpserver.filters.MemoryStatisticFilter.process(MemoryStatisticFilter.java:57)at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)at com.sap.engine.services.httpserver.filters.DSRHttpFilter.process(DSRHttpFilter.java:43)at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)at com.sap.engine.services.httpserver.server.Processor.chainedRequest(Processor.java:475)at com.sap.engine.services.httpserver.server.Processor$FCAProcessorThread.process(Processor.java:269)at com.sap.engine.services.httpserver.server.rcm.RequestProcessorThread.run(RequestProcessorThread.java:56)at com.sap.engine.core.thread.execution.Executable.run(Executable.java:122)at com.sap.engine.core.thread.execution.Executable.run(Executable.java:101)at com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:328)

The above was tested with SOAP Sender, but I had the same behavior for mail adapter as well, for such I believe the problem is with Adapter Engine. Also, messages sent from Integration Server (ABAP Proxy > PI > SOAP) are arriving at the proper end accordlingly.

The environment is a fresh PI installation double stack version 7.40 SP 08, the scenario above never worked. I already reviewed post-installation steps and suspect it has something to do with XPI Adapter: XI Service(com.sap.aii.adapter.xi.svc) configuration in Java System Properties (at http://<host>:<port>/nwa > Configuration > Infrastructure ), yet I did not find anything wrong with it.

Any tips are welcome.

Thank you,

Tiago Marinho

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi all,

With the opened incident SAP provided XPI Inspector, which allowed me to pinpoint the error. As it turns out, the call stack in the exception never lies.

My problem was that I had xiadapter.logger.conf configured as xiadapter.stage.conf with value "(BI=3,MS=3,AM=3) (BI=3,MS=3,AM=3)" at XPI Adapter: XI Service(com.sap.aii.adapter.xi.svc). The parantheses differentiates configuration for ABAP and Java Stack but it is just for staging configuration ( Saving Message Versions in the AAE (Dual-Stack Message Processing) - Advanced Adapter Engine - SAP L... ) . So the unexpected value at xiadapter.logger.conf was causing the problem, changing it to "BI=3,MS=3,AM=3" solved the problem.

TL;DR: The exception means that there is some wrong configuration value that PI can`t read properly for the said parameter.

Best Regards,

Tiago Marinho

Answers (1)

Answers (1)

azharshaikh
Active Contributor
0 Kudos
Former Member
0 Kudos

Hi Azhar,

Just tried it, no success though. I will review global logging configuration (as the exception stack is pointing to).

Thank you,

Tiago Marinho

markangelo_dihiansan
Active Contributor
0 Kudos

Hi Tiago,

Did you check the payload when it is sent to PI and in moni when it is received? Are you missing namespaces?

Regards,

Mark