Skip to Content
0
Former Member
Mar 23, 2007 at 02:50 PM

JDBC Async-Sync bridge does not work

103 Views

Hi folks.

I read the how to guide “How To Realize a sync-async and async-sync bridge within the Adapter Framework” and I found some tips at SDN (i.e File - RFC - File without a BPM - Possible from SP 19.) . So on, I created a scenario JDBC<=>SOAP.

My scenario:

1 JDBC adapter sends an async request to SOAP

2 SOAP creates an object in its system and then sends a sync confirmation response to the sender (async JDBC adapter Receiver)

Module Tab of JDBC Sender

Processing Sequence

AF_Modules/RequestResponseBean 1

CallSapAdapter 2

AF_Modules/ResponseOnewayBean 3

Module Configuration

1 passThrough true

3 adapterNamespace http://sap.com/xi/XI/System

3 adapterType JDBC

3 receiverChannel JDBC_Object_Receiver

3 receiverService Legacy_Service

The problem is the scenario works fine until an error is detected on communication channel (Receiver). Any kind of error, as communication problem, insert/update problem or procedure types problem. When this thing happens, communication channel (Sender) posts the next message and a persist error appears, like that

<SAP:Category>XIServer</SAP:Category>

<SAP:Code area="PERSIST">MSGGUID_EXISTING</SAP:Code>

<SAP:Stack>Message ID XXXX for pipeline CENTRAL, version already exists in system</SAP:Stack>

<SAP:Retry>N</SAP:Retry>

After this, all the next messages remain at "Processing started".

This persist error message becomes constant in the system. It is executed once an hour approximately.

I have already tried solving this problem deleting the adapter and recreated it again, but the behavior remains the same.

This is the SOAP Header Main

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>

- <!--

Inbound Message

-->

- http://schemas.xmlsoap.org/soap/envelope/" xmlns:SAP=" http://sap.com/xi/XI/Message/30">

- <SOAP:Header>

- http://sap.com/xi/XI/Message/30" xmlns:SOAP=" http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsu=" http://www.docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" versionMajor="003" versionMinor="000" SOAP:mustUnderstand="1" wsu:Id="wsuid-main-92ABE13F5C59AB7FE10000000A1551F7">

<SAP:MessageClass>SystemError</SAP:MessageClass>

<SAP:ProcessingMode>synchronous</SAP:ProcessingMode>

<SAP:MessageId>6F5A54B3-96DF-C744-8BF6-A4D4B9289C5D</SAP:MessageId>

<SAP:RefToMessageId>F6BC6270-D94A-11DB-B6D0-00188B40F2CF</SAP:RefToMessageId>

<SAP:TimeSent>2007-03-23T14:31:30Z</SAP:TimeSent>

- <SAP:Sender>

<SAP:Service />

<SAP:Interface namespace="" />

</SAP:Sender>

- <SAP:Receiver>

<SAP:Party agency="" scheme="" />

<SAP:Service>VUC</SAP:Service>

<SAP:Interface namespace="http://oesp0115/xi/webservices">Cliente_THOR_OB</SAP:Interface>

</SAP:Receiver>

<SAP:Interface namespace="http://oesp0115/xi/webservices">Cliente_THOR_OB</SAP:Interface>

</SAP:Main>

- http://sap.com/xi/XI/Message/30" xmlns:SOAP=" http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">

<SAP:QualityOfService>BestEffort</SAP:QualityOfService>

</SAP:ReliableMessaging>

- http://sap.com/xi/XI/Message/30" xmlns:SOAP=" http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">

<SAP:Category>XIServer</SAP:Category>

<SAP:Code area="PERSIST">MSGGUID_EXISTING</SAP:Code>

<SAP:P1>F6BC6270D94A11DBB6D000188B40F2CF</SAP:P1>

<SAP:P2>CENTRAL</SAP:P2>

<SAP:P3 />

<SAP:P4 />

<SAP:AdditionalText />

<SAP:ApplicationFaultMessage namespace="" />

<SAP:Stack>Message ID F6BC6270D94A11DBB6D000188B40F2CF for pipeline CENTRAL, version already exists in system</SAP:Stack>

<SAP:Retry>N</SAP:Retry>

</SAP:Error>

- http://sap.com/xi/XI/Message/30" xmlns:SOAP=" http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">

- <SAP:Hop timeStamp="2007-03-23T14:31:30Z" wasRead="false">

<SAP:Engine type="AE">af.xid.oesp0115</SAP:Engine>

XIRAhttp:// XIRA" target="_blank">sap.com/xi/XI/System">XIRA>

<SAP:MessageId>F6BC6270-D94A-11DB-B6D0-00188B40F2CF</SAP:MessageId>

<SAP:Info />

</SAP:Hop>

- <SAP:Hop timeStamp="2007-03-23T14:31:30Z" wasRead="false">

<SAP:Engine type="IS">is.00.oesp0115</SAP:Engine>

XIhttp:// XI" target="_blank">sap.com/xi/XI/System">XI>

<SAP:MessageId>F6BC6270-D94A-11DB-B6D0-00188B40F2CF</SAP:MessageId>

<SAP:Info>3.0</SAP:Info>

</SAP:Hop>

</SAP:HopList>

- http://sap.com/xi/XI/Message/30" xmlns:SOAP=" http://schemas.xmlsoap.org/soap/envelope/">

<SAP:Date>20070323</SAP:Date>

<SAP:Time>113130</SAP:Time>

<SAP:Host>oesp0115</SAP:Host>

<SAP:SystemId>XID</SAP:SystemId>

<SAP:SystemNr>00</SAP:SystemNr>

<SAP:OS>Windows NT</SAP:OS>

<SAP:DB>DB6</SAP:DB>

<SAP:Language />

<SAP:ProcStatus>023</SAP:ProcStatus>

<SAP:AdapterStatus>000</SAP:AdapterStatus>

<SAP:User>PIAFUSER</SAP:User>

<SAP:TraceLevel>1</SAP:TraceLevel>

<SAP:Logging>1</SAP:Logging>

<SAP:LogSeqNbr>000</SAP:LogSeqNbr>

<SAP:RetryLogSeqNbr>000</SAP:RetryLogSeqNbr>

<SAP:PipelineIdInternal>SAP_CENTRAL</SAP:PipelineIdInternal>

<SAP:PipelineIdExternal>CENTRAL</SAP:PipelineIdExternal>

<SAP:PipelineElementId />

<SAP:PipelineService />

<SAP:QIdInternal />

<SAP:CommitActor>X</SAP:CommitActor>

<SAP:SplitNumber>0</SAP:SplitNumber>

<SAP:NumberOfRetries>0</SAP:NumberOfRetries>

<SAP:NumberOfManualRetries>0</SAP:NumberOfManualRetries>

<SAP:TypeOfEngine client="001">CENTRAL</SAP:TypeOfEngine>

<SAP:PlsrvExceptionCode />

<SAP:EOReferenceRuntime type="TID" />

<SAP:EOReferenceInbound type="TID" />

<SAP:EOReferenceOutbound type="TID" />

<SAP:MessageSizePayload>1304</SAP:MessageSizePayload>

<SAP:MessageSizeTotal>3744</SAP:MessageSizeTotal>

<SAP:PayloadSizeRequest>1304</SAP:PayloadSizeRequest>

<SAP:PayloadSizeRequestMap>0</SAP:PayloadSizeRequestMap>

<SAP:PayloadSizeResponse>0</SAP:PayloadSizeResponse>

<SAP:PayloadSizeResponseMap>0</SAP:PayloadSizeResponseMap>

<SAP:Reorganization>INI</SAP:Reorganization>

<SAP:AdapterOutbound>AENGINE</SAP:AdapterOutbound>

<SAP:InterfaceAction>INIT</SAP:InterfaceAction>

<SAP:RandomNumber>14</SAP:RandomNumber>

<SAP:AckStatus>000</SAP:AckStatus>

<SAP:SkipReceiverDetermination />

<SAP:Sender_Agreement_GUID>56A2F666C66538F48BCD76B50034F91C</SAP:Sender_Agreement_GUID>

</SAP:RunTime>

- http://sap.com/xi/XI/Message/30">

- <SAP:RunTimeItem>

<SAP:Name type="ADAPTER_IN">INTEGRATION_ENGINE_HTTP_ENTRY</SAP:Name>

<SAP:Timestamp type="begin" host="oesp0115">20070323143130.699</SAP:Timestamp>

</SAP:RunTimeItem>

- <SAP:RunTimeItem>

<SAP:Name type="ADAPTER_IN">INTEGRATION_ENGINE_HTTP_ENTRY</SAP:Name>

<SAP:Timestamp type="end" host="oesp0115">20070323143130.714</SAP:Timestamp>

</SAP:RunTimeItem>

- <SAP:RunTimeItem>

<SAP:Name type="CORE">INTEGRATION_ENGINE</SAP:Name>

<SAP:Timestamp type="begin" host="oesp0115">20070323143130.714</SAP:Timestamp>

</SAP:RunTimeItem>

- <SAP:RunTimeItem>

<SAP:Name type="CORE">INTEGRATION_ENGINE</SAP:Name>

<SAP:Timestamp type="end" host="oesp0115">20070323143130.714</SAP:Timestamp>

</SAP:RunTimeItem>

- <SAP:RunTimeItem>

<SAP:Name type="CORE">INTEGRATION_ENGINE</SAP:Name>

<SAP:Timestamp type="end" host="oesp0115">20070323143130.87</SAP:Timestamp>

</SAP:RunTimeItem>

</SAP:PerformanceHeader>

- http://sap.com/xi/XI/Message/30" xmlns:SOAP=" http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">

<SAP:TraceLevel>Information</SAP:TraceLevel>

<SAP:Logging>Off</SAP:Logging>

</SAP:Diagnostic>

- http://sap.com/xi/XI/Message/30">

<Trace level="1" type="T">Party normalization: sender</Trace>

<Trace level="1" type="T">Sender scheme external = XIParty</Trace>

Sender agency external = http://sap.com/xi/XI>

<Trace level="1" type="T">Sender party external =</Trace>

<Trace level="1" type="T">Sender party normalized =</Trace>

<Trace level="1" type="T">Party normalization: receiver</Trace>

<Trace level="1" type="T">Receiver scheme external =</Trace>

<Trace level="1" type="T">Receiver agency external =</Trace>

<Trace level="1" type="T">Receiver party external =</Trace>

<Trace level="1" type="T">Receiver party normalized =</Trace>

<Trace level="1" type="B" name="CL_XMS_HTTP_HANDLER-HANDLE_REQUEST" />

- <!--

-->

<Trace level="1" type="T">XMB was called with URL /sap/xi/engine?type=entry</Trace>

<Trace level="1" type="T">COMMIT is done by XMB !</Trace>

<Trace level="1" type="B" name="CL_XMS_MAIN-ENTER_XMS" />

- <!--

-->

<Trace level="1" type="B" name="CL_XMS_MAIN-SET_START_PIPELINE" />

- <!--

-->

<Trace level="1" type="B" name="SXMBCONF-SXMB_GET_XMB_USE" />

<Trace level="1" type="B" name="CL_XMS_TROUBLESHOOT-ENTER_PLSRV" />

<Trace level="1" type="T">****************************************************</Trace>

<Trace level="1" type="T">* *</Trace>

<Trace level="1" type="T">* *</Trace>

<Trace level="1" type="T">XMB entry processing</Trace>

<Trace level="1" type="T">system-ID = XID</Trace>

<Trace level="1" type="T">client = 001</Trace>

<Trace level="1" type="T">language = E</Trace>

<Trace level="1" type="T">user = PIAFUSER</Trace>

<Trace level="1" type="Timestamp">2007-03-23T14:31:30Z BRAZIL</Trace>

<Trace level="1" type="T">* *</Trace>

<Trace level="1" type="T">* *</Trace>

<Trace level="1" type="T">****************************************************</Trace>

- <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_UC_EXECUTE">

<Trace level="1" type="T">Message-GUID = F6BC6270D94A11DBB6D000188B40F2CF</Trace>

<Trace level="1" type="T">PLNAME = CENTRAL</Trace>

<Trace level="1" type="T">QOS = BE</Trace>

<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PIPELINE_SYNC" />

- <!--

-->

<Trace level="1" type="T">Get definition of external pipeline CENTRAL</Trace>

<Trace level="1" type="B" name="CL_XMS_MAIN-LOOKUP_INTERNAL_PL_ID" />

<Trace level="1" type="T">Corresponding internal pipeline SAP_CENTRAL</Trace>

- <Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_LOG_TO_PERSIST">

- <Trace level="1" type="B" name="interface activity determination">

<Trace level="1" type="T">Version 000</Trace>

<Trace level="1" type="T">Message status 000</Trace>

<Trace level="1" type="T">Interface action INIT</Trace>

<Trace level="1" type="T">(must be INIT for a new determination)</Trace>

<Trace level="1" type="T">Message type BEST EFFORT. -> No determination</Trace>

<Trace level="1" type="T">Set interface action INIT into *MAST*</Trace>

</Trace>

</Trace>

- <Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_TO_PERSIST">

- <Trace level="1" type="B" name="interface activity determination">

<Trace level="1" type="T">Version 000</Trace>

<Trace level="1" type="T">Message status 000</Trace>

<Trace level="1" type="T">Interface action INIT</Trace>

<Trace level="1" type="T">(must be INIT for a new determination)</Trace>

<Trace level="1" type="T">Message type BEST EFFORT. -> No determination</Trace>

<Trace level="1" type="T">Set interface action INIT into *MAST*</Trace>

</Trace>

</Trace>

</Trace>

<Trace level="1" type="T">SystemError message generated. Guid: 6F5A54B396DFC7448BF6A4D4B9289C5D</Trace>

<Trace level="1" type="T">Error during execution of message : F6BC6270D94A11DBB6D000188B40F2CF</Trace>

<Trace level="1" type="T">ApplicationMessage was (=RefToMsgId): F6BC6270D94A11DBB6D000188B40F2CF</Trace>

<Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_TO_PERSIST" />

- <!--

-->

- <Trace level="1" type="B" name="interface activity determination">

<Trace level="1" type="T">Version 000</Trace>

<Trace level="1" type="T">Message status 000</Trace>

<Trace level="1" type="T">Interface action INIT</Trace>

<Trace level="1" type="T">(must be INIT for a new determination)</Trace>

<Trace level="1" type="T">Message type BEST EFFORT. -> No determination</Trace>

<Trace level="1" type="T">Set interface action INIT into MAST</Trace>

</Trace>

</SAP:Trace>

</SOAP:Header>

- <SOAP:Body>

http://sap.com/xi/XI/Message/30" xmlns:xlink=" http://www.w3.org/1999/xlink" xmlns:wsu=" http://www.docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="wsuid-manifest-5CABE13F5C59AB7FE10000000A1551F7" />

</SOAP:Body>

</SOAP:Envelope>

Someone can help me?

Regards

Rafael