Mule-com.sap.conn.rfc.exceptions.RfcGetException:Transaction"&引用;未知

Mule-com.sap.conn.rfc.exceptions.RfcGetException:Transaction"&引用;未知,mule,sap,mule-component,Mule,Sap,Mule Component,我正在尝试使用mule中提供的transformer中的XMLto BAPI将XML转换为BAPI对象。我测试了连接,结果成功了。点击SAP时,我发现以下错误: com.sap.conn.rfc.exceptions.RfcGetException: Transaction " " is unknown. at com.sap.conn.rfc.engine.RfcImp.ab_rfcerror(RfcImp.java:1176) at com.sap.co

我正在尝试使用mule中提供的transformer中的XMLto BAPI将XML转换为BAPI对象。我测试了连接,结果成功了。点击SAP时,我发现以下错误:

com.sap.conn.rfc.exceptions.RfcGetException: Transaction "                    " is unknown.
at com.sap.conn.rfc.engine.RfcImp.ab_rfcerror(RfcImp.java:1176)
at com.sap.conn.rfc.engine.RfcGet.ab_rfcget(RfcGet.java:120)
at com.sap.conn.rfc.engine.RfcRcv.ab_rfcreceive(RfcRcv.java:36)
at com.sap.conn.rfc.engine.RfcIoOpenCntl.RfcReceive(RfcIoOpenCntl.java:1983)
at com.sap.conn.jco.rt.MiddlewareJavaRfc$JavaRfcClient.execute(MiddlewareJavaRfc.java:2032)
at com.sap.conn.jco.rt.ClientConnection.execute(ClientConnection.java:1179)
at com.sap.conn.jco.rt.ClientConnection.execute(ClientConnection.java:1008)
at com.sap.conn.jco.rt.RfcDestination.execute(RfcDestination.java:1458)
at com.sap.conn.jco.rt.RfcDestination.execute(RfcDestination.java:1428)
at com.sap.conn.jco.rt.AbapFunction.execute(AbapFunction.java:300)
at com.mulesoft.mule.transport.sap.jco3.SapJcoDefaultConnectionClient.executeSRFC(SapJcoDefaultConnectionClient.java:169)
at com.mulesoft.mule.transport.sap.jco3.SapJcoDefaultConnectionClient.execute(SapJcoDefaultConnectionClient.java:192)
at com.mulesoft.mule.transport.sap.jco3.SapJcoDefaultConnectionClient.dispatch(SapJcoDefaultConnectionClient.java:432)
at com.mulesoft.mule.transport.sap.SapMessageDispatcher.doSend(SapMessageDispatcher.java:175)
at org.mule.transport.AbstractMessageDispatcher.process(AbstractMessageDispatcher.java:84)
at org.mule.transport.AbstractConnector$DispatcherMessageProcessor.process(AbstractConnector.java:2662)
at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:24)
at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:107)
at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:24)
at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
at org.mule.processor.BlockingProcessorExecutor.executeNext(BlockingProcessorExecutor.java:94)
at org.mule.processor.BlockingProcessorExecutor.execute(BlockingProcessorExecutor.java:56)
at org.mule.endpoint.outbound.OutboundResponsePropertiesMessageProcessor.process(OutboundResponsePropertiesMessageProcessor.java:35)
at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:24)
at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:107)
at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:24)
at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
at org.mule.processor.BlockingProcessorExecutor.executeNext(BlockingProcessorExecutor.java:94)
at org.mule.processor.BlockingProcessorExecutor.execute(BlockingProcessorExecutor.java:56)
at org.mule.processor.EndpointTransactionalInterceptingMessageProcessor$1.process(EndpointTransactionalInterceptingMessageProcessor.java:46)
at org.mule.processor.EndpointTransactionalInterceptingMessageProcessor$1.process(EndpointTransactionalInterceptingMessageProcessor.java:43)
at org.mule.execution.ExecuteCallbackInterceptor.execute(ExecuteCallbackInterceptor.java:16)
at org.mule.execution.BeginAndResolveTransactionInterceptor.execute(BeginAndResolveTransactionInterceptor.java:67)
at org.mule.execution.ResolvePreviousTransactionInterceptor.execute(ResolvePreviousTransactionInterceptor.java:44)
at org.mule.execution.SuspendXaTransactionInterceptor.execute(SuspendXaTransactionInterceptor.java:50)
at org.mule.execution.ValidateTransactionalStateInterceptor.execute(ValidateTransactionalStateInterceptor.java:40)
at org.mule.execution.IsolateCurrentTransactionInterceptor.execute(IsolateCurrentTransactionInterceptor.java:41)
at org.mule.execution.ExternalTransactionInterceptor.execute(ExternalTransactionInterceptor.java:48)
at org.mule.execution.TransactionalExecutionTemplate.execute(TransactionalExecutionTemplate.java:65)
at org.mule.processor.EndpointTransactionalInterceptingMessageProcessor.process(EndpointTransactionalInterceptingMessageProcessor.java:52)
at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:24)
at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:107)
at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
at org.mule.proces...

我的配置如下所示:

连接器参考

<sap:connector name="SAP" jcoAsHost="${SAPHost}" jcoUser="${user}" jcoPasswd="${password}" jcoSysnr="${SAPSystemNumber}" jcoClient="${SAPClient}" jcoLang="${loginLanguage}" validateConnections="true" doc:name="SAP"/>
<sap:xml-to-function xmlVersion="2" name="XML_to_SAP_Function__BAPI_" doc:name="XML to SAP Function (BAPI)"/>

SAP出站

 <sap:outbound-endpoint exchange-pattern="request-response" connector-ref="SAP" type="function" functionName="*******" xmlVersion="2" outputXml="true" responseTimeout="10000" transformer-refs="XML_to_SAP_Function__BAPI_" doc:name="SAP"/>

我是SAP mule的新手。请告诉我可能的原因

我使用的版本是最新的


谢谢

启用JCO跟踪,以便您可以找到问题所在

要在连接器级别启用跟踪,请执行以下步骤:

将属性jcoTrace设置为true,或提供扩展JCo属性JCo.client.trace或JCo.server.trace的值为1


在Mule ESB启动时为-Djco.trace_level=N提供一个值。JCo提供从0到10的跟踪级别。跟踪数据量随所选跟踪级别的增加而增加。每个跟踪级别还包含来自较低跟踪级别的所有跟踪数据。有关跟踪数据的详细信息,请参见下表。如果您使用的是高JCo跟踪级别,包含大量JCo调用和传输的内容,请确保有足够的可用磁盘空间。默认值为0。

启用JCO跟踪,以便找到问题所在

要在连接器级别启用跟踪,请执行以下步骤:

将属性jcoTrace设置为true,或提供扩展JCo属性JCo.client.trace或JCo.server.trace的值为1


在Mule ESB启动时为-Djco.trace_level=N提供一个值。JCo提供从0到10的跟踪级别。跟踪数据量随所选跟踪级别的增加而增加。每个跟踪级别还包含来自较低跟踪级别的所有跟踪数据。有关跟踪数据的详细信息,请参见下表。如果您使用的是高JCo跟踪级别,包含大量JCo调用和传输的内容,请确保有足够的可用磁盘空间。默认值为0。

为了获得一些上下文,您正在使用哪些具体版本的SAP connector、JCO库、Anypoint Studio和Mule Runtime


另外,您能否提供Mule应用程序的完整XML示例,包括您正在执行的转换(“XML_到SAP_函数_u到BAPI”)?

为了获得一些上下文,您使用的SAP connector、JCO库、Anypoint Studio和Mule运行时的具体版本是什么


此外,您能否提供Mule应用程序的完整XML示例,包括您正在执行的转换(“XML\u到SAP\u函数\uu到BAPI”)?

请配置Mule和SAP连接器版本。使用哪种RFC调用?是TRfc还是SRfc@SatheeshKumar是sRFC.Balwnat您解决了这个问题吗???@SatheeshKumar尚未解决。请配置Mule和SAP连接器版本。使用了哪种RFC调用?是TRfc还是SRfc@SatheeshKumar这是sRFC。Balwnat你解决了这个问题吗???@SatheeshKumar还没有。