JMS Receiver - set DCJMSMessageProperty value dynamically from message

Hi,
I have a JMS Receiver where I want to set a DCJMSMessageProperty value to a value from the message contents
For example:
Scenario 1:
Message content field <EANCode>123456</EANCode>
DCJMSMessageProperty6 should be set to 123456 in this instance
Scenario 2:
Message content field <EANCode>99999</EANCode>
DCJMSMessageProperty6 should be set to 99999 in this instance
I know how to set this property to a fixed value using the module DynamicConfigurationBean but do not know how to make this value to use message content.

Hi,
As stated earlier, I need to set DCJMSMessageProperty on the communication channel to a value held in the content not a fixed value.
I will use a UDF to do this now as there are only certain dynamic values you can use using the DynamicConfigurationBean such as message ID, interface name etc. I want to use something in the content so a UDF should be able to do this.
Cheers
Colin.

Similar Messages

  • JMS Property Group ID value sent from PI to MQ

    Hello,
    We have interface scenario where our messages are being sent from PI7.0 to MQ. We have JMS Receiver adapter configured for sending messages to JMS queues on MQ.
    We have set the adapter specific message attributes and setting the Group ID using dynamic configuration. In the additional message properties, we are passing the Group ID to JMSXGroupID of MQ. While monitoring messages in the Adapter engine, we can see the GroupID value populated in the dynamic config properties of message but corresponding Group ID value on MQ side comes as null.
    At adapter engine level, I can see this:
    - <sap:DynamicConfiguration xmlns:sap="http://sap.com/xi/XI/Message/30" SOAP:mustUnderstand="1">
      <sap:Record namespace="http://sap.com/xi/XI/System/File" name="Directory">/usr/sap/iface/xi/batch/mq/za</sap:Record>
      <sap:Record namespace="http://sap.com/xi/XI/System/JMS" name="DCJMSMessageProperty0">ID:5A414E41414D53414331313030383031313030383139</sap:Record>
      <sap:Record namespace="http://sap.com/xi/XI/System/File"
    Can anyone help us on this. Is there any setting or configuration that specifies that the JMS property is propagated to MQ Group ID or is there anything to be checked/done on MQ end?
    Thanks.
    Swapna

    Hello!
    As you told us the problem is not with setting the property.
    The problem is that when the message is sent to the JMS queue, the IBM driver does not set the property.
    This could be because your target client is not JMS compliant, is this?
    Best regards,
    Franklin Ayres

  • How can a remote jms receiver detect loss of connection to Messaging server

    Plan:
    Messaging server (like JbossMQ /SonicMQ) is hosted on one machine.
    A JMS receiver (MDB/core java program) on another machine receives messages from the messaging server.
    Secnario:
    The JMS receiver is now continuously listening or occasionally reading messages from a certain queue of the server using a JMS connection.
    Now the messaging server has this receiver in its list of receivers for that particular queue.
    For some reason the messaging server is down and then restarted.
    The JMS connection of the receiver is now invalid.
    When the messaging servers comes up again its list of receivers is empty.
    Required Solution:
    Can you please help me on how the JMS receiver can detect the above scenario and re-establish the connetion to the messaging server, the next time the server is up.
    Observations:
    When I create a message consumer or queue receiver in a j2se program, and take messages from JbossMQ I have some additional threads running on my JVM. These threads are not directly created by the program and servers only for receiving messages. One of these threads is catching an exception and printing a stack trace when it detects that the connection is lost. This will also result in the closing of JMS connection. The problem is that the exception is not thrown for the programmer to catch and handle it at some level. I also tried ExceptionListener and waited for ping interval. Is there a concept of receiver listening to the periodic heart beat of the server. Please give me guidance, solutions or corrections.
    For comments on this, Thanks in advance

    Hi Leendert,
    do you want to use the JMS API directly? In this case you have to create the connection factory on system X. From system Y, you access the JNDI on system X and look up the connection factory. Since you are accessing the JNDI on system X from outside, you need to set some properties to create the InitialContext:
        Properties env = new Properties();
        env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sap.engine.services.jndi.InitialContextFactoryImpl");
        env.put(Context.PROVIDER_URL, <system X>:<p4 port>); // replace with your settings
        env.put(Context.SECURITY_PRINCIPAL, <user name>); // replace with your settings
        env.put(Context.SECURITY_CREDENTIALS, <password>); // replace with your settings
        naming = new InitialContext(env);
    Hope that helps.
    Regards,
    Sabine

  • Adapter Modules: Set parameter values dynamic?

    Hi everybody,
    is it possible to set parameter values in adapter modules dynamic?
    Thanks Regards
    Mario

    Hi all,
    thanks for your replies.
    My problem is not solved.
    To make it clear,
    I want to set an attachmentName in Mail receiver adapter WITHOUT using the MailPackage.
    This is possible:
    ModuleName:        localejbs/AF_Modules/MessageTransformBean
    ModuleType:        LocalEnterpriseBean
    ModuleKey:        CHAN
    Parametername:        Transform.ContentDisposition
    ParameterValue:        attachment; filename="NameOfAttachment.txt"
    I want to set "NameOfAttachment.txt" dynamically. How can I achieve this? Thanks, regards
    Mario

  • Setting default value read from user session, for an LOV in Query component

    I want to set the default value of a field in VO that participates in a named view criteria and thereby in Query component. That field is configured with an LOV by mean of a view accessor. The values are Y and N and the corresponding display strings obtained from view accessor are true and false respectively.
    I am able to set the default value by setting the value of the criteria item corresponding to that field in view criteria. I am setting the value as either Y or N and I am able to corresponding display string as per the view accessor, on the query component when it is rendered.
    I want to read the defauilt value from the ADF BC user session and set it as default value. I tried setting the values as "adf.userSession.userData.usageFlag". Iam ensuring that the attribute usageFlag is set before the view activity that has the query component is invoked. But this is ending up showing no default value in the Query component when rendered.
    Can any one let me know how to go about with this?

    I made up your table since you didn't provide some example, but I'm sure this will give you the picture:
    SQL> var run_type varchar2(1)
    SQL> exec :run_type := 'A'
    PL/SQL procedure successfully completed.
    SQL> create table my_cycles as select level cycle_id
      2                            ,      level cycle_status
      3                            from   dual connect by level <= 5;
    Table created.
    SQL> select cycle_id
      2  from   my_cycles
      3  where  case
      4           when :run_type = 'D' and cycle_status  = 1 then 1
      5           when :run_type != 'D' and cycle_status  in ( 2, 3 ) then 1
      6         end = 1;
      CYCLE_ID
             2
             3
    2 rows selected.
    SQL> exec :run_type := 'D';
    PL/SQL procedure successfully completed.
    SQL> /
      CYCLE_ID
             1
    1 row selected.
    SQL>

  • How to set two values equal from different recordset?

    I have created a posts recordset and a comments recordset
    the comments table has a post_id to link the comment to a specific post through setting it equal to the id field in the posts table
    so that whenever a post loads the comment whos post_id is equal to the id of the post should load
    I know that if one advanced recordset combining the two tables is created I can set the values to be eqal in the where clause but doing so causes an error in the url parameters of the page.
    Plz help guys and thanks in advance.

    Just do this in advanced recordset
    SELECT *
    FROM posts JOIN comment
    ON posts.post_id = comment.post_id
    WHERE posts.post_id = colname
    Add 1 variable
    name: colname
    type: numeric
    default value: -1
    runtime value: $_GET['pid']
    so in browser URL it will be post_view.php?pid=1

  • JMS receive in JTA doesn't return message

    Hi
    I am using Websphere Application server 6.1 (the one provided with RAD 7.0.0)and WebSphere MQ 6.0 as JMS provider.
    I have a problem receiving message from queue when JTA transaction is active.
    I configured Connection Factory as following:
    Scope cells:ejbhostname:nodes:ejb:servers:server1
    Name MQQueueConnectionFactory
    JNDI Name foo/bar
    Description empty
    Category empty
    Component-managed Authentication Alias none
    Container-managed Authentication Alias none
    Mapping-Configuration Alias DefaultPrincipalMapping
    Queue Manager QMGR
    Host 192.168.2.100
    Port 1415
    Channel CLIENT_CHANNEL
    Transport Type CLIENT
    Model Queue Definition empty
    Client ID empty
    CCSID empty
    Message Retention enabled
    XA Enabled enabled.
    Everything seems to work fine but message reception time-out occurs when i try to synchronous receive message from queue.
    Below is a code of my stateless session EJB method.
    public void receiveMessage()
        throws NamingException,
        JMSException{
              Connection connection = null;
             Session session = null;
             MessageConsumer consumer = null;
             try {
                 logger.log(myLevel, "Getting Initial Context");
                 InitialContext context = new InitialContext();
                 ConnectionFactory factory = (ConnectionFactory) context.lookup("java:comp/env/jms/JMSExampleConnectionFactoryRef");           
                 Destination dest = (Destination) context.lookup("java:comp/env/jms/JMSExampleQueue2Ref");           
                 connection = factory.createConnection();         
                 session = connection.createSession(true, Session.AUTO_ACKNOWLEDGE);         
                 consumer = session.createConsumer(dest);
                 connection.start();
                 Message msg = consumer.receive(1000);
                 if(msg == null){
                      System.out.println(":(");
                 }else{
                      System.out.println("got it " + msg);
             catch (NamingException e) {
                 mySessionCtx.setRollbackOnly();
                 throw e;
             catch (JMSException e) {
                 logger.log(myLevel, e.getLocalizedMessage(), e);
                 mySessionCtx.setRollbackOnly();
                 Exception linked = e.getLinkedException();
                 mySessionCtx.setRollbackOnly();
                 throw e;
             finally {          
                 consumer.close();          
                 session.close();         
                 connection.close();
        }The weird thing is that it only happens (time-out obviously) if i
    i have "XA enabled" checkbox checked (in connection factory settings)AND if i run the method presented above in JTA transaction (setting transaction type for a Ejb to container or set it to Bean and manually start JTA transaction)
    If i do not have "XA enabled" checked the code above work great even inside JTA transaction.
    I tried creating transacted JMS session and not transacted but as far as i know it is ignored in JTA.
    Can someone explain me what is going on ??
    Is it impossible to synchronous receive message in JTA transaction while working with XA connection factory??
    Is it Websphere MQ problem, or sth else ??

    Hi
    I am using Websphere Application server 6.1 (the one provided with RAD 7.0.0)and WebSphere MQ 6.0 as JMS provider.
    I have a problem receiving message from queue when JTA transaction is active.
    I configured Connection Factory as following:
    Scope cells:ejbhostname:nodes:ejb:servers:server1
    Name MQQueueConnectionFactory
    JNDI Name foo/bar
    Description empty
    Category empty
    Component-managed Authentication Alias none
    Container-managed Authentication Alias none
    Mapping-Configuration Alias DefaultPrincipalMapping
    Queue Manager QMGR
    Host 192.168.2.100
    Port 1415
    Channel CLIENT_CHANNEL
    Transport Type CLIENT
    Model Queue Definition empty
    Client ID empty
    CCSID empty
    Message Retention enabled
    XA Enabled enabled.
    Everything seems to work fine but message reception time-out occurs when i try to synchronous receive message from queue.
    Below is a code of my stateless session EJB method.
    public void receiveMessage()
        throws NamingException,
        JMSException{
              Connection connection = null;
             Session session = null;
             MessageConsumer consumer = null;
             try {
                 logger.log(myLevel, "Getting Initial Context");
                 InitialContext context = new InitialContext();
                 ConnectionFactory factory = (ConnectionFactory) context.lookup("java:comp/env/jms/JMSExampleConnectionFactoryRef");           
                 Destination dest = (Destination) context.lookup("java:comp/env/jms/JMSExampleQueue2Ref");           
                 connection = factory.createConnection();         
                 session = connection.createSession(true, Session.AUTO_ACKNOWLEDGE);         
                 consumer = session.createConsumer(dest);
                 connection.start();
                 Message msg = consumer.receive(1000);
                 if(msg == null){
                      System.out.println(":(");
                 }else{
                      System.out.println("got it " + msg);
             catch (NamingException e) {
                 mySessionCtx.setRollbackOnly();
                 throw e;
             catch (JMSException e) {
                 logger.log(myLevel, e.getLocalizedMessage(), e);
                 mySessionCtx.setRollbackOnly();
                 Exception linked = e.getLinkedException();
                 mySessionCtx.setRollbackOnly();
                 throw e;
             finally {          
                 consumer.close();          
                 session.close();         
                 connection.close();
        }The weird thing is that it only happens (time-out obviously) if i
    i have "XA enabled" checkbox checked (in connection factory settings)AND if i run the method presented above in JTA transaction (setting transaction type for a Ejb to container or set it to Bean and manually start JTA transaction)
    If i do not have "XA enabled" checked the code above work great even inside JTA transaction.
    I tried creating transacted JMS session and not transacted but as far as i know it is ignored in JTA.
    Can someone explain me what is going on ??
    Is it impossible to synchronous receive message in JTA transaction while working with XA connection factory??
    Is it Websphere MQ problem, or sth else ??

  • Setting interface name dynamically from client for SOAP Adapter...

    Hi,
    does anyone have experience in setting the sender interface name in the HTTP-SOAP request dynamically? I have followed the instructions in "How To Use the XI 3.0 SOAP Adapter" on page 17 (see also SAP Note 856597) which say:
    "If you select Use Encoded Headers and Use Query String,
    [...]The sender SOAP adapter creates the XI message header according to the
    information provided in the query string. [...] In the sender SOAP adapter, you can use only some of the parameters, but the first
    parameter must always be the version. For example, you send from the Web service client to the following URL: http://<host>:<j2ee-port>/XISOAPAdapter/MessageServlet?channel=<party>:<service>:<channel>&version=3.0&Interface=http%3A
    %2F%2Fsap.com%2Ftest%5ETest
    This will overwrite the default interface and namespace of the sender channel."
    This is exactly what I need! However, what I actually get as a response following this description is a SOAP:Fault with a java.lang.StringIndexOutOfBoundsException: String index out of range: -1.
    Has anyone got this to work properly?
    Thanks in advance.

    Thank you for your input. I am using the following format for the call (with "x" standing for one letter each):
    http://xix.xxx.xx.xxx:5xx00/XISOAPAdapter/MessageServlet?channel=:xx_xxx_xxx_xxxx:xx_xxx_x_SOAP_S&version=3.0&Interface=http%3A%2F%2Fxxxxxxxx.xx%2Fxxxxxx%2Fxxxxxxxxxxxxxxxxxxxxxxxx%5Exxxxxxxxxxxxxxxxxxxxxx
    Anything wrong with that? With unchecked "Use Encoded Headers" and "Use Query String" it works fine (default interface) but as soon as I set these flags I get the SOAP-Fault response.
    We are on XI 3.0 SPS18.

  • JMS Receiver FCC Problem After Upgraded from SP19 to SP22 in XI3.0

    Hello,
    I am facing a problem in my Receiver JMS adapter in FCC just after the upgrading it from SP19 to SP22 in XI 3.0 by our basis consultant. Before that everything was working perfect in DEV.
    I am getting the below mentioned error in CC monitoring.
    > MP: Exception caught with cause com.sap.aii.messaging.adapter.trans.TransformException: Error converting Message: 'java.lang.Exception: Exception in XML Parser (format problem?):'java.lang.NullPointerException''; nested exception caused by: java.lang.Exception: Exception in XML Parser (format problem?):'java.lang.NullPointerException'
    This problem is happening in other scenario too in our DEV system.
    But at the same time since we have not applied any upgrade in QA therefore same scenario is working fine.
    Regards,
    Sarvesh

    Ok Friends...
    I got the solution from SAP.. there was a problem in the SP22 for XI 3.0 which I donloaded from Service Market Place. Now I have applied the correct SP22 to my system and now it is working fine...
    I hope this may help you...
    Regards,
    Sarvesh

  • How to capture values dynamically from output screen

    Hi all,
    I have a new requirement.
    i developed a report which is showing output correctly. Here i have to take a check box for every record in output screen. if i check some of the check boxs then it should allow for further processing.
    i succeeded upto put checkboxes on output screen.
    but i don't know how to capture the values of checkboxes of every record into an internal table. it is necessary to capture into an internal table
    will it be work by using LOOP AT SCREEN statement.
    could you please explain with examples. it is normal report program only.
    i would appreciate an early reply
    Regards
    Prabhakar

    Sample code for usage:
    Internal table for Region and its Description
      data: begin of t_t005u occurs 0,
             LAND1 like t005u-land1,
             BLAND like t005u-bland,
             Bezei like t005u-bezei,
            end of t_t005u.
    Ranges for Country
      ranges: r_land1 for t005u-land1.
    Get the country codes and their descriptions
        refresh r_land1.
        clear r_land1.
      refresh t_dynpfields.
      move 'V_LAND1' to t_dynpfields-fieldname.
      append t_dynpfields.
      clear t_dynpfields.
    Read the value in the Country field on the screen
      call function 'DYNP_VALUES_READ'
        EXPORTING
          dyname               = 'SAPLZ_VENDOR_MASTER'
          dynumb               = '0004'
          translate_to_upper   = 'X'
        TABLES
          dynpfields           = t_dynpfields
        EXCEPTIONS
          invalid_abapworkarea = 01
          invalid_dynprofield  = 02
          invalid_dynproname   = 03
          invalid_dynpronummer = 04
          invalid_request      = 05
          no_fielddescription  = 06
          undefind_error       = 07.
      read table t_dynpfields with key fieldname = 'V_LAND1'.
      if not t_dynpfields-FIELDVALUE is initial.
        r_land1-low = t_dynpfields-FIELDVALUE.
        r_land1-sign = 'I'.
        r_land1-option = 'EQ'.
        append r_land1.
        clear r_land1.
      endif.
    Get the Regions to be displayed as F4 Help
      select land1
             bland
             bezei
        from t005u
        into table t_t005u
       where spras = 'EN'
         and land1 in r_land1.
      if not t_t005u[] is initial..
    Popup to display Valid Regions for the selected country
        CALL FUNCTION 'POPUP_WITH_TABLE_DISPLAY'
          EXPORTING
            ENDPOS_COL   = 60
            ENDPOS_ROW   = 40
            STARTPOS_COL = 40
            STARTPOS_ROW = 20
            TITLETEXT    = 'Region'
          IMPORTING
            CHOISE       = v_choice
          TABLES
            VALUETAB     = t_t005u
          EXCEPTIONS
            BREAK_OFF    = 1
            OTHERS       = 2.
        if sy-subrc = 0.
          if v_activity = 'V'.
            read table t_t005u index v_choice.
            if sy-subrc = 0.
              v_regio = t_t005u-bland.
              move 'V_BEZEI' to t_dynpfields-fieldname.
              move t_t005u-bezei to t_dynpfields-fieldvalue.
              append t_dynpfields.
    Update the Region description on the screen.
              call function 'DYNP_VALUES_UPDATE'
                EXPORTING
                  dyname               = 'SAPLZ_VENDOR_MASTER'
                  dynumb               = '0004'
                TABLES
                  dynpfields           = t_dynpfields
                EXCEPTIONS
                  invalid_abapworkarea = 01
                  invalid_dynprofield  = 02
                  invalid_dynproname   = 03
                  invalid_dynpronummer = 04
                  invalid_request      = 05
                  no_fielddescription  = 06
                  undefind_error       = 07.
            endif.
          endif.
        endif.
      endif.

  • In chart (graph), How to set scale value dynamically(user input scale val.)

    Hi ,
    I am using Crystal Reports XI R2.
    I have specified scale value but user is asking he can decide scale value while running the chart like Y-axis major interval (inclement by) 10, 7, 4, .5, .25 etc.
    How to achieve this please give me suggestions.
    Thanks and regards,
    Manjunath N. Jogin

    I do not think this can be done dynamically,   You could build several sections, each with it's own graph,
    set the scales in each graph, in its section, and then supress sections based on parameter.
    So, you could have one section that is  5,10,15,20  etc.
    and another that is 8, 12, 16, 20  
    depending on what they want.

  • JMS Receiver Adapter to MQ - additional message property error

    Hi,
    I'm trying to add addional message properties to a Receiver JMS message for MQ Server queue. Creating the message in the MQ queue only works when I don't try to
    add additional message properties. As soon as I try to add additional message properties the XI-Monitor says it's OK but there is no message in the queue.
    Our system constellation is a bit odd cause we implemented the JMS/MQ classes of release 5.3 in XI/J2EE.
    Our actual used MQ Server is on release 5.1 due to compatibilty reasons of other productive software.
    Is there a need to use a MQ server of release 5.3 ?
    Has anybody a step by step description for implementing a JMS receiver Adapter for MQ with with additional message property (f.ex. mesType = salesOrder) in the MQ header?
    Thanx a lot in advance
    Hans

    Hi,
    You also might want to look at sap note 856346...for this ..
    2.6) I am connecting to a JMS provider using JNDI mode. How do I add pass an extra name,value property pair while setting up the JNDI initial context?
    Answer: Assuming that your property value is a string, please add the following name, value pair in "JMS Additional properties" table of your channel configuration:
    JNDI.InitialContext.property.X=java.lang.String propertyName, java.lang.String propertyValue
    where X is a number, the LHS part needs to be put in the name column and the RHS part in the value column of the table respectively.
    This note covers frequently asked questions that arise during the installation, configuration or administration of the XI JMS Adapter from the Adapter Framework (AF).
    Other terms
    JMS - Java Message Service
    AF - Adapter Framework
    AE - Adapter Engine
    SP - Service Pack
    Reason and Prerequisites
    This note clarifies the frequently asked questions on the XI/PI JMS adapter for released 3.0, 7.0 and 7.1 in the form of an FAQ. References to external information is provided at the end.
    Solution
    1. Documentation
    1.1) Where do I find the JMS adapter documentation?
    Answer: In the SAP online help. Go to http://help.sap.com and select  SAP Netweaver-> SAP Netweaver 7.1 or SAP NetWeaver 7.0 (2004s) or SAP Netweaver 2004. This opens up SAP Library topic page for that release.
    For releases 3.0 and 7.0:
    Select SAP Netweaver Library -> SAP Netweaver by Key capability-> Process Integration by Key Capability -> SAP Netweaver Exchange Infrastructure -> Runtime -> Connectivity -> Adapters -> JMS Adapter.
    For releases 7.1:
    Select SAP Netweaver Process Integration 7.1 -> SAP Netweaver Process Integration Library -> Function Oriented View > Advanced Adapter Engine.
    In the topic page click on the JMS Adapter link.
    Alternatively, you may simply enter the search string "JMS adapter" and navigate to the documentation page directly from the relevant search results. This is much faster.
    1.2) Which JMS providers are supported?
    Answer: The JMS Adapter supports JMS 1.02b and 1.1. JMS providers that also claim to be compatible with JMS 1.02b or 1.1 can be accessed using the JMS Adapter.
    Furthermore, SAP makes no assertions as to whether a particular JMS provider is tested or can be recommended, because SAP has not set up a certification or testing process.
    2. Functions and architecture
    2.1) Does the JMS Adapter support JMS topics (publish&subscribe)?
    Answer: No. Currently the JMS Adapter works with JMS queues because 100% Exactly Once (In Order) service quality can only be guaranteed with  JMS queues. However, this capability might be planned for introduction at a future release. (no planned time estimate)
    2.2) I have JMS message properties that are of significant. How do I get this data into XI? How do I get this data out of XI?
    Answer:
    A feature generically referred to as XI adapter-specific message properties was introduced in the adapter framework. This allowed additional adapter information to be attached to a XI message which can be used the routing, mapping and BPE. The message properties of different adapters are differentiated by namespaces.
    If you are on XI 3.0 support pack 18 onwards, the JMS adapter allows you to copy JMS message properties into these XI adapter specific message properties (at the sender JMS channel), and to copy the values of XI adapter specific message properties back into JMS message properties (at the receiver JMS channel).
    The JMS adapter currently supports upto 10 JMS message properties to be copied into the XI message properties with the name DCJMSMessageProperty0 to DCJMSMessageProperty9. The configuration details of how to achieve this are explained in the sub-topic pages of the JMS adapter documentation. (See sub topics: "Configuring the Sender JMS adapter", "Configuring the Receiver JMS adapter")
    JMS Message properties can have values belonging to types: boolean, byte, short, int, long, float, double, and String (defined in the specification). These are all normalized to strings when converted to the their respective XI message properties at the sender JMS channel.
    However, in the receiver JMS channel configuration, you can enter specific JMS message property types, such that these normalized XI message properties may be coerced back into their original types (or any compatible JMS message property type) when translating a XI message into a JMS message.
    Transfer of custom JMS Message properties from/to XI adapters-specific message attributes is only supported for JMS compliant messages, i.e. this feature will not work for Websphere MQ in legacy mode.
    Deprecated Information on this feature
    Between support pack 14 to support pack 18, the JMS adapter allowed the allowed you append only up to two JMS string properties to the XI message in the sender channel, which could then be analyzed in XI routing, mapping and BPE. In the JMS receiver channel, the XI adapter-specific message attributes could be read, and up to two JMS string properties could be set. The names of the (now deprecated) XI message properties were DCJMSStringProperty1 and DCJMSStringProperty2.
    Regards
    Ravi Raman

  • Setting value in 'FROM' field while replying the mail

    Hi,
    I am working on one issue, In component CRMCMP_CCS_EML, while replying the email, i need to read the 'TO' field and on the basis of that i need to set the value in 'From' field. How can I recognize that this is a reply and not a new email. Also, could anyone please describe me in detail as i never work on email component before.
    Regards,
    Kamesh Bathla

    This issue has been resolved.
    I got the message mode by using
    message_mode = typed_context->mail->messagemode.
    got all the options for from address using
    lt_from_addresses[] = typed_context->mail->GT_DEFAULT_FROM_ADDRESSES[].
    got the original email address using
    lr_gdc ?= cl_crm_ui_data_context_srv=>get_instance( ).
    CALL METHOD lr_gdc->get_entity
    EXPORTING
    name = c_currinboxitem
    RECEIVING
    value = lr_inbox_item.
    CALL METHOD lr_inbox_item->get_property_as_value
      EXPORTING
        iv_attr_name = 'SOF_RCP_ADDR'
      IMPORTING
        ev_result    = lv_original_mail

  • Issue with JMS Receiver Comm. Channel using Seeburger AttribMapper

    Hello,
    I'm using a JMS_RECEIVER Comm. Channel on which the Seeburger AttribMapper is configured (I need to use the DCJMSCorreleationID dynamic attribute).
    In the module tab, I added a new module:
    Module Name Module Type Module Key
    localejbs/Seeburger/AttribMapper Local Enterprise Bean map
    And I added the following parameter:
    Module Key Parameter Name Parameter Value
    map http://sap.com/xi/XI/System/JMS/DCJMSCorreleationID "TEST"
    When processing a message, I get the following error on the Communication Channel Monitoring:
    Message processing failed. Cause: com.sap.engine.services.jndi.persistent.exceptions.NameNotFoundException: Object not found in lookup of AttribMapper.
    Does anyone has an idea on how to fix this problem?
    Thanks for your help!
    Benoit

    HI,
    Refer the discussion of
    Setting DCJMSCorreleationID in JMS RECEIVER using Seeburger AttribMapper
    Dynamic subject in AS2 receiver
    Thanks
    Swarup

  • Error in JMS receiver channel

    Hi,
    I have a JMS receiver channel which is connected to message queue of TIBCO which is working fine.
    But if I use the same channel after a day it goes into error and after restart of the channel it again works fine.
    Error: Message process failed. Cause: com.sap.engine.interfaces.messaging.api.exception.MessagingException: Unable to write newJMS Message body for message: 343241-......... Connector Exception: ... session ended..
    Thanks,
    Aravind

    Hello Aravind,
    I have made similar experiences while accessing JMS queues.
    Maybe the JMS queue was not available for a short time. So the receiver channel could not connect.
    Best regards,
    André

Maybe you are looking for

  • Exception [EJB - 10008]: Cannot find bean of type [SalesBean] using finder

    I'm trying to call an entity bean froma session bean i get the error :- 7/02/27 14:35:25 javax.ejb.ObjectNotFoundException: Exception [EJB - 10008]: Cannot find bean of type [SalesBean] using finde [findByCustID]. 7/02/27 14:35:25       at oracle.top

  • B2B Server nopt reading from File as Internal dilvery for EDI over AS2

    <MESSAGE> <HEADER> <TSTZ_ORIGINATING>2008-04-08T15:46:55.491+05:30</TSTZ_ORIGINATING> <ORG_ID>oracle.com</ORG_ID> <COMPONENT_ID>B2B</COMPONENT_ID> <HOSTING_CLIENT_ID>beta</HOSTING_CLIENT_ID> <MSG_TYPE TYPE="ERROR"></MSG_TYPE> <MSG_GROUP>B2B</MSG_GROU

  • CAN with [c]FP

    Hello everybody, does anybody know how I can read from CAR Area network with [c]FP 2020. I want to use a modul from softing witch converts CAN 11898 to USB. From there I want to use a USB -> RS232 converter to read the CAN message with the [c]FP seri

  • View archived renumeration data

    Hi friends, Does any one have an idea how to view archived renumeration statements data? We can view the payroll data from PC_PAYRESULT transaction code but customer needs to view archived renumeration statements data? Many Thanks for your time.

  • EIS drill thru

    I'm trying to do a drill-through (Thru) report in EIS and can't get it to show up in the Excel add-in. I've tried all sorts of combinations of intersection levels and columns in the report creation. I have drilled to the bottom of all of the dimensio