6 Replies Latest reply on Sep 11, 2007 8:12 AM by 554596

    XML vs D3L Data Mapping

    67950
      Hi there

      I have an implementation of Oracle InterConnect. On the one side is an Oracle 11.5.10 instance database (database adapter), and on the other a FTP server (FTP adapter).

      The input file I receive from the FTP adapter to load into the Oracle database has a header record, lots of line records, an allowance line and a trailer line. I'm new to XML and D3L, so I'm not too sure how the XML file should be set up, so any assistance would be greatly appreciated - for some reason I think it's something small and easy to fix?

      The basic problem is that it reads the header record, then the line records, but it doesn't move on to the allowance and trailer records - it translates those records as line records (structure), and is not moving on to the allowance and trailer records (structures) - it can't seem to find the end of line records and start of the allowance record.

      Can you please tell me how I can adjust my XML file to successfully pass the records in fields to the integration hub for entry into the Oracle database?

      Please find attached copies of the XML and data files used as well as the error messages from the load

      Thanks for your assistance
      Kobus


      ============ UpdateOrder.xml ==============================

      <?xml version="1.0" encoding="US-ASCII"?>
      <!DOCTYPE message SYSTEM "d3l.dtd">
      <message name="UpdateOrder" type="UpdateOrderType" object="Shipping_Update" header="D3L-UpdateOrder" value="ShippingDetails">
      <unsigned2 id="u2" />
      <struct id="Header220">
      <field name="RecordType"> <termstring endchar="#253" /> </field>
      <field name="Version"> <termstring endchar="#253" /> </field>
      <field name="PrincipalStoreCode"> <termstring endchar="#253" /> </field>
      <field name="SenderOrderNr"> <termstring endchar="#253" /> </field>
      <field name="CustomerOrderNr"> <termstring endchar="#253" /> </field>
      <field name="OrderNr"> <termstring endchar="#253" /> </field>
      <field name="InvoiceNr"> <termstring endchar="#253" /> </field>
      <field name="InvoiceDate">
      <date format="DDMMYYYY"> <termstring endchar="#253" /> </date>
      </field>
      <field name="RepCode"> <termstring endchar="#253" /> </field>
      <field name="DcCode"> <termstring endchar="#253" /> </field>
      <field name="OrderDate">
      <date format="DDMMYYYY"> <termstring endchar="#253" /> </date>
      </field>
      <field name="StatusCode"> <termstring endchar="#253" /> </field>
      <field name="PrincipalXtraData"> <termstring endchar="#253" /> </field>
      <field name="StoreCode"> <termstring endchar="#253" /> </field>
      <field name="StoreGuid"> <termstring endchar="#253" /> </field>
      <field name="AccountCode"> <termstring endchar="#253" /> </field>
      <field name="AccountGuid"> <termstring endchar="#253" /> </field>
      <field name="VatRegNumber"> <termstring endchar="#253" /> </field>
      <field name="AccountVatRegNr"> <termstring endchar="#253" /> </field>
      <field name="PrnCode"> <termstring endchar="#253" /> </field>
      <field name="PrnGuid"> <termstring endchar="\n" /> </field>
      </struct>
      <struct id="Line221">
      <field name="RecordType"> <termstring endchar="#253" /> </field>
      <field name="OrderLineSequenceNr">
      <termstring endchar="#253" />
      </field>
      <field name="PrincipalStockCode"> <termstring endchar="#253" /> </field>
      <field name="QuantitySupplied">
      <termstring endchar="#253" />
      </field>
      <field name="LotNr"> <termstring endchar="#253" /> </field>
      <field name="ExclLineAmount">
      <termstring endchar="#253" />
      </field>
      <field name="InclLineAmount">
      <termstring endchar="#253" />
      </field>
      <field name="VatPercentage">
      <termstring endchar="#253" />
      </field>
      <field name="DealNumber"> <termstring endchar="#253" /> </field>
      <field name="ExpiryDate">
      <date format="DDMMYYYY"> <termstring endchar="#253" /> </date>
      </field>
      <field name="QuantityOrdered">
      <termstring endchar="#253" />
      </field>
      <field name="SinglesPerSaleUnit">
      <termstring endchar="#253" />
      </field>
      <field name="StockCode"> <termstring endchar="#253" /> </field>
      <field name="SaleUnitGuid"> <termstring endchar="#253" /> </field>
      <field name="SaleUnitLevel"> <termstring endchar="#253" /> </field>
      <field name="PrincipalXtraData"> <termstring endchar="\n" /> </field>
      </struct>
      <pfxarray id="Line221Array" length="u2">
      <typeref type="Line221" />
      </pfxarray>
      <struct id="Allowance222">
      <field name="RecordType"> <termstring endchar="#253" /> </field>
      <field name="AllowanceCode"> <termstring endchar="#253" /> </field>
      <field name="PercOfInvoiceSalesAmt">
      <termstring endchar="#253" />
      </field>
      <field name="ExclAmount">
      <termstring endchar="#253" />
      </field>
      <field name="InclAmount">
      <termstring endchar="#253" />
      </field>
      <field name="VatPercentage">
      <termstring endchar="\n" />
      </field>
      </struct>
      <struct id="Trailer229">
      <field name="RecordType"> <termstring endchar="#253" /> </field>
      <field name="NrOfMessageRecords">
      <termstring endchar="\n" />
      </field>
      </struct>
      <struct id="UpdateOrderType">
      <field name="HeaderRecord"> <typeref type="Header220" /> </field>
      <field name="LineRecords"> <typeref type="Line221Array" /> </field>
      <field name="AllowanceRecord"> <typeref type="Allowance222" /> </field>
      <field name="TrailerRecord"> <typeref type="Trailer229" /> </field>
      </struct>
      </message>


      ============ TestData253.txt Test Data ====================

      220ý2ýPC-TB001ýS15300010203ýC15300010203ýW15300010203ýI45100018464ý05-04-2006ýREP001ý01ý05-04-2006ý50ýýSC-TB013ýSGUID10394ýAC-TB012ýAGUID28474ý2006/1039485/05ý2003/9183748/99ýNC-TB007ýNGUID98621
      221ý1ý30-100437-ý3ýL001ý1730.95ý1895.49ý14ýý06-04-2006ý5ý1ý100437ýSGUID19488ýCASEý12345-1234567
      221ý2ý30-100438-ý7ýL002ý1730.95ý1895.49ý14ýý06-04-2006ý15ý6ý100438ýSGUID19489ýCASEý12345-1234568
      222ýAC-02937ý5ý1730.95ý1895.49ý14
      229ý5


      ============ ERROR MESSAGE ================================

      ...
      ...
      Transport logs:
      Conversion of file TestData253.txt to TransportMessage is completed.

      parse: type=<struct id="UpdateOrderType" name="" comment="" ...>, pos=0
      parse: type=<struct id="Header220" name="" comment="" ...>, pos=0
      parse: type=<termstring id="" name="" comment="" ...>, pos=0
      parse: type=<termstring id="" name="" comment="" ...>, pos=4
      parse: type=<termstring id="" name="" comment="" ...>, pos=6
      parse: type=<termstring id="" name="" comment="" ...>, pos=15
      parse: type=<termstring id="" name="" comment="" ...>, pos=28
      parse: type=<termstring id="" name="" comment="" ...>, pos=41
      parse: type=<termstring id="" name="" comment="" ...>, pos=54
      parse: type=<date id="" name="" comment="" ...>, pos=67
      parse: type=<termstring id="" name="" comment="" ...>, pos=67
      parse: type=<termstring id="" name="" comment="" ...>, pos=78
      parse: type=<termstring id="" name="" comment="" ...>, pos=85
      parse: type=<date id="" name="" comment="" ...>, pos=88
      parse: type=<termstring id="" name="" comment="" ...>, pos=88
      parse: type=<termstring id="" name="" comment="" ...>, pos=99
      parse: type=<termstring id="" name="" comment="" ...>, pos=102
      parse: type=<termstring id="" name="" comment="" ...>, pos=103
      parse: type=<termstring id="" name="" comment="" ...>, pos=112
      parse: type=<termstring id="" name="" comment="" ...>, pos=123
      parse: type=<termstring id="" name="" comment="" ...>, pos=132
      parse: type=<termstring id="" name="" comment="" ...>, pos=143
      parse: type=<termstring id="" name="" comment="" ...>, pos=159
      parse: type=<termstring id="" name="" comment="" ...>, pos=175
      parse: type=<termstring id="" name="" comment="" ...>, pos=184
      parse: type=<pfxarray id="Line221Array" name="" comment="" ...>, pos=195
      parse: type=<unsigned2 id="u2" name="" comment="" ...>, pos=195
      parse: type=<struct id="Line221" name="" comment="" ...>, pos=198
      parse: type=<termstring id="" name="" comment="" ...>, pos=198
      parse: type=<termstring id="" name="" comment="" ...>, pos=199
      parse: type=<termstring id="" name="" comment="" ...>, pos=201
      parse: type=<termstring id="" name="" comment="" ...>, pos=212
      parse: type=<termstring id="" name="" comment="" ...>, pos=214
      parse: type=<termstring id="" name="" comment="" ...>, pos=219
      parse: type=<termstring id="" name="" comment="" ...>, pos=227
      parse: type=<termstring id="" name="" comment="" ...>, pos=235
      parse: type=<termstring id="" name="" comment="" ...>, pos=238
      parse: type=<date id="" name="" comment="" ...>, pos=239
      parse: type=<termstring id="" name="" comment="" ...>, pos=239
      parse: type=<termstring id="" name="" comment="" ...>, pos=250
      parse: type=<termstring id="" name="" comment="" ...>, pos=252
      parse: type=<termstring id="" name="" comment="" ...>, pos=254
      parse: type=<termstring id="" name="" comment="" ...>, pos=261
      parse: type=<termstring id="" name="" comment="" ...>, pos=272
      parse: type=<termstring id="" name="" comment="" ...>, pos=277
      parse: type=<struct id="Line221" name="" comment="" ...>, pos=291
      parse: type=<termstring id="" name="" comment="" ...>, pos=291
      parse: type=<termstring id="" name="" comment="" ...>, pos=295
      parse: type=<termstring id="" name="" comment="" ...>, pos=297
      parse: type=<termstring id="" name="" comment="" ...>, pos=308
      parse: type=<termstring id="" name="" comment="" ...>, pos=310
      parse: type=<termstring id="" name="" comment="" ...>, pos=315
      parse: type=<termstring id="" name="" comment="" ...>, pos=323
      parse: type=<termstring id="" name="" comment="" ...>, pos=331
      parse: type=<termstring id="" name="" comment="" ...>, pos=334
      parse: type=<date id="" name="" comment="" ...>, pos=335
      parse: type=<termstring id="" name="" comment="" ...>, pos=335
      parse: type=<termstring id="" name="" comment="" ...>, pos=346
      parse: type=<termstring id="" name="" comment="" ...>, pos=349
      parse: type=<termstring id="" name="" comment="" ...>, pos=351
      parse: type=<termstring id="" name="" comment="" ...>, pos=358
      parse: type=<termstring id="" name="" comment="" ...>, pos=369
      parse: type=<termstring id="" name="" comment="" ...>, pos=374
      parse: type=<struct id="Line221" name="" comment="" ...>, pos=388
      parse: type=<termstring id="" name="" comment="" ...>, pos=388
      parse: type=<termstring id="" name="" comment="" ...>, pos=392
      parse: type=<termstring id="" name="" comment="" ...>, pos=401
      parse: type=<termstring id="" name="" comment="" ...>, pos=403
      parse: type=<termstring id="" name="" comment="" ...>, pos=411
      parse: type=<termstring id="" name="" comment="" ...>, pos=419
      parse: type=<termstring id="" name="" comment="" ...>, pos=426
      Bridge { agent=oracle.oai.agent.client.AgentImpl@b25b9d
      application=MYFTPAPP
      partition=null active=true #d3ls=1 } could not match any of the registered
      D3Ls
      UpdateOrder.xml against the native message - the last D3L listed in
      adapter.ini
      parameter ota.d3ls (UpdateOrder.xml) produced the error:
      oracle.oai.agent.adapter.technology.D3LException: [Thread-5] <termstring
      id=""
      name="" comment="" ...>: premature end of input, did not see closing
      delimiter
      {
      at
      oracle.oai.agent.adapter.technology.D3LUtils.parseString(D3LUtils.java:659)
      at oracle.oai.agent.adapter.technology.D3L.parseit(D3L.java:1184)
      at oracle.oai.agent.adapter.technology.D3L.parseit(D3L.java:1292)
      at oracle.oai.agent.adapter.technology.D3L.parseit(D3L.java:1230)
      at oracle.oai.agent.adapter.technology.D3L.parseit(D3L.java:1292)
      at oracle.oai.agent.adapter.technology.D3L.parse(D3L.java:338)
      at
      oracle.oai.agent.adapter.technology.TechBridge.getD3LMessageData(TechBridge.
      java:1353)
      at
      oracle.oai.agent.adapter.technology.TechBridge.run(TechBridge.java:691)
      at java.lang.Thread.run(Thread.java:534)
      Bridge { agent=oracle.oai.agent.client.AgentImpl@b25b9d
      application=MYFTPAPP
      partition=null active=true #d3ls=1 } encountered the following problem
      while
      receiving a message from external application
      oracle.oai.agent.adapter.technology.D3LException: [Thread-5] [Thread-5]
      <termstring id="" name="" comment="" ...>: premature end of input, did not
      see
      closing delimiter {
      at
      oracle.oai.agent.adapter.technology.TechBridge.getD3LMessageData(TechBridge.
      java:1367)
      at
      oracle.oai.agent.adapter.technology.TechBridge.run(TechBridge.java:691)
      at java.lang.Thread.run(Thread.java:534)
      Transport logs:
      FileReceiver.sendResponse() started ....
      Transport logs:
      [IPT_RecProcessingError] Error encountered while processing message
      received
      ...
      ...
        • 1. Re: XML vs D3L Data Mapping
          NickBroughton
          Kobus,

          I haven't looked at your XML in great detail, but I seem to remember having a problem similar to this in the past.

          As a first stab at getting this working try

          <termstring endchar="\n\r" />

          When outputting a txt file using D3L this is the only way it would force a new line.

          HTH,

          Nick
          • 2. Re: XML vs D3L Data Mapping
            67950
            Hi Nick

            Thanks for the idea, but unfortunately it didn't help.

            How does this whole unsigned2 id="u2" and pfxarray length="u2" thing work? I'm new and novice to XML / D3L. The file will basically have a different number of lines on it each time. How does it know it's done with header, move on to line, done with line, move on to allowance, done with allowance, move on to trailer?

            Oh, and I am not outputting a file, I am reading it. This is basically a file I receive from an FTP server, the FTP adapter then needs to read and convert it and put it into an Oracle database (a table for each record type) via the hub into different tables and columns.

            Thanks
            Kobus
            • 3. Re: XML vs D3L Data Mapping
              NickBroughton
              Hi Kobus,

              Hope I haven't wasted you time, bit of a typo' as you'll see from below, endchar should be "\r\n".

              I appreciate you are reading in a file, but hopefully the structure should follow the same rules. The D3L below puts out an ascii flat file with 5 record types.

              1 File Hdr
              2 Batch Hdr
              3 Detail records
              4 Batch Tlr
              5 File Tlr

              At the end of each physical record we put a specific file defined with a termstring of \r\n.

              Hope the example below helps.

              Nick


              <?xml version="1.0" encoding="UTF-8"?>
              <message name="mnt_costs" type="CostRecord" object="xxoai_out_test">
              <!-- Message Structure -->
              <imparray id="TESTBatchTab">
              <typeref type="TESTBatch"/>
              </imparray>
              <imparray id="TESTTab">
              <typeref type="TESTRecord"/>
              </imparray>
              <struct id="TESTRecord">
              <field name="record_type3">
              <padstring length="1" padchar="0" padstyle="head"/>
              </field>
              <field name="monetary_value">
              <padstring length="15" padchar="0" padstyle="head"/>
              </field>
              <field name="debit_credit">
              <padstring length="1" padchar=" " padstyle="tail"/>
              </field>
              <field name="TLB">
              <padstring length="3" padchar=" " padstyle="tail"/>
              </field>
              <field name="IMG">
              <padstring length="3" padchar=" " padstyle="tail"/>
              </field>
              <field name="TxnSpecInfo">
              <padstring length="59" padchar=" " padstyle="tail"/>
              </field>
              <field name="endrec">
              <termstring endchar="\r\n"/>
              </field>
              </struct>
              <struct id="TESTBatch">
              <field name="record_type2">
              <padstring length="1" padchar="0" padstyle="head"/>
              </field>
              <field name="Hdrfinyear">
              <padstring length="4" padchar="0" padstyle="head"/>
              </field>
              <field name="Hdractperiod">
              <padstring length="2" padchar="0" padstyle="head"/>
              </field>
              <field name="Hdrfeedercode">
              <padstring length="3" padchar=" " padstyle="tail"/>
              </field>
              <field name="Hdrbatchnum">
              <padstring length="6" padchar="0" padstyle="head"/>
              </field>
              <field name="Hdrjournalcat">
              <padstring length="2" padchar=" " padstyle="tail"/>
              </field>
              <field name="Hdrcurrencycode">
              <padstring length="3" padchar=" " padstyle="tail"/>
              </field>
              <field name="Hdrbatchdate">
              <padstring length="8" padchar=" " padstyle="tail"/>
              </field>
              <field name="endhdr">
              <termstring endchar="\r\n"/>
              </field>
              <field name="rectype3">
              <typeref type="TESTTab"/>
              </field>
              <field name="record_type4">
              <padstring length="1" padchar="0" padstyle="head"/>
              </field>
              <field name="Tlrfinyear">
              <padstring length="4" padchar="0" padstyle="head"/>
              </field>
              <field name="Tlractperiod">
              <padstring length="2" padchar="0" padstyle="head"/>
              </field>
              <field name="Tlrsourcecode">
              <padstring length="6" padchar=" " padstyle="tail"/>
              </field>
              <field name="Tlrbatchnum">
              <padstring length="6" padchar="0" padstyle="head"/>
              </field>
              <field name="Tlrcurrencycode">
              <padstring length="3" padchar=" " padstyle="tail"/>
              </field>
              <field name="TlrHashTotal">
              <padstring length="18" padchar="0" padstyle="head"/>
              </field>
              <field name="Recordcount">
              <padstring length="8" padchar="0" padstyle="head"/>
              </field>
              <field name="endtlr">
              <termstring endchar="\r\n"/>
              </field>
              </struct>
              <struct id="CostRecord">
              <field name="record_type1">
              <padstring length="1" padchar="0" padstyle="head"/>
              </field>
              <field name="Hdrfilename">
              <padstring length="12" padchar=" " padstyle="tail"/>
              </field>
              <field name="fileHdrfinyear">
              <padstring length="4" padchar="0" padstyle="head"/>
              </field>
              <field name="fileHdractperiod">
              <padstring length="2" padchar="0" padstyle="head"/>
              </field>
              <field name="fileHdrfeedercode">
              <padstring length="3" padchar=" " padstyle="tail"/>
              </field>
              <field name="endfilehdr">
              <termstring endchar="\r\n"/>
              </field>
              <field name="rectype234">
              <typeref type="TESTBatchTab"/>
              </field>
              <field name="record_type5">
              <padstring length="1" padchar="0" padstyle="head"/>
              </field>
              <field name="fileTlrfinyear">
              <padstring length="4" padchar="0" padstyle="head"/>
              </field>
              <field name="fileTlractperiod">
              <padstring length="2" padchar="0" padstyle="head"/>
              </field>
              <field name="fileTlrfeedercode">
              <padstring length="3" padchar=" " padstyle="tail"/>
              </field>
              <field name="filebatchcount">
              <padstring length="8" padchar="0" padstyle="head"/>
              </field>
              <field name="endfiletlr">
              <termstring endchar="\r\n"/>
              </field>
              </struct>
              </message>
              • 4. Re: XML vs D3L Data Mapping
                67950
                Hi Nick

                Tried that too, but unfortunately it didn't help either.

                That's why I think it might have to do with the whole length and unsigned and array thing. You are using fixed length files, aren't you? That's why the parser knows where to end, right? But I don't have that. I think this thing might be able to struggle to find the end of lines marker / length and going on to the next field. But then again, why is it picking the header up right, but not the lines?

                Just a repost of my question yesterday (do you think it might have anything to do with this?):

                How does this whole unsigned2 id="u2" and pfxarray length="u2" thing work? I'm new and novice to XML / D3L. The file will basically have a different number of lines on it each time. How does it know it's done with header, move on to line, done with line, move on to allowance, done with allowance, move on to trailer?

                Thanks for your assistance Nick - any is welcome!!! I appreciate it very much!!!

                Regards
                Kobus
                • 5. Re: XML vs D3L Data Mapping
                  67950
                  Hi Nick

                  Just another quick point. If I use that exact XML file to do it the other way round (send data from the Oracle database to the FTP Adapter via InterConnect) I get the following output file. Please note the extra characters (with the little block etc) in front of the first line record:

                  ====================================================

                  220ý2ýPC-TB002ýS15300010204ýC15300010204ýW15300010204ýI45100018464ý05/04/2006ýREP001ý01ý05/04/2006ý50ýýSC-TB013ýSGUID10394ýAC-TB012ýAGUID28474ý2006/1039485/05ý2003/9183748/99ýNC-TB007ýNGUID98621
                  221ý1ý30-100437-ý3ýL001ý1730.95ý1895.49ý14ýý06/04/2006ý5ý1ý100437ýSGUID19488ýCASEý12345-1234567
                  221ý2ý30-100438-ý7ýL002ý1730.95ý1895.49ý14ýý06/04/2006ý15ý6ý100438ýSGUID19489ýCASEý12345-1234568
                  222ýAC-02937ý5ý1730.95ý1895.49ý14
                  229ý5

                  ====================================================

                  This also gives me the idea that there's something wrong with the length and array setup in the XML file?

                  Because if I use this exact same output file to load the back the other way round, I get this error (it's the same error whether I use your idea with "\r\n" or only with "\n"):

                  ===================================================

                  Transport logs:
                  Conversion of file File_1144659049257.txt to TransportMessage is completed.

                  parse: type=<struct id="UpdateOrderType" name="" comment="" ...>, pos=0
                  parse: type=<struct id="Header220" name="" comment="" ...>, pos=0
                  parse: type=<termstring id="" name="" comment="" ...>, pos=0
                  parse: type=<termstring id="" name="" comment="" ...>, pos=4
                  parse: type=<termstring id="" name="" comment="" ...>, pos=6
                  parse: type=<termstring id="" name="" comment="" ...>, pos=15
                  parse: type=<termstring id="" name="" comment="" ...>, pos=28
                  parse: type=<termstring id="" name="" comment="" ...>, pos=41
                  parse: type=<termstring id="" name="" comment="" ...>, pos=54
                  parse: type=<date id="" name="" comment="" ...>, pos=67
                  parse: type=<termstring id="" name="" comment="" ...>, pos=67
                  parse: type=<termstring id="" name="" comment="" ...>, pos=78
                  parse: type=<termstring id="" name="" comment="" ...>, pos=85
                  parse: type=<date id="" name="" comment="" ...>, pos=88
                  parse: type=<termstring id="" name="" comment="" ...>, pos=88
                  parse: type=<termstring id="" name="" comment="" ...>, pos=99
                  parse: type=<termstring id="" name="" comment="" ...>, pos=102
                  parse: type=<termstring id="" name="" comment="" ...>, pos=103
                  parse: type=<termstring id="" name="" comment="" ...>, pos=112
                  parse: type=<termstring id="" name="" comment="" ...>, pos=123
                  parse: type=<termstring id="" name="" comment="" ...>, pos=132
                  parse: type=<termstring id="" name="" comment="" ...>, pos=143
                  parse: type=<termstring id="" name="" comment="" ...>, pos=159
                  parse: type=<termstring id="" name="" comment="" ...>, pos=175
                  parse: type=<termstring id="" name="" comment="" ...>, pos=184
                  parse: type=<pfxarray id="Line221Array" name="" comment="" ...>, pos=431
                  parse: type=<unsigned2 id="u2" name="" comment="" ...>, pos=431

                  parse: type=<struct id="UpdateOrderType" name="" comment="" ...>, pos=0
                  parse: type=<struct id="Header220" name="" comment="" ...>, pos=0
                  parse: type=<termstring id="" name="" comment="" ...>, pos=0
                  parse: type=<termstring id="" name="" comment="" ...>, pos=4
                  parse: type=<termstring id="" name="" comment="" ...>, pos=6
                  parse: type=<termstring id="" name="" comment="" ...>, pos=15
                  parse: type=<termstring id="" name="" comment="" ...>, pos=28
                  parse: type=<termstring id="" name="" comment="" ...>, pos=41
                  parse: type=<termstring id="" name="" comment="" ...>, pos=54
                  parse: type=<date id="" name="" comment="" ...>, pos=67
                  parse: type=<termstring id="" name="" comment="" ...>, pos=67
                  parse: type=<termstring id="" name="" comment="" ...>, pos=78
                  parse: type=<termstring id="" name="" comment="" ...>, pos=85
                  parse: type=<date id="" name="" comment="" ...>, pos=88
                  parse: type=<termstring id="" name="" comment="" ...>, pos=88
                  parse: type=<termstring id="" name="" comment="" ...>, pos=99
                  parse: type=<termstring id="" name="" comment="" ...>, pos=102
                  parse: type=<termstring id="" name="" comment="" ...>, pos=103
                  parse: type=<termstring id="" name="" comment="" ...>, pos=112
                  parse: type=<termstring id="" name="" comment="" ...>, pos=123
                  parse: type=<termstring id="" name="" comment="" ...>, pos=132
                  parse: type=<termstring id="" name="" comment="" ...>, pos=143
                  parse: type=<termstring id="" name="" comment="" ...>, pos=159
                  parse: type=<termstring id="" name="" comment="" ...>, pos=175
                  parse: type=<termstring id="" name="" comment="" ...>, pos=184
                  parse: type=<pfxarray id="Line221Array" name="" comment="" ...>, pos=195
                  parse: type=<unsigned2 id="u2" name="" comment="" ...>, pos=195
                  parse: type=<struct id="Line221" name="" comment="" ...>, pos=198
                  parse: type=<termstring id="" name="" comment="" ...>, pos=198
                  parse: type=<termstring id="" name="" comment="" ...>, pos=202
                  parse: type=<termstring id="" name="" comment="" ...>, pos=204
                  parse: type=<termstring id="" name="" comment="" ...>, pos=215
                  parse: type=<termstring id="" name="" comment="" ...>, pos=217
                  parse: type=<termstring id="" name="" comment="" ...>, pos=222
                  parse: type=<termstring id="" name="" comment="" ...>, pos=230
                  parse: type=<termstring id="" name="" comment="" ...>, pos=238
                  parse: type=<termstring id="" name="" comment="" ...>, pos=241
                  parse: type=<date id="" name="" comment="" ...>, pos=242
                  parse: type=<termstring id="" name="" comment="" ...>, pos=242
                  parse: type=<termstring id="" name="" comment="" ...>, pos=253
                  parse: type=<termstring id="" name="" comment="" ...>, pos=255
                  parse: type=<termstring id="" name="" comment="" ...>, pos=257
                  parse: type=<termstring id="" name="" comment="" ...>, pos=264
                  parse: type=<termstring id="" name="" comment="" ...>, pos=275
                  parse: type=<termstring id="" name="" comment="" ...>, pos=280
                  parse: type=<struct id="Line221" name="" comment="" ...>, pos=294
                  parse: type=<termstring id="" name="" comment="" ...>, pos=294
                  parse: type=<termstring id="" name="" comment="" ...>, pos=298
                  parse: type=<termstring id="" name="" comment="" ...>, pos=300
                  parse: type=<termstring id="" name="" comment="" ...>, pos=311
                  parse: type=<termstring id="" name="" comment="" ...>, pos=313
                  parse: type=<termstring id="" name="" comment="" ...>, pos=318
                  parse: type=<termstring id="" name="" comment="" ...>, pos=326
                  parse: type=<termstring id="" name="" comment="" ...>, pos=334
                  parse: type=<termstring id="" name="" comment="" ...>, pos=337
                  parse: type=<date id="" name="" comment="" ...>, pos=338
                  parse: type=<termstring id="" name="" comment="" ...>, pos=338
                  parse: type=<termstring id="" name="" comment="" ...>, pos=349
                  parse: type=<termstring id="" name="" comment="" ...>, pos=352
                  parse: type=<termstring id="" name="" comment="" ...>, pos=354
                  parse: type=<termstring id="" name="" comment="" ...>, pos=361
                  parse: type=<termstring id="" name="" comment="" ...>, pos=372
                  parse: type=<termstring id="" name="" comment="" ...>, pos=377
                  parse: type=<struct id="Allowance222" name="" comment="" ...>, pos=391
                  parse: type=<termstring id="" name="" comment="" ...>, pos=391
                  parse: type=<termstring id="" name="" comment="" ...>, pos=395
                  parse: type=<termstring id="" name="" comment="" ...>, pos=404
                  parse: type=<termstring id="" name="" comment="" ...>, pos=406
                  parse: type=<termstring id="" name="" comment="" ...>, pos=414
                  parse: type=<termstring id="" name="" comment="" ...>, pos=422
                  parse: type=<struct id="Trailer229" name="" comment="" ...>, pos=425
                  parse: type=<termstring id="" name="" comment="" ...>, pos=425
                  parse: type=<termstring id="" name="" comment="" ...>, pos=429

                  Bridge { agent=oracle.oai.agent.client.AgentImpl@acb158 application=MYFTPAPP partition=null active=true #d3ls=2 } successfully matched the D3L file SendOrder.xml with the the native message through trial and error approach
                  Initializing connection to the Repository...
                  Connected to the Repository.
                  Bridge { agent=oracle.oai.agent.client.AgentImpl@acb158 application=MYFTPAPP partition=null active=true #d3ls=2 } encountered the following problem while receiving a message from external application
                  oracle.oai.agent.common.AgentRuntimeException: There is no OAI message for the Object that you are trying to send which satisfies all of the event map conditions.
                  at oracle.oai.agent.client.AgentImpl.createMessageObject(AgentImpl.java:192)
                  at oracle.oai.agent.adapter.technology.TechBridge.run(TechBridge.java:694)
                  at java.lang.Thread.run(Thread.java:534)
                  Transport logs:
                  FileReceiver.sendResponse() started ....

                  ===================================================

                  Any more ideas?

                  Regards
                  Kobus
                  • 6. Re: XML vs D3L Data Mapping
                    554596
                    hi

                    Any one found any solution for the problem?? ..i am also facing similar issue.

                    I observed in last post that. there is an error rised by common view/common data type.Either the corressponding common data type mis matches the d3l or the data structure in common view does not match the d3l.

                    When i faced this issue.I checked my dtd and d3l found some mismatch.Changed dtd and imported again..then it worked.. but i am unable to fix the issue which you are facing.. if you found any solution or information please post in this thread

                    Thanks
                    Arun