ALSB [2.6] Asynchronous Proxies Coupled

Hi,
I'm trying to implement an asynchronous architecture using ALSB. There are 3 proxies: A, B & C.
Proxy A is invoked synchronously by Client and sends back and Acknowledgement. Proxy A routes to Proxy B which is a JMS Proxy. Proxy B routes to Proxy C which is also a JMS Proxy. Proxy C synchronously invokes Client in order to send back a Business Response to the Request sent by the Client to Proxy A.
I have seen that if either Proxy B or C are disabled, then the Client gets a SOAP fault back detailing the same.
Surely this is not the decoupling of Proxies A -> B and B -> C one would expect when a JMS destination lies between them?
Best regards,
Nial Darbey

It sounds like the message is not actually going to JMS but rather straight to Proxy B. Try publishing to a Business Service to put the message in JMS instead.

Similar Messages

  • Proxy to Proxy Asynchronous

    Hi Friends,
      I have a scenario....like...ECC to ECC using Asynchronous Proxies......
    The scenario is......... When a user executes a report program in ECC1,he will get a selection screen to enter company code range and clicks on execute button..Then ECC1 sends this company codes to ECC2. And when the ECC2 system receives this company codes, it reads data from a Z table based this company codes ...And here ECC2 needs to send this data to ECC!
    1.ECC1 System will send list of company code asynchronously to ECC2. (Client Proxy on ECC1)
    2.ECC2 System receives this data(Server Proxy on ECC2) and queries a ZTable based on this company code... The selected data related to these comapny codes need to be sent back to ECC1(Client Proxy on ECC2).
    3.ECC1 System receives this data and inserts in a ZTable(Server Proxy on ECC1).
    The Problem is.....ON ECC2 in server proxy Execute_Asynchronous implementation.... i am calling the Execute_Asynchronous of Clent Proxy, so that it can send data to ECC1...
    But i am getting an Error ---  The exception CX_AI_SYSTEM_FAULT is neither caught nor is it declared in the RAISING clause of "EXECUTE_ASYNCHRONOUS".....  Here the EXECUTE_ASYNCHRONOUS refers to Server Proxy Method...
    Regards,
    Shyam.

    Hi,
    As per my knowledge I will give you small suggestion. If it should be 25 tables then,
    Create a Common data type which contains fields like,
    <Source>
        <Table_Name>
       <Field1>
       <Field2>
    Create a report which fills the filed for each table.
    Create  a file Structure which contains table name.
    Using the variable Substitution create a file name. Processing parameter use Add Time Stamp.
    For more details..
    [http://help.sap.com/saphelp_nw70/helpdata/EN/bc/bb79d6061007419a081e58cbeaaf28/content.htm]
    So this time you need only one interface and one scenario.
    As the same
    Do the reverse flow also.
    In sender file adapter processing mode select archive. Give the  archive directory name.
    Select Processing Sequence by date. So file will poll according to date and time.
    For more details..
    [http://help.sap.com/saphelp_nw70/helpdata/EN/e3/94007075cae04f930cc4c034e411e1/content.htm]
    Regards,
    Prakasu.M

  • Proxies - Queueing and Error handling features ???

    My understanding is that you can have synchronous and asynchronous proxies. Do proxies have a queueing mechanism, and do they provide reprocessing and error handling features ???
    Thanks in advance.

    Hi,
    The error can happen due to application error, may be incorrect data or or wrong type of data.
    Or system error, in case the call to SAP XI is not successful.
    Youc an use fault message for the same.
    If you want to catch these exceptions in SAP itself and send alert then you can either use standard FM for raising alert.
    More here:
    http://help.sap.com/saphelp_nw04/helpdata/en/25/a45c3cff8ca92be10000000a114084/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/a1/082589fc4246f09793039d5fb01a17/content.htm
    First configure CCMS in XI System:-
    /people/sap.user72/blog/2005/11/24/xi-configuring-ccms-monitoring-for-xi-part-i
    For Monitoring in the CCMS:-
    http://help.sap.com/saphelp_nw04/helpdata/en/4d/6272376d3bfa2be10000009b38f8cf/frameset.htm
    Go thro' this link for configuration scenario:-
    /people/aravindh.prasanna/blog/2005/12/23/configuring-scenario-specific-e-mail-alerts-in-xi-ccms-part--1
    Inbound ABAP Proxy Trace and error handling
    Handling Exceptions
    ABAP Server Proxies - Fault Handling
    Exception handling in integration processes
    ABAP Proxy and fault messages
    /people/bhanu.thirumala/blog/2006/02/07/abap-proxy--xml-to-abap-transformation
    regards
    Aashish Sinha
    PS : reward points if helpful

  • Difference between Idoc Adapter and Proxies..

    HI XI Guru's,
    I am new to XI, I wanted to know what is the difference between Idoc adpater and proxies. When and what should be preffered ?
    Warm Regards,
    - Priya R

    idocs which mean - (intermediate documents)  are standard  document formats which sap systems use to store as well send data from one system to another. If this is the format in which data has to received by R/3 then you will use idoc adapter in XI.  idoc adapter can be used to communicate between systems is with  SAP release higher than  3.1.X. Communication using idoc adapter is always asynchronous.
    proxies are available for communication between  SAP systems with version WAS 6.20 and above. They support both synchronous as well as asynchronous modes of communication. Generally when you are looking at developing new application using WAS 6.20 and above then you can design the interfaces for this new applications in SAP XI and generate the required code for these interfaces automatically in SAP systems using transaction code - SPROXY in the case of ABAP Proxy and in the case of Java proxies the code is generated by SAP XI system itself. You only have to implement these interfaces in your new application. So, basically you have to only worry about building the application and the interface part is taken care by XI itself. you can also look at using proxies when data has to be inserted or fetched from custom/standard tables in R/3 using XI.
    ,idoc adapter can be used for commuincation between ABAP stacks only but Proxy can be used for both ABAP as well JAVA stack.

  • SMQ2 - Found a queue with name "*" and all other queues stuck in STOP state

    Hi all,
    We have a problem on the ECC side, on outbound asynchronous proxies. Sometimes a new queue appears on SMQ2 there with name "", and with status "STOP". At this time, all other queues stuck with STOP status... the only way of resetting all those queues to RUNNING state again is to delete the queue named as ""...
    Some of you has any idea how this queue "*" appears there and stop all other queues?
    thanks
    roberti

    Hi Ravi,
    Is not only about one queue stopped... the problem is this queue named ""... with status STOP, all other queues stops too with it. The only way to make things work again is to delete the queue named as ""... the problem is to discover what or who is creating this stupid "*" queue. I think that this is a procedural error on datacenter, but they are saying is not the case... I'm investigating, but if someone else has any idea about I would appreciate
    thanks!
    roberti

  • Enterprise Services and Persistence

    Hi All,
    One of the useful things about IDocs is that their processing involves 2 steps: 1) persisting the IDoc to a database 2) processing the document. Persisting IDocs is very useful since it allows you to edit and resend them.
    I would like to know if SAP asynchronous Enterprise Services can/do provide persistence as well. Knowing this would help us decide between using IDocs or Enterprise Services in future developments.
    Your help is very much appreciated.
    Cheers
    Gerard

    Dear Gerard
    SAP's asynchronous Enterprise Services uses proxy technology which provides persistence in the local integration engine. It is similar to IDocs, whereby the message data is persisted prior to processing by the application logic.
    Additionally, SAP-delivered Enterprise Services uses Forward Error Handling (FEH) framework to enable error handling capabilities like editing and resending. Together with Error Conflict Handler (ECH) and Post-Processing Office (PPO), this enables capabilities similar to IDoc error handling.
    For more info on FEH/ECH/PPO, you can check the below wiki and blog post
    Error and Conflict Handler (ECH) - ABAP Connectivity - SCN Wiki
    Michal's Tips: SXMB_MONI vs FEH/ECH vs AIF
    I've also blogged about development of custom asynchronous proxies utilizing FEH/ECH/PPO. You can check the blog below for an example of how persistence in the integration engine is, as well as the editing and reprocessing features.
    Custom proxy framework with FEH/ECH
    Rgds
    Eng Swee

  • Using alsb for asynchronous messaging

    hello @ all,
    I like to implement a kind of asynchronous messaging.
    It is only possible with the Routing mechanism (see http://e-docs.bea.com/alsb/docs21/consolehelp/proxyactions.html).
    But the Client can not perform other works while the server prepares it response.
    The question is: How can I use asynchronous messaging, when a client send a request and can continue performing other work while the server prepares it response and the server can notify the client when the response is ready?
    The white paper from BEA (http://dev2dev.bea.com/2006/04/AL_Service_Bus_wp.pdf) and other documentation from BEA promise this kind of messaging style.
    I use only http for transform Messages. Accordingly I like to accomplish SOAP communications over http for asynchronous requirements.
    Can anybody help me to accomplish any scenario with the Aqualogic Service Bus in an asynchronously way?
    thanks a lot
    Fabio

    Asynchronous messaging using HTTP is possible.
    Please follow the below link for documentation
    http://e-docs.bea.com/wls/docs91/webserv/advanced.html

  • Asynchronous Coupling with Pools in one Process

    Hi everybody,
    i try to  call a BPM Pool (POOL_B) by another BPM Pool (POOL_A) within the same process but unfortunately without success.
    This are my steps:
    a) for my START Event (Pool_B) i created a new Message Trigger with a Asynchron Service Interface (Wsdl File with two import parameters)
    b) in my Service Activity (Pool_A) i use the created Asynchron Service Interface in order to process Pool_B
    c) in Pool_B i have also created a Notification to get an info Mail after the process was started
    d) i add SAP_BPM_SuperAdmin to SAP_BPM_Service
    e) Consumer and Provider are also be configured
    After starting the process i didn't get an info Mail, but everything in Pool_A seems to work fine.
    If i activate Pool_B (Pool_A becomes inactive) only the WS for Pool_B works.
    Please Help.
    regards,
    Sid
    Edited by: Sid on Sep 26, 2011 6:13 PM

    You need two Physical databases each with its own Connection Pool, within that database will be a single Physical Schema.
    Or you could have a single Database/Connection Pool if it has read access to both schemas.

  • "500 Internal Server Error" response from asynchronous AquaLogic proxy

    Hi,
    We have a proxy service deployed to AquaLogic Service Bus (alsb) v3.0 as a WSDL-based SOAP/HTTP service. The WSDL for the proxy defines a single one-way operation (i.e. no response message is defined), making it an asynchronous operation. The proxy routes the request through a couple business services and then routes the response to a URL specified in the request (in the ReplyTo element of a WS-Addressing header). Essentially it's an asynchronous request-response pattern that accepts requests from a web service and calls back to that web service with the response.
    This proxy service works perfectly when run from the test page in the ALSB console. However, when calling the proxy from the real client web service, AquaLogic returns a "500" response from the HTTP POST. The WSDL and everything look correct, and we can use the proxy's URL to download the WSDL with no problem.
    Is this a known problem?
    Thanks!
    -Eric

    HI,
    I am looking for a solution to the problem (i am using Oracle service Bus_10.3).
    After publishing, I can get the wsdl from the web browser but calling the proxy service directly results:
    com.bea.control.ServiceControlException: Unexpected exception raised invoking getTerminalDistance on control com.demo.control.TerminalLocationServiceControl. Use getCause() to see the root cause.[java.rmi.RemoteException: SOAPFaultException - FaultCode [{http://schemas.xmlsoap.org/soap/envelope/}Server] FaultString [BEA-380001: Internal Server Error] FaultActor [null] Detail [<detail><con:fault xmlns:con="http://www.bea.com/wli/sb/context"><con:errorCode>BEA-380001</con:errorCode><con:reason>Internal Server Error</con:reason><con:location><con:node>RouteNode3</con:node><con:path>response-pipeline</con:path></con:location></con:fault></detail>]; nested exception is:
         weblogic.wsee.jaxrpc.soapfault.WLSOAPFaultException: BEA-380001: Internal Server Error]
         at com.bea.control.servicecontrol.impl.ServiceControlImpl.invoke(ServiceControlImpl.java:696)
         at com.demo.control.TerminalLocationServiceControlBean.getTerminalDistance(TerminalLocationServiceControlBean.java:132)
         at com.demo.control.TerminalLocationImpl.getTerminalDistance(TerminalLocationImpl.java:51)
         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 weblogic.wsee.component.pojo.JavaClassComponent.invoke(JavaClassComponent.java:112)
         at weblogic.wsee.ws.dispatch.server.ComponentHandler.handleRequest(ComponentHandler.java:84)
         at weblogic.wsee.handler.HandlerIterator.handleRequest(HandlerIterator.java:141)
         at weblogic.wsee.ws.dispatch.server.ServerDispatcher.dispatch(ServerDispatcher.java:114)
         at weblogic.wsee.ws.WsSkel.invoke(WsSkel.java:80)
         at weblogic.wsee.server.servlet.SoapProcessor.handlePost(SoapProcessor.java:66)
         at weblogic.wsee.server.servlet.SoapProcessor.process(SoapProcessor.java:44)
         at weblogic.wsee.server.servlet.BaseWSServlet$AuthorizedInvoke.run(BaseWSServlet.java:285)
         at weblogic.wsee.server.servlet.BaseWSServlet.service(BaseWSServlet.java:169)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
         at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
         at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
         at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
         at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3504)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(Unknown Source)
         at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2186)
         at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2092)
         at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1406)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    Caused by: java.rmi.RemoteException: SOAPFaultException - FaultCode [{http://schemas.xmlsoap.org/soap/envelope/}Server] FaultString [BEA-380001: Internal Server Error] FaultActor [null] Detail [<detail><con:fault xmlns:con="http://www.bea.com/wli/sb/context"><con:errorCode>BEA-380001</con:errorCode><con:reason>Internal Server Error</con:reason><con:location><con:node>RouteNode3</con:node><con:path>response-pipeline</con:path></con:location></con:fault></detail>]; nested exception is:
         weblogic.wsee.jaxrpc.soapfault.WLSOAPFaultException: BEA-380001: Internal Server Error
         at weblogic.wsee.jaxrpc.StubImpl.throwRemoteException(StubImpl.java:296)
    I have implemented one testservice and trying to invoke Aqualogic proxy using service control generated through weblogic workshop and getting above error. but if I use test console of Service bus to test this proxy, it runs fine. Also I have configured proxy service message flow where i am using "Replace" action to replce the header from the incoming reuest with the following as my business service expects this security token:
    <soap:Header xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" soap:mustUnderstand="1">
    <wsse:UsernameToken xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="UsernameToken-24512621">
    <wsse:Username>sample:parlayx</wsse:Username>
    <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">1234</wsse:Password>
    </wsse:UsernameToken>
    </wsse:Security>
    </soap:Header>
    please Please share any additional configuration/settings needed.
    thanks
    Narendra

  • Storage issues for Proxies using Final Cut Server

    Hi there,
    we have a fairly high amount of material that is just being put into Final Cut Server to be archived again.
    I dont mind the Xserve being busy to create these proxy files, but they tie up too much space!
    (Maths: 500 GB / 40 h of DVCAM footage result in more than 100 GB proxy files).
    We have those 40 h running though more than once a month plus a whole LOT of material from the last 2 years - and our Xsan is only 7 TB in size.
    Although we could theoretically buy another fiber raid this solution is not really future proof - it just pushes the time when we have to buy the next one a couple of months forward.. on top of that I cannot afford to have expensive, fast fiber channel storage used for proxies of files that are long archived and have only very limited use (and IF we need them, stick in the archive device and done).
    Any ideas how to get rid of proxy files from archived assets?
    I dont really want to take pen and paper and delete the proxies of the files by hand from the bundle.. dont think FCSvr will like this either.
    thanks for any advice
    tobi

    So I'm not sure how your math is adding 100GB of proxy files
    Are you creating VersionS and/or Edit Proxies of everything?
    I ask because using the default Clip Proxy setting gives you file sizes similar to the ones below. These numbers aren't accurate because the default Transcode setting uses Variable Bit Rate (VBR) encoding for both video and audio, but assuming you had a relative constant 800kbps stream here's how large your Proxies.bundle file should be
    800kbps * 30secs = 2.4mb
    800kbps * 60secs = 4.8mb
    800kbps * 60secs * 60min = 280.8mb per hour
    280.8mb per hours * 40= 11.2GB
    Also note, that deleting an asset from FCSvr doesn't delete the proxy files so you could have a lot of proxies left over from a few historical scans.

  • PPro CC change R3D to converted proxies, pause scale is ok, playback scale is 2x as large

    I have a project, edited in R3D raw.
    I need to edit it with a client in a couple of days, so I created proxies with Media Encoder.
    Made the original files offline, connected the proxies (which are the same resolution, but in prores proxy format).
    Everything works well, all in place, when paused, it looks the same, except, when I hit play, the size of the video becomes twice as large. I hit pause, it looks good again.
    I tried changing playback quality, sequence preferences, nothing seems to help.
    Im on a new mac pro 6cores D700 16GB RAM (having the glitches, in 10.9.4 as well).
    Do you know how to fix this?

    First, I agree with Karol, use the AUR so that pacman can do its job.  Second, when you do your make, there is no reason to run it as root (until you do the make install)  For the initial build, it is much safer to not use root; plus all the files in your home directory will continue to belong to use, not to root.
    But, try the AUR.

  • Synchronous-asynchronous PI in WD-ABAP

    Hi
    I am new to PI in WD ABAP . Any pointers regarding synchronous and asynchronous PI would be appreciable .

    In regards to calling proxy objects, anything you can do from standard ABAP coding in normal program can also be done in Web Dynpro ABAP.   Nothing really WDA specific here.  We do have a special service call wizard for proxies, but everything it does can be coded manually as well.
    Here is a video where we sho synchronous and asynchronous processing in PI 7.1 along with how to use these proxies in Web Dynpro ABAP:
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/media/uuid/20eb3174-41ab-2a10-a383-907faf60eed3

  • Doubt abt proxies

    hi this is seshagiri.
    i have doubt abt proxies. when u created ABAP server proxy,objects were generated.
        1. ABAP interface
        2.structure for data type
        3. structure for msg type
    WAT IS THE DIFFERENCE BETWEEN DATATYPE STRUCT AND MSG TYPE STRUCT.
    AND ONE MORE THING IS PROXIES ARE RUNNING ON WHICH ENGINE

    Hi,
    To see the deff between DT and MT
    A message type comprises a data type that describes the structure of a message
    More than one message interface can use the same message type. For example, an asynchronous outbound message interface and an asynchronous inbound message interface can reference the same message type because the request message does not need to be mapped.
    ·        When defining a message mapping you can directly reference message types to map messages from an outbound interface to messages from a receiver interface.
    For technical reasons, a data type is not sufficient to describe the instance of a message. In XML schema, data types are defined as abstract types that are not yet fixed to an element. You can only describe an instance of a message when you have specified a data type as an element type. Therefore, a message type defines the root element of a message.
    A message type does not define the direction of the message exchange
    Just go thru following links-
    http://help.sap.com/saphelp_nw2004s/helpdata/en/a8/bfc6373c8fea43bdb3541535bcbd43/frameset.htm
    http://help.sap.com/saphelp_nw2004s/helpdata/en/a8/bfc6373c8fea43bdb3541535bcbd43/frameset.htm
    Regards
    chilla..

  • Learning Java proxies - landscape question

    Hi guys,
    I could use a little help to learn Java Proxies, I'm just starting to get familiar with Java, I'm coming from the ABAP side.
    First and foremost what do I need from the system point view?
    We have an XI box and using file/FTP/IDoc adapters and also ABAP Proxies, I wrote some Java (mapping)functions, I am familiar with these.
    But for a Java proxy, I would need a separate Java server(?) to run the application on, is this correct?
    Can I use my own PC for this? (for learning purposes), I have NWDS installed on my PC.
    What are the steps to write a small simple Java Proxy.
    I would very much appreciate some help, guys, how do I start?
    Thanks a lot,
    Viktor

    Hi Viktor,
    You can work from your own machine. Becuase in Java Proxy scenarios, you are deploying EAR files in the XI server, and thru XI , you are executing the method written in the Java Application.
    Just check these links-
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/a068cf2f-0401-0010-2aa9-f5ae4b2096f9
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/f272165e-0401-0010-b4a1-e7eb8903501d
    /people/prasad.ulagappan2/blog/2005/06/27/asynchronous-inbound-java-proxy
    /people/rashmi.ramalingam2/blog/2005/06/25/an-illustration-of-java-server-proxy
    Demo ~
    https://www.sdn.sap.com/irj/sdn/docs?rid=/webcontent/uuid/110ff05d-0501-0010-a19d-958247c9f798#jdi [original link is broken]
    Hope this helps,
    Regards,
    Moorthy

  • Best option for Asynchronous method invocation? JMS or Pure Java Thread

    Hi,
    We've a swing based Client application which is supposed to run with a server in J2EE environment. Some process like Search etc are very time consuming. So we are going for asynchronous process.
    Now the question is to find a best option for this. Two possible candidates are
    1. JMS
    2. Java Thread.
    Can anybody suggest me which one is the best option in this context?

    Actually my thought was the issues with code maintainability.Maintainability is different issue, it is much related to OOAD and design pattern you might want to choose to avoid coupling (thus high reusability and maintainability - eg: for future enhancement, etc)..
    public interface SearchService {
         public static class DefaultFactory {
                 public SearchService getInstance() {
                          return HttpSearchService.getInstance();
         public void search (String[] keywords, Observer obs);
    public class HttpSearchService implements SearchService {
         public static HttpSearchService getInstance() {
                ... bla bla bla singleton ...
         public void search(final String [] keywords, final Observer obs) {
                     (new Thread() {
                              public void run() {
                                    .. do http request ...
                                    List result =  ... parse http response ...
                                    obs.update(list);
                     }).start();
    SearchService ss = SearchService.DefaultFactory.getInstance();
    ss.search( new String[] { "get", "me", "my" , "dukes" }, myTableModel );
    ...You can, in future, replace the default factory HttpSearchService with something faster, more appropriate SearchService, without changing many codes.
    rgds,
    Alex

Maybe you are looking for