JMS(WebSphere-MQseries) async to sync bridge Problem
Hi All,
Please find the scenario.
IDOC1 -
> PI -
>JMS(WebSphere-MQseries)receiver request
IDOC2 <-- PI <--
JMS(WebSphere-MQseries)Sender response
I need to pass the response to JMS sender so that I will get it and will send back to other IDOC.
here I need the details for making this async to sync bridge for JMS receiver to JMS sender.
Please let me know the which adapter module I should use handle this situation.
Thanks,
Bhupesh
What exactly is unclear for you regarding the online help?
http://help.sap.com/saphelp_nw04/helpdata/en/45/20d2b4c20a0732e10000000a155369/frameset.htm
Similar Messages
-
Hi all,
I am extracting information from SAP and Database and merging in XI using BPMcollectpattern and sent to webservice.
async to async is working fine, but i need to see the response from Webservice in sxmb_moni for what went wrong in webservice.
1) for this should i include async to sync bridge????
can anyone suggest me better way to do for this.
Kind Regards,
KiranHello,
there exists only a sync-to-async bridge.
In case of async-to-sync you don't need a bridge.
If your problem is only that you can't see your message in sxmb_moni because it's a sync-message -> look here:
/people/michal.krawczyk2/blog/2005/05/10/xi-i-cannot-see-some-of-my-messages-in-the-sxmbmoni
Regards
Patrick -
Hi Experts,
I am doing async JDBC to sync webservice scenario.
I did create async interface for JDBC and sync interface for webservice.
my scenario is i just want to see the response from webservice in XI for trouble shoot, i dont need to send the response message to database.
can anyone tell me how can we do it without using BPM (async to sync bridge).
Kind Regards,
kiranHi
Please go through below steps now
I have added the comments with same in bold font
Data Types: JDBC_DT,File_DT
Message Types: JDBC_MT,File_MT
Message Interfaces:
JDBC_OUT_MI(outbound,async),This should be Sync given MT_File as respo
File_MI(inbound,async), Dont use this
WS_IN_MI(inbound,sync,input=WS_req,output=WS_resp)
WS_resp_MI(outbound,async,WS_resp), -----No need of this
Message Mappings:
JDBC_WS_req_MM
(JDBC_OUT(JDBC_MT)------->WS_IN_MI(WS_req) ).
*Here WS_IN_MM msg. mapping should be used insted of*
*WS_IN_MI i.e message interface*
*WS_File_Res_MM*
(WS_Res(Source -- Ws_res) ---> File_MT)
Interface Mapping: JDBC_WS_req_IM(source=JDBC_OUT_MI,target=WS_IN_MI)
In IM you need to use the above one only
Here you have two tabs as Request & Response, Request will be normal as
it is JDBC_MT to WS_Req with proper mapping
*In Response use File_MT <--- Ws_RES with appropriate mapping *
For ID configuration refer below sample scenario,
It is File1 to RFC to File2- Just in your scenario it is JDBC>WS--->File2
So refer and do necessary changes
From SP 19 on XI 3.0 and SP 10 on PI 7.0, a File - RFC - File ( Asynch - Synch ) scenario can be done without a BPM.
Steps:
Integration Repository
The Integration Repository will be similar to any Synchronous Scenario ( say HTTP - RFC ) . 1 Outbound Synch message Interface and 1 Inbound Synch Message Interface.
Integration Directory
This is where a few differences lie, so let me take some time.
1. The Receiver Determination , Interface Determination will be the same as in HTTP - RFC synch scenario. Create the Sender File Adapter, Receiver RFC Adapter and Receiver File Adapter.
2. Sender Agreement will be for the Sender File Adapter. Sender Agreement uses the Synch Outbound Message Interface.
3. Receiver Agreement will be for the Receiver RFC adapter. Receievr Agreement will use the RFC as thge Inbound Message Interface.
4. We need to add a few modules in the Sender File Adapter.
Go to the Modules Tab of the Sender File Adater, and add the following modules in the same sequence,
Number - ModuleName - Type - ModuleKey
code1- AF_Modules/RequestResponseBean - Local Enterprise Bean - 1
2- CallSapAdapter-Local Enterprise Bean - 2
3-AF_Modules/ResponseOnewayBean-3[/code]
Parameters
ModuleKey - ParameterName - ParameterValue
code1 - passThrough - true
3-receiverChannel - Receiver File Adapter Name
3-receiverService - Receiver Business Service/ System[/code]
With this configuration, you can now handle the requirement without a BPM
This feature been already blogged for JMS Adapters in these blogs ,
Sync/Async communication in JMS adapter without BPM (SP19)
/people/venkataramanan.parameswaran/blog/2007/01/18/syncasync-communication-in-jms-adapter-without-bpm-sp19
Async/Sync Communication using JMS adapter without BPM (SP 19)
/people/sudheer.babu2/blog/2007/01/18/asyncsync-communication-using-jms-adapter-without-bpm-sp-19
Dynamic Configuration is also possible,and this as well as many other options are discussed in the How To guide - "How To Realize a sync-async and async-sync
bridge within the Adapter Framework" available on the Service Market Place.
For info on the Modules used here, look into these links,
Request Response Bean
http://help.sap.com/saphelp_nw04/helpdata/en/45/20c210c20a0732e10000000a155369/content.htm
Response Oneway Bean
http://help.sap.com/saphelp_nw04/helpdata/en/45/20cc5dc2180733e10000000a155369/content.htm
Hope this info helps,
Thanks
Swarup -
Problem with JMS Correlation i Async/Sync bridge
This is my scenario:
Im receiving a request message from the JMS-adapter and forward this via a async/sync bridge to CRM. Im using a synchronous proxy in CRM. I want to send the response from this proxy back to MQ via the JMS adapter and put my original JMS Message ID in the JMS Correlation ID in the response message.
Ive read about how to configure this in the pdf-document How to Correlate JMS messages.
I did as suggested and that is as follows.
1. In my receiver channel I set the Correlation Setting Set XI Conversation ID To=JMSMessageID.
2. In my integration process (async/sync-bridge) I set the Conversation ID in my async send step to the Conversation ID of my request message.
3. In my sender channel I set the Correlation Setting Set JMSCorrelationID To=XI Conversation ID.
When I test my scenario I get the following error:
New JMS message cannot be correlated with the XI message although it is configured. Unable to set because correlation value is null. Correlation rule: XI_CONVERSATIONID, correlated property: JMSCorrelationID
I thought that my Conversation ID should carry the value of my initial JMS Message ID. I know that this is not null.
Can somebody please help me?
Kind regards.
/HeléHi Wallace,
I tried to set the Conversation ID to the Correlation ID instead but I still get the same error.
The sending application needs to correlate the request message with the corresponding response and since we are using MQ this is the way to do it.
regards.
/Helé -
Sync/Async and Async/Sync Bridge in JMS Adapter
Hi,
I have scenarios using both the Sync/Async and the Async/Sync Bridge in the JMS Adapter. In general this works fine. There is just one thing that caught my attention.
In the Sync/Async Bridge, the correlation in JMS is done
JMS Message ID of Reqeust --> JMS Correlation ID of Response
In the Async/Sync Bridge, it is done
JMS Correlation ID of Request --> JMS Correlation ID of Response
which seems strange as I would have expected to work the same for both ways...
I'm following exactly the setup described in the 'How-to correlate JMS' guide.
Has anybody experienced the same thing or am I missing something important here?
thanks for your help
regards,
PeterHi,
If I get it right the MQ queue gives a response message back to XI. The message looks okay on MQ queue, but in XI it's empty.
So I guess the problem must be within the channel that picks it from MQ queue. Did you configure any modules in it that might screw up the content? Is the the message empty as soon as it arrives in XI adapter engine? Pls. check in RWB Monitoring or End-to-End monitoring.
Do you have other channels that pick up messages from that or another MQ queue which do not show such an error? Are they configured exactly the same way?
Regards,
Kai -
Async/Sync Bridge JMS/File
Hello,
An Async/Sync Bridge with usage of the JMS adapter is described in several blogs. Is there a chance to use the JMS Adapter as a sender system and a File Adapter as the receiver system in such a scenario?
Any suggestions are appreciated.
PeterThis "How To" Wiki should help you with the parameters you will need in the JMS Adapter.
http://wiki.sdn.sap.com/wiki/display/XI/HowTo...ContentconversionmodulewithJ2EEJMS+adapter
You can go to/from files with no problem, and you don't need the Business Process Engine. -
Concurrency for JMS Sender Adapter - Async/Sync Bridge
Hi,
We have implemented a number of Async/Sync bridges using JMS Adapters, and are encountering problems scaling the solution.
Async-Sync Bridge Scenario:
JMS Sender Adapter -> Integration Server -> Sync ABAP Proxy (CRM) -> JMS Receiver Adapter
The bridge is using the Adapter Framework modules: RequestResponseBean & ResponseOnewayBean within the Sender Adapter.
The problem is that concurrency of processing seems to be driven from the number of Java Server Cluster Nodes on the Adapter Engine. The JMS sender adapters do not appear to read from the external messaging system (MQ) in a concurrent fashion. They appear to process in a sequential manner per Adapter:
1. Read from request Message Queue (MQ)
2. Send request for processing (IS)
3. Wait response message
4. Receive response message
5. Write response message to Message Queue (MQ)
6. Read from request Message Queue (MQ)
7. Send request for processing (IS)
8. Wait response message
9....
We need to be able to introduce some means of scaling the solution so that mesages can be read from the MQ request message queue in a concurrent manner. Hopefully we can do this without adding more javer server nodes to the Adapter Engine.
We were looking intot he possibility of tuning AS Java properties that control the number of connections to the Messaging System of the Adapter Engine but this has not provided a solution.
Any information on this topic would be much appreciated.
regards
MurrayAs far as I know, the only wasy for JMS adapter to do concurrent reads from a queue is by having multiple server nodes. This is document in note 856346, point 6.2
Thanks
KK -
Questions async-sync bridge with JMS
Hi all
SAP recommends using JMS rather than BPM to make async-sync bridge or sync-sync bridge. But how to use it in real life?
For example, I have an async RFC function to call a sync SOAP function and the sync response should be passed to a mail receiver. I know how to use BPM to achieve this scenario. But how should we use JMS or can we use JMS to do the same thing?
Another question: If we use SAP own JMS service to make async-sync scenario, we need a sender JMS adapter and a receiver JMS adapter. Are the sender and receiver connected to the same queue in JMS or different queues?
Thanks!
Regards,
HuiHi Hui!!
have a look in these Url's
<b>sync/Sync Bridge in the Sender JMS Adapter</b>
http://help.sap.com/saphelp_nw04/helpdata/en/45/20d251c20a0732e10000000a155369/frameset.htm
You can get some idea on these links also
/people/sriram.vasudevan3/blog/2005/01/11/demonstrating-use-of-synchronous-asynchronous-bridge-to-integrate-synchronous-and-asynchronous-systems-using-ccbpm-in-sap-xi - Use of Synch - Asynch bridge in ccBPM
https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/1403 [original link is broken] [original link is broken] [original link is broken] - Use of Synch - Asynch bridge in ccBPM
Go thru following Weblogs:
1.Walkthrough with BPM:- /people/krishna.moorthyp/blog/2005/06/09/walkthrough-with-bpm
2./people/michal.krawczyk2/blog/2005/06/11/xi-how-to-retrieve-messageid-from-a-bpm
3./people/ravikumar.allampallam/blog/2005/02/17/bridging-the-sync-async-bridge-with-fork-xi
4.https://www.sdn.sap.com/sdn/weblogs.sdn?blog=/pub/wlg/1403 [original link is broken] [original link is broken] [original link is broken]
<b>Sync/Async communication in JMS adapter without BPM</b>
/people/venkataramanan.parameswaran/blog/2007/01/18/syncasync-communication-in-jms-adapter-without-bpm-sp19
this thead also
Async/sync bridge -
Hello all,
we have several scenarios where asynchronous JMS communication must be converted to synchronous RFC call. We use modules in sender JMS adapter to achieve this:
JMS message (async) -> JMS sender channel's async-sync module -> XI (sync) -> sRFC -> XI (sync) -> JMS sender channel's sync-async module -> JMS receiver channel -> JMS message (async)
This works perfectly when everything is OK and even when some problems occur (JMS rollback is performed). But in case of any problem in receiver JMS channel the behavior is arguable: Message is already processed in target system, response is lost forever and request is rolled back to sender queue to be processed again!
The result is that message may be processed many times in the target system and the caller system does even never learn about it!
We have transactional behavior set in our sender JMS channel with QoS Exactly Once. This QoS is not kept in case of receiver channel problem.
SAP states that this is normal behavior of async-sync bridge implemented with modules (no-BPM way). But I think there should be normal asynchronous processing (some queue) used when the message is converted back to asynchronous form. Such message must never be lost in XI.
Has anybody similar experience with async-sync bridging behavior in XI?
Thanks
TomasThis "How To" Wiki should help you with the parameters you will need in the JMS Adapter.
http://wiki.sdn.sap.com/wiki/display/XI/HowTo...ContentconversionmodulewithJ2EEJMS+adapter
You can go to/from files with no problem, and you don't need the Business Process Engine. -
Is there Async-Sync bridge in BPM
Hi ,
I am trying this scenario in ccBPM(PI7.10
JMS(Async)>MDM(Sync)>SAP(Sync)
The reason I cant use it without BPM is that message in JMS is needed in SAP step.I am not sure of messages can be persisted without a ccBPM.
When I give receive step as Async,in next send (Sync call) ,I cant see any Syn Abstract interfaces even though i have declared one.Only Asyn abstract interfaces appear to chose container element as abstract type.
In what way can I specify Aysn-Sync bridge in ccBPM ?
Regards,
Premjitthe async / sync scenarios can be configured via two options;
ref these
/people/arpit.seth/blog/2005/06/27/rfc-scenario-using-bpm--starter-kit
Without BPM
File - RFC - File without a BPM - Possible from SP 19. -
JDBC Async-Sync bridge does not work
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
-->
- <SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SAP="http://sap.com/xi/XI/Message/30">
- <SOAP:Header>
- <SAP:Main xmlns:SAP="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>
- <SAP:ReliableMessaging xmlns:SAP="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>
- <SAP:Error xmlns:SAP="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>
- <SAP:HopList xmlns:SAP="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>
<SAP:Adapter namespace="http://sap.com/xi/XI/System">XIRA</SAP:Adapter>
<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>
<SAP:Adapter namespace="http://sap.com/xi/XI/System">XI</SAP:Adapter>
<SAP:MessageId>F6BC6270-D94A-11DB-B6D0-00188B40F2CF</SAP:MessageId>
<SAP:Info>3.0</SAP:Info>
</SAP:Hop>
</SAP:HopList>
- <SAP:RunTime xmlns:SAP="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>
- <SAP:PerformanceHeader xmlns:SAP="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>
- <SAP:Diagnostic xmlns:SAP="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>
- <SAP:Trace xmlns:SAP="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>
<Trace level="1" type="T">Sender agency external = http://sap.com/xi/XI</Trace>
<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>
<SAP:Manifest xmlns:SAP="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
RafaelHey Rafael,
I've heard of ur problem by Carol Garcia.
I still think the problem was related to the fact that you were commiting the work at JDBC adapter, even though your DB (it was Oracle, right?) supports internal commit. I do aggree that this scenario should work for non-commiting DBs, though. Thus it is a bug, and the note is relevant.
Anyway, did you try to commit the work at DB side? I think it should have resolved your case (even though the bug would still exist, but it would not impact you).
Regards,
Henrique. -
Async-Sync Bridge without BPM for SOAP WS and JDBC
I heard you can now have async-sync communication outside of BPM by utilizing adapter modules?
My scenarios are:
proxy (async) -> SOAP WS (sync)
proxy (async) -> JDBC (sync)
I will like to capture the synchronous responses in XI and perform some basic error handling.
I read h[File - RFC - File without a BPM - Possible from SP 19.|File - RFC - File without a BPM - Possible from SP 19.] and the release notes for 2004s SP19 and there is no reference to JDBC or SOAP.
tiaHi Megha,
Plz do refer the below links u will get an idea:
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/a05b2347-01e7-2910-ceac-c45577e574e0
Sync/Async communication in Adapter without BPM (SP19)
Sync/Async communication in JMS adapter without BPM (SP19)
Async/Sync Communication using JMS adapter without BPM (SP 19)
Async/Sync Communication using JMS adapter without BPM (SP 19)
also try this
Sync/Async communication in JMS adapter without BPM (SP19)
File - RFC - File without a BPM - Possible from SP 19.
Collecting IDocs without using BPM
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/5059f110-0d01-0010-7c8b-fdc983be70c0
Have a look
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/5059f110-0d01-0010-7c8b-fdc983be70c0
HTTP to RFC - A Starter Kit
Sync/Async communication in JMS adapter without BPM (SP19)
https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/1403 [original link is broken] [original link is broken] [original link is broken]
Do refer this thread:
JDBC Async-Sync bridge does not work
Reward if found useful
Regards,
Vinod. -
Async Sync Bridge without BPM (Proxy-Soap-Idoc)
Hi,
I have read some blogs how to do the Async Sync Bridge without BPM for JMS adapters. I have a requirement that I am getting a Async Proxy message to PI and then PI makes Sync Soap call then the result need to send through the Idoc adapter.
Proxy - Soap- Idoc
Here Proxy is a sender so no adapter required in the Config and also Soap is java based adapter and Idoc adapter is a ABAP based so I am not sure this is possible but I just wanted to check with you.
Please let know if this is possible or not?
PI 7.1 with EHP1
Thanks,
Laxman
Edited by: Laxman Molugu on Oct 14, 2010 2:15 PMThe mapping programm can be defined as a user defined function. As sample of mine is "getGoogle()", which is doing some kind of address validation. The input parameter URL[0] contains source address. For that you need to import:
org.apache.commons.logging.*;
org.w3c.dom.*;
javax.xml.parsers.*;
org.xml.sax.SAXException;
org.apache.commons.httpclient.*;
org.apache.commons.httpclient.methods.*;
org.apache.commons.codec.*;
org.apache.log4j.*;
Example code for UDF "getGoogle()" is:
String sUrl = "http://maps.google.de/maps/api/geocode/xml?address=" + URL[0] + "&sensor=false";
HttpClient client = new HttpClient();
GetMethod method = new GetMethod(sUrl);
byte[] responseBody = null;
try {
// int statusCode = client.executeMethod(method);
// byte[] responseBody = method.getResponseBody();
// result.addValue(new String(responseBody));
String sResponse = "initial";
int statusCode = client.executeMethod(method);
responseBody = method.getResponseBody();
ByteArrayInputStream bis = new ByteArrayInputStream(responseBody);
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder db = factory.newDocumentBuilder();
Document doc = db.parse(bis);
doc.getDocumentElement().normalize();
NodeList nodeLst = doc.getElementsByTagName("formatted_address");
Node formAdr = nodeLst.item(0);
NodeList nlFormAdr = formAdr.getChildNodes();
sResponse = ((Node) nlFormAdr.item(0)).getNodeValue();
// Deal with the response.
result.addValue(sResponse);
} catch (Exception e) {
result.addValue(e.toString() + "######## exhrenda - googleResponse:############### URL=" + sUrl+"###########"+new String(responseBody));
} finally {
// Release the connection.
method.releaseConnection(); -
File-SOAP-File Async/Sync Bridge : Null Pointer Exception
Hi All,
I have a File-SOAP-File scenario (Async/Sync Bridge). This scenario was working fine in PI 7.0. However since the time we have upgraded to PI 7.1, this scenario has been failing.
I do receive a response for web service, however the sender File adapter fails after initiating Response bean.
2010-08-04 12:16:02 Information MP: processing local module localejbs/AF_Modules/ResponseOnewayBean
2010-08-04 12:16:02 Information The message was successfully transmitted to endpoint http://vs06cs01.sce.com:8000/sap/xi/engine?type=entry using connection File_http://sap.com/xi/XI/System.
2010-08-04 12:16:02 Information The message status was set to DLVD.
2010-08-04 12:16:02 Error MP: exception caught with cause java.lang.NullPointerException:
2010-08-04 12:16:02 Error File processing failed with java.lang.NullPointerException:
Our Current PI level: 7.10.7.33
Patch Level: 33
Please advice.
XIerHi,
Please go through all the settings for the modules once again - check for any space or other such character present or if some name is not correctly specified.
If you still get the error, then make some change to the channel and re-activate.
Also, make sure you are following the below sequence in the sender file channel-
ModuleName Type ModuleKey
AF_Modules/RequestResponseBean Local Enterprise Bean 1
CallSapAdapter Local Enterprise Bean 2
AF_Modules/ResponseOnewayBean Local Enterprise Bean 3
Parameters
ModuleKey ParameterName ParameterValue
1 passThrough true
3 receiverChannel Receiver File Adapter Name
3 receiverService Receiver Business Service
Hope this helps.
Regards,
Neetesh -
Proxy-Soap-Jdbc Async/Sync Bridge
Hi,
I have proxy soap requestsoap response-jdbc syncronous scenario. i have used async/Sync bridge for that.
I m getting NO_RECEIVER_CASE_ASYNC, No receiver could be determined error.
I have created :
2 Datatype for proxy sender and jdbc receiver and 2 MT
6 Service interface :
one abastract syncronous for proxy sender and jdbc receiver
one abstract asyncronus for proxy sender
one outbound asyncrous for proxy sender
one abstract asyncronus for jdbc receiver
one inbound asysncronus for jdbc receiver
one abstract syncronous for SOAP request and response
2 message mapping for request and response
1 operation mapping using abastract syncronous for proxy sender and jdbc receiver with abstract syncronous for SOAP request and response
BPM steps
two container request and response
receiver- send1- send2
receiver for asyncrous and file request
send1 for syncrouns for request and response
send2 for asyncrouns response.
Activated the IR.
ID Part.
Imported BPM from Design and created two business component one for SOAP receiver and one for proxy sender and jdbc receiver.
Created 3 Reciver Determination as proxy sender to bpm, bpm to soap, bpm to jdbc receiver.
Created 3 IInterface Determination as proxy sender to bpm, bpm to soap, bpm to jdbc receiver.
Created 2 Receiver Agreement as bpm to soap, bpm to jdbc receiver
Activated and run the proxy . in sxmb_moni i m getthing No receiver could be determined error.
I have checked the BPM ,No semantic errors found.
cleared the cache with sxi_cache and full refresh url.
Please suggest me with above details.
Regards
Laxmi Bhushan Jhalike in operation mapping we have abstract syncronous interface which has proxy as sender and jdbc as response
receiver to SOAP reuest and response...
Either of us seem to be confused!
This is your scenario (as per my understanding)
Receive (Proxy_message) --> Transformation --> Send (Mode = Sync...SOAP message) --> Transformation --> Send (mode = Async..JDBC req)
If the requirement is correctly understood by me then:
You should have one ASYNC-Outbound and ASYNC-Abstract interface for your Proxy-side.....proxy to be developed on the ASYNC-Out interface.
You should have a SYNC-ABS and SYNC-IN interface for SOAP req and resp.
You should have one ASYNC-IN and ASYNC-ABS interface for your JDBC side.
Mapping to be developed between PROXY_Async and SOAP_Req_Async & SOAP_Resp_Async and JDBC_Async.
Regards,
Abhishek.
Maybe you are looking for
-
Ive been having this problem ever since i upgraded to ios 7. I went to put new music on my iphone, and i synced my phone went to listen to my music and it either has a cloud next to it, a red square, or is there but clear and will not play. Seems tha
-
Hi experts I hope to query how to print out some notes on PO output? Now we hope for one comany code and purchase org , it need print certain Text. What's the better way to config it ? User don't want to input such notes on po every time, but if we m
-
Synchronize problem for DAQ cards
I am trying to synchronize 4 PCI-6071 DAQ cards through cables using SCNCLK pin. I know the DAQ will send a pulse through that pin. but what is the frequency of the pulse? Also, I would like to know how to avoid the phase delay generated by the cable
-
Limewire library not compatible with version of iTunes
I have the latest update and now the Limewire folder won't open and I get a message saying it is not compatible with the version of iTunes. I also tried to download a song mp3, and it seems to download it, but I can't find it.
-
What audio interfaces for iPad are there that give stereo outputs?
I've had persons tell me that an iPad is not good to use as you would a computer in DJing because it can't do split stereo outputs. I was thinking that perhaps an audio interface that connects through the dock might fix that. Can anyone give me