Message Handler chain in ALSB2.6

We need to move WLI webservices to ALSB2.6. Webservices used message handler chain which did lots of custom work.
ALSB seems to have java callout but making methods in java call out sysnchronized means performance hit.
Is there anything equivalent to handler chain in ALSB which can be applied to ALL the deployed proxy services?
Thanks.

ALSB is not a web service container, simply an intermediary. Therefore there is nothing equivalent to the JAX-RPC handler chain.
Java callout looks like a reasonable alternative. What is your concern about performance? Why would you synchronize the java callout methods and not the message handler chain?
As a best practice, I would suggest you create a local proxy containing the implementation you want to share across ALSB services. The invocation af a local proxy is optimized and as fast as simply replicating an action across every services.
Gregory Haardt
ALSB Prg. Manager
[email protected]

Similar Messages

  • Web-services.xml for EJB component and SOAP Message Handler Chain

    I have used the following example for my own web service with EJB component and SOAP
    Message Handler Chain:
    http://e-docs.bea.com/wls/docs70/webServices/dd.html#1058208
    I have a deployment error:
    javax.naming.NameNotFoundException: Unable to resolve 'app/ejb/DocumentService.j
    ar#DocumentService/home' Resolved: 'app/ejb' Unresolved:'DocumentService.jar#Doc
    umentService' ; remaining name 'DocumentService.jar#DocumentService/home'
    In attachement is the ear file.
    Is there a problem in web-services.xml?
    Thanks
    [ws_dox_sdi.ear]

    It works. Thanks,
    Ioana
    "Neal Yin" <[email protected]> wrote:
    The error means your EJB is not deployed.
    Adding a EJB module to your application.xml file of the ear should fixe
    it.
    <application>
    <display-name />
    <module>
    <web>
    <web-uri>dox_sdi.war</web-uri>
    </web>
    </module>
    <module>
    <ejb>DocumentService.jar</ejb>
    </module>
    </application>
    "Ioana Meissner" <[email protected]> wrote in message
    news:3cf640cc$[email protected]..
    I have used the following example for my own web service with EJBcomponent and SOAP
    Message Handler Chain:
    http://e-docs.bea.com/wls/docs70/webServices/dd.html#1058208
    I have a deployment error:
    javax.naming.NameNotFoundException: Unable to resolve'app/ejb/DocumentService.j
    ar#DocumentService/home' Resolved: 'app/ejb'Unresolved:'DocumentService.jar#Doc
    umentService' ; remaining name 'DocumentService.jar#DocumentService/home'
    In attachement is the ear file.
    Is there a problem in web-services.xml?
    Thanks

  • Problem using Handler chain with JAXWS

    Hi, I want to use handler chain on a web service and I'm not sure if I understood correctly how it works. In every example I found on the web the handler chain is applied on the client side (the binding is made on the generated client side). So, when I send a request the handler catch an outbound message and when the web service respond, it receive an inbound message. The problem is that I would like to link the handler on the server side, i.e. when the web service receive a request, the handler receives an inbound message and when the WS respond it receives an outbound message.
    Is it possible to do so?? I mean, it makes no sense to link the handler on the client side, since I don't have control on the client side, I produce web services and I want to apply some handlers at this level.
    Any idea??? Or is there something that I didn't understand about handler chains??
    Thanks,
    Korg

    Hello again, I finally found how to do what I wanted to do. The problem came from different examples I found on the web. In my handler.xml file, the structure must be something like:
    <jws:handler-chains xmlns:jws="http://java.sun.com/xml/ns/javaee">
    <jws:handler-chain>
    <jws:handler>
    <jws:handler-class>........</jws:handler-class>
    </jws:handler>
    </jws:handler-chain>
    </jws:handler-chains>
    In many examples, there is an element at the root that is "handler-config" and it doesn't work if I use it this way. Here's an example of a handler.xml file that doesn't work:
    <handler-config>
    <handler-chains>
    <handler-chain>
    <handler>
    <handler-class>............</handler-class>
    </handler>
    </handler-chain>
    </handler-chains>
    </handler-config>
    Korg

  • Handler chain file - validation files

    Hi Everyone,
    I have webservice where I would like to log all SOAP messages. Back in the WebLogic 8.1 days the developer merely specified an annotation to a soap handler like this:
    * @editor-info:link autogen-style="java" autogen="false"
    * @jws:handler operation="foo.utils.soaphandlers.BARHandler"
    During the WebLogic 10.3 upgrade/import process this annotation disappeared. I am thus trying to restore this link to BARHandler. So... following this documentation:
    http://download.oracle.com/docs/cd/E15523_01/web.1111/e13734/handlers.htm#i261458
    I add an annotation:
    @HandlerChain(file="bar_handler.xml")
    and created XML...
    <?xml version="1.0" encoding="UTF-8"?>
    <handler-chains xmlns="http://java.sun.com/xml/ns/javaee">
    <handler-chain>
    <handler>
    <handler-class>foo.utils.soaphandlers.BARHandler</handler-class>
    </handler>
    </handler-chain>
    </handler-chains>
    BARHandler is a modern SOAP handler I know works in another context...
    package foo.utils.soaphandlers;
    ...snip...
    public class BARHandler implements SOAPHandler<SOAPMessageContext>
    ...snip...
    Everything seems to go fairly well, until my <jwsc> task in build.xml blows up with this error (re-spaced for reading):
    build.xml:123: weblogic.wsee.tools.WsBuildException: JWS Validation failed:
    [Handler chain file validation error for file:
    file:/path/src/foo/webservice/bar_handler.xml.
    Element handler-chains@http://java.sun.com/xml/ns/javaee is not a valid
       handler-config@http://www.bea.com/xml/ns/jws document or
         a valid substitution.,
    Handler chain file validation error for file:
    file:/path/src/foo/webservice/bar_handler.xml.
    Element handler-chains@http://java.sun.com/xml/ns/javaee is not a valid
       handler-config@http://www.bea.com/xml/ns/jws document or
         a valid substitution.]
    I worked all day searching for an answer, but no luck so far. I also feel like the gremlins are mocking me! Not only does the validation error repeat twice but the first sentence of JSR 181 specification says all of this is "a simplified programming model". Alas, for me, it hasn't be so "simple" :(
    Thanks a bunch for reading and if you reply I will be very grateful!
    Cheers,
    -Randy

    Hello Randy -
    Please check the following thread.
    Validation Error in the JWS
    Regards,
    Justin.

  • Web-services.xml  handler chain

    Hi All,
    My question is this. I use servicegen ant task to generate the web-services.xml
    file,
    then I open the .ear file using winzip and edit the web-services.xml file to include
    the handler-chain information. I have included the following information :
    <handler-chains>
    <handler-chain name="myChain">
    <handler class-name="com.whatever.core.sec.iec.ejb.IECSOAPHandler">
    <init-params>
    <init-param name="logDirectory" value="C:/temp" />
    <init-param name="severityLevel" value="verbose" />
    </init-params>
    </handler>
    </handler-chain>
    </handler-chains>
    and then I include the following in the operation tag:
    <operation method="batchResponseToPSS([B)" component="ejbcomp0" name="batchResponseToPSS"
    handler-chain="myChain">
    and the also following
          <operation method="onlineResponseToPSS([B)" component="ejbcomp0" name="onlineResponseToPSS"
    handler-chain="myChain">
    Without the handler-chains element my app works fine.
    My whole web-sercvices.xml is located at following location:
    http://newsgroups.bea.com/cgi-bin/dnewsweb?cmd=article&group=weblogic.developer.interest.webservices&item=3921&utag=
    Any insight will be appreciated.
    Thanks
    ---Radhe
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

    I am still not clear what error you are getting.
    1. Are you saying that the handler is not getting
    called?
    2. or you are not able to invoke the web service
    at all?
    If it is 1 check the web-service.xml file of the ear
    deployed. Make sure that your change is not overwritten
    by servicegen.
    If it is 2 then check the URL of the web service in
    web-service.xml file and use a browser to get to
    that URL.
    Regards,
    -manoj
    http://manojc.com
    "Radhe" <[email protected]> wrote in message
    news:[email protected]...
    >
    Manoj,
    Thanks for your reply. When I bring up the WLS, from the messages on theconsole,
    it comes-up pretty cleanly. Theare are no error messages.
    I looked into log files and their is nothing. This has surprised me.
    I worked with some of my friends and they are clueless. I never thoughtto just
    read SOAP Headers, that I have to go through so much pain.
    Also part of my web-services.xml file is generated through servicegen,then I
    crack open the .ear file strip the web-services.xml file, edit it and putit back.
    >
    IF there is some error I would have fixed it.
    Does handler-chains in web-services.xml work, or it is some fiction, BEAmade
    up. I am clueless where I am screwing it up.
    Thanks
    ---Radhe
    "manoj cheenath" <[email protected]> wrote:
    Can you please post the error message?
    This example may also help you:
    http://www.manojc.com/?sample4
    Regards,
    -manoj
    http://manojc.com
    "Radhe" <[email protected]> wrote in message
    news:[email protected]...
    Hi All,
    My question is this. I use servicegen ant task to generate theweb-services.xml
    file,
    then I open the .ear file using winzip and edit the web-services.xmlfile
    to include
    the handler-chain information. I have included the following
    information
    <handler-chains>
    <handler-chain name="myChain">
    <handler
    class-name="com.whatever.core.sec.iec.ejb.IECSOAPHandler">
    <init-params>
    <init-param name="logDirectory" value="C:/temp" />
    <init-param name="severityLevel" value="verbose" />
    </init-params>
    </handler>
    </handler-chain>
    </handler-chains>
    and then I include the following in the operation tag:
    <operation method="batchResponseToPSS([B)" component="ejbcomp0"
    name="batchResponseToPSS"> >> handler-chain="myChain">> >>> >> and the also following> >>> >>       <operation method="onlineResponseToPSS([B)" component="ejbcomp0"> >name="onlineResponseToPSS"> >> handler-chain="myChain">> >>> >> Without the handler-chains element my app works fine.> >>> >> My whole web-sercvices.xml is located at following location:> >>> >>>>http://newsgroups.bea.com/cgi-bin/dnewsweb?cmd=article&group=weblogic.developer.interest.webservices&item=3921&utag=> >>> >>> >> Any insight will be appreciated.> >>> >> Thanks> >> ---Radhe> >> >>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • Getting handler chain

    I'm trying to get the handler chain with jaxb2.1.
    ABCService abcService = new ABCService();
    Iterator<QName> iter = abcService.getPorts();
    while(iter.hasNext()) { // it has only one port
      QName portQName = iter.next();
      QName serviceName = abcService.getServiceName();
      String bindingId = "{http://abc.cas.de}ABCServiceHttpBinding"; // WSDL line: <wsdl:port binding="tns:ABCServiceHttpBinding" name="ABCServiceHttpPort">     
      PortInfo pi = new PortInfoImpl(bindingId, portQName, serviceName);
      HandlerResolver handlerResolver = abcService.getHandlerResolver();
      List<Handler> handlerList = handlerResolver.getHandlerChain(pi);The list is always empty, but a handler is registered with the custom.xml file at the wsimport task. The handler is also called.
    I assume my portname, servicename or bindingId is wrong. Only the bindingID is hard coded by me, the rest is retrieved by my proxy.
    Any idea what's wrong?
    How can i retrieve the bindingId?
    Cheers,
    Ingo

    Hi David,
    If you are using WLS 8.1, you can use
    weblogic.webservice.context.WebServiceContext
    to pass parameters between handler and end
    component.
    A context example here:
    http://manojc.com/?sample30
    WLS 7.0 does not support this. A workaround will
    be to use ThreadLocal. Details here:
    http://java.sun.com/j2se/1.4.1/docs/api/java/lang/ThreadLocal.html
    HTHs,
    -manoj
    http://manojc.com
    "David Selvaraj" <[email protected]> wrote in message
    news:[email protected]..
    Hi,
    I want to write a handler chain in which I want to send some parameters inthe Soap request and pass it to the actual class where the web service
    method exists.
    How can I pass the variable from a handler chain to the actual method.
    Please let me know.
    Thanks,
    David

  • Handler chains in 8.1

    First, I noticed that Weblogic Workshop projects don't have a
    web-services.xml file. Since that's where handler chains are defined, how
    does one create handler chains with Workshop? Is it possible?
    For Weblogic Server, there is a web-services.xml file and this is where you
    define handler chains.
    What if you want a global handler? For example you might want a handler that
    looks at headers for all message traffic coming into or going out of your
    Weblogic Server. Is it possible to define handler chains in a global config
    file for this?
    If there is no way to do the global config file, how about doing it
    programmatically? Is there a way to make the server load your own custom
    class on startup, and have that custom class register a handler chain for
    all inbound and outbound SOAP calls?
    Thanks,

    I put it in the debugger and found that HandlerRegistryImpl fires for both
    client & server side calls. Looks like this will work.
    "manoj cheenath" <[email protected]> wrote in message
    news:[email protected]..
    I think that is also client side. I think the best option for you
    is to contact support and file an enhancement request for
    global handler chain.
    http://manojc.com
    "Michael R. Clements" <[email protected]> wrote in message
    news:[email protected]..
    "manoj cheenath" <[email protected]> wrote in message
    news:3ee0d4d3$[email protected]..
    weblogic.webservice.core.rpc.ServiceFactoryImpl is used
    only on the client side. Subclassing and adding handler may
    work at the client side, but this usecase is not planned or tested.That gave me a different idea. Is HandlerRegistryImpl used for bothclients
    and servers?
    Suppose we override HandlerRegistryImpl to always add our handler to
    every
    chain, even for QNames that don't have chains. Then this single "hook"would
    always fire our handler in both cases, and no server or client code
    would
    even know it exists.

  • Error message handling in BAPI...

    Hi Guys,
    I am working on documentation of a BAPI used SAP insurance module. Now I want to see all the error messages associated/ handled in that BAPI. How can I do that ? Is there a table in data dictionary where I can see error messages handled by a given Function module/ BAPI?
    Any inputs will be highly appreciated.
    Thanks.
    Regards,
    Tushar.

    Hi,
    here´s one possible solution:
      CALL FUNCTION 'MESSAGES_INITIALIZE'.
      LOOP AT it_return_bapi.
        CALL FUNCTION 'MESSAGE_STORE'
             EXPORTING
                  arbgb          = it_return_bapi-id
                  exception_if_not_active = ' '
                  msgty                = it_return_bapi-type
                  msgv1          = it_return_bapi-message_v1
                  msgv2          = it_return_bapi-message_v2
                  msgv3          = it_return_bapi-message_v3
                  msgv4          = it_return_bapi-message_v4
                  txtnr          = it_return_bapi-number
                  zeile          = ' '
             EXCEPTIONS
                  message_type_not_valid  = 1
                  not_active              = 2
                  OTHERS                  = 3.
      ENDLOOP.
      CALL FUNCTION 'MESSAGES_STOP'
           EXCEPTIONS
                a_message = 04
                e_message = 03
                i_message = 02
                w_message = 01.
      IF NOT sy-subrc IS INITIAL.
        CALL FUNCTION 'MESSAGES_SHOW'
             EXPORTING
                  i_use_grid         = 'X'
                  i_amodal_window    = i_amodal_window
             EXCEPTIONS
                  inconsistent_range = 1
                  no_messages        = 2
                  OTHERS             = 3.
      ENDIF.
    ENDFUNCTION.
    Best regards

  • Receiver File adapter - 'Empty Message Handling' option to ignore not worki

    Hi,
      I am trying to create the Files in receiver based on condition.But I am gettiung error in communication channel when there is no payload. Receiver I am usuing FCC and processing tab I selected -'Empty Message Handling' option to ignore .
    one source -> Target 1 (0..1 occurance in signature tab changed, message mapping and operation mapping)
                 and Target 2 (0..1 occurance in signature tab changed)
    and I put the message type level condition. While creating first message If did not create the Message type in my maaping still my Receiver File communication channel is giving error. even thow I my receiver interface occurance is 0..1
    Right now I am in PI7.1 and SP7 is the bug for support pack do I am missing any thing. and do I need to upgrade any nwe patch. appreciate your help.
    Regards,
    Venu.

    Hi,
    here is the my requirment one source -> two target interfacess (0..1)
    If u have 2 target interfaces,then this is not suffice..... u should make it as 0..unbounded both in operation mapping and message mapping.
    But based on ur requirements posted above i guess u have only one inbound interface at a time based on some conditions....
    But,
    <messages>
    <messages1>
    based on condition first message type not created in mapping.
    <messgaes2>
    The error u r getting is because.... u want only one interface in target at a time....
    Then u should not generate Message1 also in the target.
    So avoid mapping to message1 if u want only message2.
    If both message1 and message2 are created in target means... it is triggering for two interfaces.... so avoid one message1 or message2... based on some conditions u have..
    Still nt solved do post...
    Babu

  • Receiver file adapter creates empty files, Empty-Message Handling SP19

    Hello,
    We have just upgraded the system to SP19.
    One of the new features is that it should be possible to determine how XI messages with an empty main payload are to be handled in the receiver file adapter.
    If the parameter Empty-Message Handling is set to 'Ignore' no file should be created if the main payload is empty. In our case an empty file (size 0 kb) is still created even though the main payload is empty and the flag is set to 'Ignore'.
    Has anybody experienced the same problem?
    //  Best regards  Hans

    This should work:
    Use your own adapter module that parses incoming message and checks if it has any record sets in the document. If it does not have any record sets, then set the message to empty and then give this modified message to File receiver.
    For example, see the example code below:
    Module imports..
    Audit log import..
    DOM imports/SAX imports..
    public ModuleData process(ModuleContext moduleContext, ModuleData inputModuleData) throws ModuleException {
              try {
                   // get the XI message from the environment
                   Message msg = (Message) inputModuleData.getPrincipalData();
                   AuditMessageKey amk = new AuditMessageKey(msg.getMessageId(),AuditDirection.INBOUND);
                   Audit.addAuditLogEntry(amk, AuditLogStatus.SUCCESS,"RemoveRootTag: Module called");
                   XMLPayload payLoad = msg.getDocument();
                   Document doc = parseXmlFile(payLoad.getInputStream());
                   if(doc != null){
                        if(!doc.getDocumentElement().hasChildNodes()){
                             Audit.addAuditLogEntry(amk, AuditLogStatus.SUCCESS, "Document is empty!!");
                             payLoad.setContent("".getBytes());
                             msg.setDocument(payLoad);
                   // provide the XI message for returning
                   inputModuleData.setPrincipalData(msg);
                   } catch (Exception e) {
                   // raise exception, when an error occurred
                   ModuleException me = new ModuleException(e);
                   throw me;
                   // return XI message
              return inputModuleData;
         private Document parseXmlFile(InputStream xmlpayload) {
              try {
                   DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
                   factory.setValidating(false);
                   //        Create the builder and parse the file
                   Document doc = factory.newDocumentBuilder().parse(xmlpayload);
                   return doc;
              } catch (SAXException e) {
              } catch (ParserConfigurationException e) {
              } catch(IOException e){
              return null;

  • MESSAGE HANDLER OF CLASS  if_hrpa_message_handler IS NOT WORKING

    WE HAVE WRITTEN THIS CODE AS BELOWS INSIDE BL BADI....THE ERROR MESSAGE IS GETTTING POPULATED IN THE MESSAGE_LIST BUT DOESN'T GET DISPLAYED WHILE CHECKING AND SENDING THE FORM FROM THE FRONT END.
    THE BELOW CODE IS JUST A SAMPLE CODE IN OUT BADI METHOD THERE ARE SEVERAL VALIDATIONS ON THE FAILURE OF EACH OF THEM A ERROR MESSAGE SHOULD GET TRIGERRED FROM THE FRONT END.MESSAGE_HANDLER IS ALREADY AVAILABLE INSIDE INITIAL COMPUTATIONS SO THERE IS NO REASON TO CREATE OBJECT BADI MESSAGE HANDLER
    [[ IF sy-uname = 'PGOSH' OR SY-UNAME EQ 'CGHOSH'.
       DATA badi_message_handler   TYPE REF TO cl_hrpa_message_list.
         DATA message_handler        TYPE REF TO if_hrpa_message_handler.
         DATA is_ok   TYPE boole_d.
        CREATE OBJECT badi_message_handler.
          message_handler = badi_message_handler.
            message-msgid = 'ZHPA'.
            message-msgty = 'E'.
           message-msgno = '010'.
           message-msgv1 = c_none_plans. "'Invalid Plan'(z09).
             CALL METHOD message_handler->add_message
                EXPORTING
                  message = message
                  cause   = space . "message_handler->ERROR . "infotype_specific . "unknown.
                  is_ok = 'X' ."space.
             badi_message_handler->add_messages( message_handler ).
             RAISE error_with_message.
      ENDIF.]]
    PLS PROVIDE YOUR INPUTS REGATRDING THE REASION WHY THE CODE IS NOT GETTING TRIGERRED.
    Edited by: PRIYANKUSH GHOSH on Jun 18, 2010 4:01 PM

    Moderator message - Welcome to SCN.
    Please do not use all caos in your posts. It makes it hard to read..
    Also, Please read Please read "The Forum Rules of Engagement" before posting!  HOT NEWS!! and How to post code in SCN, and some things NOT to do... and [Asking Good Questions in the Forums to get Good Answers|/people/rob.burbank/blog/2010/05/12/asking-good-questions-in-the-forums-to-get-good-answers] before posting again.
    Rob

  • Message handling with multiple lines to display

    We have a requirement to issue an error message during dialog processing (PAI) and I'd like to use standard message handling if possible.  The syntax
    MESSAGE W008(ZTM) DISPLAY LIKE 'I'.
    gives me a dialog box but handles the message as an error hence processing stops and the user returns to the screen.  I want this functionality but with the ability to display several lines in the message pop up box.  I've looked at the function modules POPUP_DISPLAY_MESSAGE but this displays only 1 line and POPUP_TO_CONFIRM which handles multiple lines but doesn't stop processing (unless further code is added to handle the response).  Can someone suggest a standard of way of achieving this requirement or how to handle a response as an error in the subsequent processing after a call to function module POPUP_TO_CONFIRM.

    hi,
    you can handle like this.
    call function 'POPUP_TO_CONFIRM'
            exporting
              titlebar                    = text-000
      DIAGNOSE_OBJECT             = ' '
              text_question               = v_text
              text_button_1               = 'YES'
      ICON_BUTTON_1               = ' '
              text_button_2               = 'NO'
      ICON_BUTTON_2               = ' '
              default_button              = '1'
              display_cancel_button       = 'X'
      USERDEFINED_F1_HELP         = ' '
             start_column                 = 25
             start_row                    = 6
      POPUP_TYPE                  =
      IV_QUICKINFO_BUTTON_1       = ' '
      IV_QUICKINFO_BUTTON_2       = ' '
           importing
             answer                      = v_ans
    TABLES
      PARAMETER                   =
           exceptions
             text_not_found              = 1
             others                      = 2
          if sy-subrc <> 0.
            message id sy-msgid type sy-msgty number sy-msgno
                    with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
          endif.
          case v_ans.
            when '1'.
              leave program.
            when '2'.
              call screen 100.
            when others.
              call screen 100.
          endcase.
      endcase.
    Here : 1 means yes,
              2 means no.
    Regards
    Sandeep Reddy

  • Advantages of Using Queued Message Handler vs. Standard State Machine

    Hello,
    What are the advantages of using a Queued Message Handler?  Also, why are they more powerful than using Standard State Machines?
    Thanks!

    They are really just sort of an extension of a state machine.  The general idea is that you have one loop doing a specific job.  You then use a queue to tell it how/when to do this job.  For instance, I might have a log file loop.  I will send it commands to open a file, write some data, write some more data, and finally close the file.  Each of those commands are coming from the queue.  The beauty with this setup is that anybody that can get a reference to that queue can send the command to that loop.
    So the QMH is "better" than a state machine mostly because of the decoupling of functions.  In a given application, I will have a loop for log file writing, GUI updates, reading of a DAQ, instrumenet communications, server communications, etc.  Trying to do all of that in a single loop state machine is a major pain in the rear end.  Seperating them out makes life so much easier.
    There are only two ways to tell somebody thanks: Kudos and Marked Solutions
    Unofficial Forum Rules and Guidelines

  • Empty-Message Handling is not working in receievr File Adapter

    Hi All,
    I have selected "Empty-Message Handling" = 'Ignore'in Receiver File adapter, but still empty files are creating in target directory.
    Message mapping generates output based on the conditon, if the condition is 'false' mapping will generate empty file (no data is being mapped).
    Why Receiver file adapter is processing empty fiels even i set 'ignore' empty fiels in configuration (ID)?
    Hoe can i manage not to place empty fiels in target directory?
    File type is '.txt'
    Your help would be appreiciated greatly.
    Thanks,
    Rajesh

    Not sure why is it not working. Make sure the channel is activated and cache is refreshed properly. But as a workaround you may use OS script checking for size of message and deleting it or configure a BPM to avoid the file creation. Or else an adapter module as shown
    /people/gowtham.kuchipudi2/blog/2006/01/13/stop-creation-of-an-empty-file-from-file-adapter-using-module
    Regards,
    Prateek

  • Recevier adapter empty message-handling ignore

    Hi all,
    I configured file receiver adapter with file content conversion (comma separated).
    In processing parameters Empty-message handling is set to Ignore.
    Payload that is in message generated from SAP is:
      <?xml version="1.0" encoding="utf-8" ?>
         <mt_ap_invoice xmlns:prx="urn:sap.com:proxy:DES:/1SAI/TAS128FC2C2C3C8E901DC22:700:20 08/06/25" />
    There are no any data that is filling structure (structure main node is defined as 0...unbounded) and still empty file with 0 bytes is created.
    Please can you tell what is wrong in this setup as In case of empty message I don't want that file is generated?
    Regards,
    Nenad

    - open Integration Builder
    - open your file receiver adapter
    - go to tab Processing
    - change Empty Message-Handling to 'Ignore'
    Cheers,
    André

Maybe you are looking for

  • Windows 7 Install - Can't find my hard-drive!

    Hi guys, i'm hoping someone can help. I've recently bought a brand new Toshiba Satellite pro L650 (PSK1KA-02D01E) running Windows 7 After a few weeks, things started to get really slow. Then I woke up one morning to discover it stuck on the first scr

  • Os x yosemites 10.10.3 vs os x mavericks 10.9.5

    Hi mac people, I still on mavericks 10.9.5 and I happy with it, few day ago apple released 10.10.3 with photo, and I think I would like to give it a try, but first I need some real user's opinion, does it faster or slower compare to mavericks? and in

  • Save As PDF file size issues

    I am currently using Word 2008 to produce a club newsletter for email distribution. The Word (.docx) file can be up to 2.4MB in size. When I use Print > Save to PDF the resulting file can be as large as 12MB! I tried using the CUPS-PDF virtual printe

  • RAID card or drive?

    My Mac Pro with Apple RAID card will not boot to external FW800 or original install DVD if drives 2, 3, 4 are installed at the same time in any of the bays (i.e. gray screen, no apple, nothing). If I remove or replace any one, or more, or remove all

  • Connecting Studio Display 17' To iMac

    hey, my mom had a old mac with the silver tower. And she had a studio Display 17" and she just recently got a cinema dispaly and gave the screen to me. I am wondering what adapters i need to connect the Studio Display 17" TO my iMac G5. Thanks.