JMS messge content?

I use golden gate JMS adapter to monitor table changes.
I find the following message in weblogic jms console
<col name='ID1' index='0'>
<before missing='true'/>
<after><![CDATA[2]]></after>
</col>
Why before is missing, how can get the value before update and after update.
Thanks

z.wang wrote:
I use golden gate JMS adapter to monitor table changes.
<before missing='true'/>
<after><![CDATA[2]]></after>
Why before is missing, how can get the value before update and after update.Be sure to "capture" the "before" values in your source "extract" parameter file:
<blockquote>
Extract eora
UserId dbuser, Password dbpass
RecoveryOptions OverwriteMode
ExtTrail dirdat/aa
GetUpdateBefores
Table GG.*;
</blockquote>
And also you must include "befores" in the prm file for the Java user-exit, e.g.,
<blockquote>
Extract javaue
SourceDefs dirdef/aa.def
SetEnv ( GGS_USEREXIT_CONF = "dirprm/javaue.properties" )
GetEnv (PATH)
GetEnv (LD_LIBRARY_PATH)
-- CUserExit ggjava_ue.dll CUSEREXIT PassThru IncludeUpdateBefores
CUserExit libggjava_ue.so CUSEREXIT PassThru IncludeUpdateBefores
GetUpdateBefores
Table GG.*;
</blockquote>
You can always include these paramters to "get" the "before" values in the pump running the Java user-exit. (So, a prm file for a user-exit pump can always be basically the same.) If the prm file is as above, then if the "before" values //are// in the trail, they will be passed to the JVM running the JMS handler. If the "before" values are //not// in the trail, then the pump will still run, but (obviously) the "befores" will be "missing".

Similar Messages

  • JMS like content conversion in Seeburger

    Hi,
    Can you have JMS like content conversion in Seeburger?
    In Seeburger adapter if username/password is used, instead of public private keys, can you use JMS like content conversion in Seeburger. (the one which you specify as module parameters)
    Regards,
    Anirudh.

    Depending on what solutions you have: you may use seeburger bic module to convert from csv to xml or other formats. best thing usually is to follow the 2 step mapping strategy of seeburger where bic is doing a non-xml<->xml conversion and the target (XML-) format is mapped to in the SAP Message Mapping.

  • JMS Adapter Content Conversion

    Hi,
    I am looking for some help on JMS Receiver content conversion, to put a delimited file on MQ series queue.
    I tried the below link, but not able to access the document.
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/xi/3.0/how to use the content conversion module with the xi 3 j2ee jms adapter
    If anyone has a copy of the pdf document on JMS content conversion, could you please email it to me at my id : [email protected]
    Rgds
    R Chandrasekhar

    I had send the required PDF
    Regards
    Arpit seth

  • Ignore record in JMS sender content conversion

    Hi,
    I am using JMS sender adapter with content conversion.
    In the input text file, I have to ignore the first record.
    for this, in Module tab I have given parameter like this:
    Plain2XML -> documentOffset -> 1
    so that it will not read the first record in the text file.
    But it is not working
    Please suggest the right way.
    Regards,
    Anil.

    It should be:
    xml.documentSkipFirstRows
    Regards
    Stefan

  • Complex XML to Plain in JMS adapter "Content conversion module"

    Hi!
    I have read the document on "How To… use the content conversion module with XI3.0 J2EE JMS Adapter", and it says only SimpleXML can be converted in the receiver channel.
    I had hoped for a solution at least as good as in the File/ftp adapter, where complex XML can be transformed to files.
    Are there plans to include complex XML conversion in the JMS adapter?
    I can not use the file adapter as I need to change the file name and destination, and that can not be done by adding own module to its single module.
    Any idea how I can achieve what I want?
    To only way I can find, is to create a file using the file/ftp adapter, and then pick it up again and treat all the lines as the same structure (one row = one xml field). Then output this new xml message to file, using the JMS adapter and add any modules with name and destination determination.
    Appreciate any help!
    Regards,
    Oeystein Emhjellen

    Hello,
    Have you tried to use an XSLT mapping within the IE?
    I have, at one customer site, created a XSLT message mapping which converts the  XML to a fixed length ASCII file format. I than added the XSLT message mapping as a second mapping step on the interface mapping.
    In this case I was able to publish a fairly complex fixed length file format to MQ Series via the JMS adapter.
    /Johan

  • Receiver JMS Adapter Content Conversion issue

    Scenario :
    R/3 -->XI -->MQ(XML2Plain)
    Hi
    We are using Receiver JMS Adapter to send the Message from XI to MQ.
    The XML has to be converted to plain file. And Content conversion is
    being done.
    With the new development, the message type defined consist of 8 fields
    with fixed length. The XML message goes successfully from XI to MQ
    without any content conversion. But once simple content conversion is
    being done for Receiver JMS adapter, even though the message is
    received but it’s empty (without any data records). The adapter
    monitoring everything seems fine and it gives the status that message
    converted to binary and the message is delivered to MQ. Though on
    checking the messages there is no data records.
    Below is my content conversion configuration done in Module tab. Kindly
    revert back what can be the problem as have done exactly the same way
    as described in Content Conversion How to Guide for receiver JMS.
    localejbs/AF_Modules/MessageTransformBean Local Enterprise Bean  XML2Plain
    localejbs/SAP XI JMS Adapter/ConvertMessageToBinary Local Enterprise Bean convert_XI2Bin
    localejbs/SAP XI JMS Adapter/SendBinarytoXIJMSService Local Enterprise Bean exit
    XML2Plain Transform.Class com.sap.aii.messaging.adapter.Conversion
    XML2Plain TransformContentType text/plain;charset=utf-8
    XML2Plain xml.addHeaderLine 0
    XML2Plain xml.addHeaderLine SimpleXML2Plain
    XML2Plain xml.fieldFixedLengths 8,10,10,20,40,40,8,8
    XML2Plain xml.fixedLengthTooShortHandling Cut
    regards.
    santosh.

    Hi,
    check localejbs/SAP XI JMS Adapter/ConvertMessageToBinary Local Enterprise Bean convert_XI2Bin
    this is not CallJMSService.
    And also check the receiver Structure, if it is falt structure its ok, else
    see the below link if it has the complex structure , how to handle..
    See the below links
    /people/alessandro.guarneri/blog/2006/01/04/jms-sender-adapter-handling-too-short-lines
    /people/william.li/blog/2006/11/13/how-to-use-saps-webas-j2ees-jms-queue-in-exchange-infrastructure
    content conversion
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/f02d12a7-0201-0010-5780-8bfc7d12f891
    Regards
    Chilla..

  • JMS Adapter Content conversion using Webspear MQ

    Hi All,
    I have a scenario  where I have to pick a flat file from WebSpear JMS Q.In turn I should convert flat structure into xml structure to parse to the RFC structure(YOTCS_I090_INV_S) and map to the traget structure.
    Below is the Source structure:
    Messages
    ->Message1
    -->YOTCI_I090_INV_SYNC
    --->YOTCS_I090_INV_SYNC
    >item
    >ZDATE
    >TIME
    >TZONE
    >WERKS
    >MATNR
    >LGORT
    >CHARG
    >SOBKZ
    >INSMK
    >LIFNR
    >ZMENGE
    >ZMEINS
    >LOT_NUMBER
    >CODE_DATE
    Source file look's as below:
    YOTCS_I090_INV_S                                                                                4928
    YOTCS_I090_INV_S                                                                                3
    YOTCS_I090_INV_S                                                                                3
    YOTCS_I090_INV_S                                                                                1
    I am doing the file contact conversion as below in JMS Adapter:
    Module Key      ParameterName                           ParameterValue
    Plain2XML        Transform.Class                           com.sap.aii.messaging.adapter.Conversion
    Plain2XML        Transform.ContentType                 text/xml;charset=utf-8
    Plain2XML        xml.conversionType                      StructPlain2XML
    Plain2XML        xml.documentName                      YOTCI_I090_INV_SYNC
    Plain2XML        xml.documentNamespace            urn:sap-com:document:sap:rfc:functions
    Plain2XML        xml.item.fieldFixedLengths           8,8,6,4,18,4,10,1,1,10,13,3,10,8
    Plain2XML        xml.item.fieldNames ZDATE,TIME,TZONE,WERKS,MATNR,LGORT,CHARG,SOBKZ,INSMK,LIFNR,ZMENGE,ZMEINS,LOT_NUMBER,CODE_DATE
    Plain2XML        xml.processFieldNames             fromConfiguration
    Plain2XML        xml.recordsetStructure               item,*
    Can any one help me in configuring the Content conversion? Hope you got my issue.
    Thanks in Advance.
    Best Regards,
    Jose

    Joseph,
    Go thru the Below Link
    http://help.sap.com/saphelp_nw04/helpdata/en/24/4cad3baabd4737bab64d0201bc0c6c/content.htm
    Cheers
    Agasthuri Doss

  • Receiver JMS adapter content conversion

    Hi All,
    Can anyone provide me guidelines on how to do content conversion for the receiver JMS adapter??
    Thx
    Navin

    Hi,
    Based on your structure , you need to configure the JMS CC parameters.
    see the below link
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/f02d12a7-0201-0010-5780-8bfc7d12f891
    regards
    Chilla

  • Limiting JMS messges to Listener Proxy

    Hi all,
    I'm using JMS queue for asynchronous call. The flow goes like
    Client Proxy -> OSB BS (JMS) -> JMS Server -> Listener Proxy
    Client Proxy might send hundreds of messges per second. The Listener Proxy will pick the messges in the same rate. But I need the JMS server to send only 10 messges per second. It has to send all the messages batchwiese as 10 requests per second.
    Can someone help me on how to configure this value in JMS server?
    Thanks,
    Mani

    Thanks Atheek.
    But while going through the ConnectionFactory settings of the JMS queue created (in weblogic server), I came across a setting called "Flow Maximum" in "FlowControl" Tab under "Configuration Tab".
    It has the following explanation:
    The maximum number of messages-per-second allowed for a producer that is experiencing a threshold condition. When a producer is flow controlled it will never be allowed to go faster than the FlowMaximum messages per second.
    If a producer is not currently limiting its flow when a threshold condition is reached, the initial flow limit for that producer is set to FlowMaximum. If a producer is already limiting its flow when a threshold condition is reached (the flow limit is less than FlowMaximum), then the producer will continue at its current flow limit until the next time the flow is evaluated.
    Note: Once a threshold condition has subsided, the producer is not permitted to ignore its flow limit. If its flow limit is less than the FlowMaximum, then the producer must gradually increase its flow to the FlowMaximum each time the flow is evaluated. When the producer finally reaches the FlowMaximum, it can then ignore its flow limit and send without limiting its flow.
    MBean Attribute (Does not apply to application modules) :
    FlowControlParamsBean.FlowMaximum
    Minimum value: 1
    Maximum value: 2147483647
    Will this be of any use to my requirement?
    Regards,
    Mani

  • JMS message content / Which is better?

    hi all,
    i am a beginner with JMS. i have tried some examples, and now i would like to build my own application using JMS.
    Now, i have to face the issue of the message type 2 carry:
    - String
    - Java Object
    Once i read somewhere that in JMS is recommended to use a String message, rather than sending a message that contains an Object.
    Is that true?
    thanx and regards
    marco

    What type of messages you use really depends on your requirements and how time critical your application is. In general, sending large objects as messages can comsume lot of CPU cycles and could slow down your JMS server and clients. If it is an absolute requirement to use object messages, try to keep the message size less than 2-3 Mb. Some JMS vendors do not support message sizes more than 4-5 Mb. But if you are using JMS primarily for messaging, String messages should be fine.
    You could develop your own request-response mechanism using the JMS implementation. This can be achieved by creating temporary topics and then sending out large object messages directly via sockets.

  • JMS Adapter module content conversion

    Hi,
    I'm developing a module for the jms adapter(sender). My requirement is to parse the XI message(text) using some XML parsing api and do some formatting, logic etc and to make the jms adapter create a xml file with the processed information. Jms File Content Conversion does not suit our requirement and thats the reason we are trying this option.
    My understanding is: Access the  payload in the "process" method of the local ejb, apply XML parsing using JDOM etc, make a xml which should be the output of the jms adapter. This xml will be the xml with my user defined tag elements after content conversion. Can i form this xml and assign to the inputModuleData? Will the jms adapter use this string to create the xml and send to IS? Are there any other parameters to be set or processes to be done?
    Also in which sequence should I put my adapter module in communication channel.
    ================================================
    My code snippet:
    public ModuleData process(ModuleContext moduleContext, ModuleData inputModuleData)
            throws ModuleException
              Object obj = null; // Handler to get Principle data
              Message msg = null; // Handler to get Message object
            try
                   obj = inputModuleData.getPrincipalData();
                   msg = (Message)obj;
                   AuditMessageKey amk = new AuditMessageKey(msg.getMessageId(),AuditDirection.INBOUND);
                   Audit.addAuditLogEntry(amk, AuditLogStatus.SUCCESS,"sample: Inside sample Module---efore reading payload");
                   try
                        XMLPayload xmlpayload = msg.getDocument();
                        String messageStr = xmlpayload.getText();
                        String inputStr = null;
                        String tags[] = new String[2];
                        String values[] = new String[2];
                        Audit.addAuditLogEntry(amk, AuditLogStatus.SUCCESS,"sample: Inside sample Module---before content conversion");
    String tagvalue1 = messageStr.substring(messageStr.indexOf("BEGIN+"), messageStr.indexOf("'");
    String tagvalue2 = messageStr.substring(messageStr.indexOf("'"), messageStr.lastindexOf("ENDING");
                             tags[0] = "tag1";
                             tags[1] = "tag2";
                             values[0] = tagvalue1 ;
                             values[1] = tagvalue2 ;
                             Audit.addAuditLogEntry(amk, AuditLogStatus.SUCCESS,"sample: Inside sample Module---after content conversion");
                             Document xmldoc = null;
                             DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
                             DocumentBuilder builder = factory.newDocumentBuilder();
                             DOMImplementation impl = builder.getDOMImplementation();
                             org.w3c.dom.Element e = null;
                             Node n = null;
                             xmldoc = impl.createDocument(null, "MT940", null);
                             org.w3c.dom.Element root = xmldoc.getDocumentElement();
                             for(int i = 0; i < tags.length; i++)
                                  e = xmldoc.createElementNS(null, tags<i>);
                                  n = xmldoc.createTextNode(values<i>);
                                  e.appendChild(n);
                                  root.appendChild(e);
                             Audit.addAuditLogEntry(amk, AuditLogStatus.SUCCESS,"sample: Inside sample Module---before dom creation");
                             DOMSource domSource = new DOMSource(xmldoc);
                             ByteArrayOutputStream myBytes = new ByteArrayOutputStream();
                             Result dest = new StreamResult(myBytes);                         
                             TransformerFactory tf = TransformerFactory.newInstance();
                             Transformer serializer = tf.newTransformer();
                             serializer.setOutputProperty("indent", "yes");
                             serializer.transform(domSource, dest);
                             Audit.addAuditLogEntry(amk, AuditLogStatus.SUCCESS,"sample: Inside sample Module---before setting principal data");
                             byte[] docContent = myBytes.toByteArray();
                             if (docContent != null) {
                             xmlpayload.setContent(docContent);
                             inputModuleData.setPrincipalData(msg);
                             Audit.addAuditLogEntry(amk, AuditLogStatus.SUCCESS,"sample: Inside sample Module---after setting principal data");
                   catch(ArrayIndexOutOfBoundsException e)
                        e.printStackTrace();
                   catch(StringIndexOutOfBoundsException e)
                        e.printStackTrace();
                   catch(TransformerException e)
                        e.printStackTrace();
                   catch(Exception e)
                        e.printStackTrace();
            catch(Exception e)
                ModuleException me = new ModuleException(e);
                throw me;
            return inputModuleData;

    This is for sender channel. The doubt in adapter module is in the process block how will I get the main data being read by the jms adapter from the text file.As I am reading text file from websphere MQ, the content of the text file can be obtained thru xmlpayload.getText() or is there any other way.
    obj = inputModuleData.getPrincipalData();
    msg = (Message)obj;
    XMLPayload xmlpayload = msg.getDocument();
    String messageStr = xmlpayload.getText();
    At present I am using my adapter module before call sap adapter, but before sap adapter there are two other modules(toBinary and to Xmb), so shld I place it before both or after both the modules.
    Thanx in advance
    Rachit

  • Content Conversion in JMS Adapter

    Hi All,
    I am having a scenario JMS - XI - JDBC.
    Now I have to do the content conversion in the incming records.
    The sample incoming data is as follows:-
    <Field1>,<Field2>, ...,<Fieldn>        -->Row1
    {<Field1A>,<Field2A>, ...,<FieldnA>}   -->Row2
    {<Field1A>,<Field2A>, ...,<FieldnA>}   -->Row3
    <Field1B>,<Field2B>, ...,<FieldnB>     -->Row4
    {<Field1C>,<Field2C>, ...,<FieldnC>}   -->Row5
    {<Field1C>,<Field2C>, ...,<FieldnC>}   -->Row6
    {<Field1C>,<Field2C>, ...,<FieldnC>}   -->Row7
    Now at the target, we have 3 oracle tables, in which the data from the Row1 &4 will go to Table 1, Row2&3 --> Table2 and Row5,6 &7 --> Table3.
    The source data type that i m using is of the structure:-
    <TC>
      <GT>
        <Field1>
        <GS>
          <Field1A>
        </GS>
        <Field1B>
        <Field2B>
        <GDS>
          <Field1C>
        </GDS>
      </GT>
    </TC>
    Please help me out in the modules configuraton, how this can be handled.
    Thanks in advance, hope to receive some solution at the earliest.
    Rocky.

    Hi Rocky,
    Please have a look at these threads..
    JMS Adapter: Content Conversion
    JMS Adapter Content Conversion
    JMS Content Converrsion
    Hope these help you!
    cheers,
    Prashanth

  • Content conversion in XI using JMS Sender Adapter.

    Hi,
    I have scenario where i will get fixed length flat file from MQ and i need to create an IDOC.
    The flat file structure is like below.
    HEADER001002003 (Occurs once)
    DELIVERY0000111112222  (Min - 1 and Max - Unbounded)
          Detail33333344444455555  (Min - 1 and Max - Unbounded)
    NOTE -- Detail record is sub level record of DELIVERY.
    I would like to do content conversion in JMS SENDER ADAPTER.
    Did anybody worked on similar scenario?
    I would appreciate ,if anybody provides info on how to do it.
    Regds,
    Jagdish.

    Hi
    Please have a look at these threads..u get an idea abt the content conversion.
    JMS Adapter: Content Conversion
    https://forumsn.sdn.sap.com/click.jspa?searchID=2171243&messageID=3319704
    JMS Adapter Content Conversion
    JMS Content Converrsion
    Hope these help you!

  • MQ Message content conversion using JMS

    I want to use JMS content conversion to convert MQ messages into XML (Idoc). We currently use the R/3 link application to send data to/from MQ to SAP.
    Each MQ message is one continuous stream of data with no carriage returns or line feed between the header and lines. When I set-up the JMS mapping commands, it sees the message as one string of data and does not map out the separate idoc segments.  Can I use JMS file content conversion or will I need some type of JAVA mapping module to handle the mapping for each different type of Idoc segment?  If it;s JAVA, could you provide an example.  Thanks   Jim

    Hi Jim,
    Go through the following link which disscusses the JMS Content Conversion.
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/f02d12a7-0201-0010-5780-8bfc7d12f891
    Amaresh

  • JMS issues when migration from weblogic 9.2 to 10.3.5

    We are facing some issues when migration from weblogic 9.2 to 10.3.5
    In  weblogic 9.2 :_
    BMP Entity EJBs used in our project are read-only in nature using entity cache, below is the configuration details
    <!DOCTYPE weblogic-ejb-jar PUBLIC "-//BEA Systems, Inc.//DTD WebLogic 6.0.0 EJB//EN" "http://www.bea.com/servers/wls600/dtd/weblogic-ejb-jar.dtd">
    <weblogic-ejb-jar>
    <weblogic-enterprise-bean>
    <ejb-name>
    Company
    </ejb-name>
    <entity-descriptor>
    <pool>
    <max-beans-in-free-pool>300</max-beans-in-free-pool>
    <initial-beans-in-free-pool>150</initial-beans-in-free-pool>
    </pool>
    <entity-cache>
    <max-beans-in-cache>3500</max-beans-in-cache>
    <idle-timeout-seconds>100000</idle-timeout-seconds>
    <read-timeout-seconds>0</read-timeout-seconds>
    <concurrency-strategy>ReadOnly</concurrency-strategy>
    </entity-cache>
    Entity beans will get refreshed using the JMS messges. with in the MDB descriptor files(weblogic-ejb-jar.xml) we are using the provider URL directly and XA enabled connection factory is set to false.
    migration to Weblogic 10.3.5_
    With the same configurations MDB are not not getting deployed in weblogic 10 with some exception, so we removed the provider URL from weblogic-ejb-jar.xml and changed the JMS configuration to use foreign JMS and XA enable connection factory is set to true. Now when ever the JMS message is triggered Entity bean is not getting refreshed with the updated values. i.e values are stale.
    Can some one look into this and provide your inputs to resolve this issue.

    I think the Entity bean refresh problem appears to be unrelated to MDBs. The MDB is only responsible for getting the message to your application (which in turn interacts with Entity beans). You might want to try posting your question to an EJB newsgroup.
    Tom

Maybe you are looking for

  • How to make something like this in Edge Animate?

    Hi, I'm hoping to make something like this – https://www.youtube.com/watch?v=OJeDppEHI1g – in Edge Animate but I'm not sure where to start. I'm new to Edge but am keen to explore. Anyone have any feedback on whether: 1. It's possible, and 2. What tec

  • Pdf reports not getting generated

    Hello All, We are having an issue in generating the pdf reports.. we are getting errors as mentioned below REP-0069: Internal error REP-57054: In-process job terminated:Terminated with error: We went through the below mentioned note as well : REP-006

  • Using IN keyword in an sql query in a view criteria

    Hi, I am using jdev 11.1.1.1.0 and defined an lov query/viewobject as select a, b, c from myTable I now need to predefine filtering for lov search functionality and need something like the following select a, B, c from myTable where B in ('X','Y') I

  • Blurry ,black screen

    My old IPAD 1 doesn`t work fine. The screen is black or, is better to say is almost black with little light only. Sometimes I see the apps for a while, but in a pink, strange colours, and then black again. When I connect it to itunes it  work fine, w

  • T440s can't boot into MDT due to missing driver?

    I've downloaded the SCCM drivers from the Lenovo site, added them to my OOB drivers, and updated my deployment share. The machine will go through the motions to boot into the PXE image for me to apply the image, but when I get to the final step to st