Reading the xml file in customized table.

Hi Experts ,
I have a requirement to read the xml file in one "z" table . Can anyone let me know the exact steps .
Thank you
Ashutosh

Hi Ashutosh,
1. First read the file in BINARY MODE into an XSTRING.
2. Then use the method create_istream_xstring to create the input stream
3. Then you need to create the document tree and the parser
4. Once your Document tree and your parser are created now can use the document tree to access individual elements.
Some Class interfaces that maybe helpful to you are as follows: if_ixml_node, if_ixml_node_iterator, if_ixml_element....etc
DATA:o_ixml                    TYPE REF TO if_ixml,
           o_streamfactory   TYPE REF TO if_ixml_stream_factory,
           o_istream              TYPE REF TO if_ixml_istream.
           o_parser               TYPE REF TO if_ixml_parser          
           o_document          TYPE REF TO if_ixml_document
o_ixml = cl_ixml=>create( ).
o_istream = o_streamfactory->create_istream_xstring( string = <give the xstring name here>).
o_document = o_ixml->create_document( ).
o_parser = o_ixml->create_parser( stream_factory = o_streamfactory
                                                                       istream = o_istream
                                                                   document = o_document ).
You can make the final code as dynamic as possible to read into an internal table.
Regards
-Joe

Similar Messages

  • Issue in reading the XML file

    Hi Gurus,
    I am dier need of one of the xml issue which I am facing right now.
    I am reading one of the xml file which is like this
    <?xml version="1.0" encoding="UTF-8" ?>
    - <GEBIZ_ORDER xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    - <HEADER>
      <MINISTRY_CODE>RPO</MINISTRY_CODE>
      <DEPARTMENT_CODE>000</DEPARTMENT_CODE>
      <ORDER_CODE>RPO000EPO11000953</ORDER_CODE>
      <EXTERNAL_SYSTEM_CODE>E</EXTERNAL_SYSTEM_CODE>
      <AMENDMENT_NUMBER>0</AMENDMENT_NUMBER>
      <VARIATION_NUMBER>0</VARIATION_NUMBER>
      <DESCRIPTION>Purchase Order for Air tickets for SOT to Korea (from 17th - 26th Sep 2011) off PC(RPO000ECN11000100)for SAS</DESCRIPTION>
      <STATUS>NEW</STATUS>
      <STATUS_DATE>2011-07-08T16:57:39</STATUS_DATE>
      <PAYMENT_TERMS xsi:nil="true" />
      <BILL_TO>One-Stop Centre, 9 Woodlands Avenue 9, S(738964)</BILL_TO>
      <JUSTIFICATION>Please refer to attached approval email.</JUSTIFICATION>
      <CREATE_TIMESTAMP>2011-07-08T16:57:39</CREATE_TIMESTAMP>
      <TERMINATE_REASON xsi:nil="true" />
      <TERMINATE_TIMESTAMP xsi:nil="true" />
      <ORDER_TYPE>1</ORDER_TYPE>
    - <FINANCIAL_SYSTEM>
      <SUB_BUSINESS_UNIT>RPS01</SUB_BUSINESS_UNIT>
      </FINANCIAL_SYSTEM>
    - <SUPPLIER>
      <CODE>200003048E</CODE>
      <NAME>Safe2Travel Pte Ltd</NAME>
      <GST_NUMBER>20-0003048-E</GST_NUMBER>
      <CONTACT_NAME>ONG PEI LENG</CONTACT_NAME>
      <CONTACT_PHONE>68233103</CONTACT_PHONE>
      <CONTACT_EMAIL>[email protected]</CONTACT_EMAIL>
      <CONTACT_FAX>68221636</CONTACT_FAX>
    - <SITES>
    - <SITE>
      <ID>1</ID>
      <NAME>ravel Pte Ltd</NAME>
      <PHONE>68233013</PHONE>
      <PHONE_EXTENSION xsi:nil="true" />
      <FAX>68221636</FAX>
      <EMAIL>[email protected]</EMAIL>
      <ADDRESS_LINE1>10 Eunos Road 8</ADDRESS_LINE1>
      <ADDRESS_LINE2>#08-03 (North Lobby)</ADDRESS_LINE2>
      <ADDRESS_LINE3>Singapore Post Centre</ADDRESS_LINE3>
      <COUNTRY_CODE>SG</COUNTRY_CODE>
      <PROVINCE xsi:nil="true" />
      <STATE xsi:nil="true" />
      <CITY xsi:nil="true" />
      <AREA_CODE xsi:nil="true" />
      <ZIP>408600</ZIP>
      <REGION_CODE xsi:nil="true" />
      </SITE>
    - <SITE>
      <ID>2</ID>
      <NAME>ravel Pte Ltd</NAME>
      <PHONE>62208866</PHONE>
      <PHONE_EXTENSION xsi:nil="true" />
      <FAX>62265578</FAX>
      <EMAIL>[email protected]</EMAIL>
      <ADDRESS_LINE1>3 Lim Teck Kim Road</ADDRESS_LINE1>
      <ADDRESS_LINE2>#02-02</ADDRESS_LINE2>
      <ADDRESS_LINE3>Singapore Technologies Building</ADDRESS_LINE3>
      <COUNTRY_CODE>SG</COUNTRY_CODE>
      <PROVINCE xsi:nil="true" />
      <STATE xsi:nil="true" />
      <CITY xsi:nil="true" />
      <AREA_CODE xsi:nil="true" />
      <ZIP>088934</ZIP>
      <REGION_CODE xsi:nil="true" />
      </SITE>
    - <SITE>
      <ID>3</ID>
      <NAME>Safe2Travel Pte Ltd</NAME>
      <PHONE>62208866</PHONE>
      <PHONE_EXTENSION xsi:nil="true" />
      <FAX>62265578</FAX>
      <EMAIL>[email protected]</EMAIL>
      <ADDRESS_LINE1>3 Lim Teck Kim Road</ADDRESS_LINE1>
      <ADDRESS_LINE2>#02-02</ADDRESS_LINE2>
      <ADDRESS_LINE3>Singapore Technologies Building</ADDRESS_LINE3>
      <COUNTRY_CODE>SG</COUNTRY_CODE>
      <PROVINCE xsi:nil="true" />
      <STATE xsi:nil="true" />
      <CITY xsi:nil="true" />
      <AREA_CODE xsi:nil="true" />
      <ZIP>088934</ZIP>
      <REGION_CODE xsi:nil="true" />
      </SITE>
      </SITES>
      </SUPPLIER>
    - <USER>
      <CODE>JOYCE SOON</CODE>
      <NAME>JOYCE SOON</NAME>
      <ORGANISATION_NAME>Republic Polytechnic</ORGANISATION_NAME>
      </USER>
    - <FUND_COMMIT_AMOUNT>
      <CURRENCY_CODE>SGD</CURRENCY_CODE>
      <CURRENCY_RATE>1</CURRENCY_RATE>
      <CURRENCY_RATE_DATE>1900-01-01T00:00:00</CURRENCY_RATE_DATE>
      <CURRENCY_RATE_TYPE>BOOK</CURRENCY_RATE_TYPE>
      <CURRENCY_AMOUNT>21551.4</CURRENCY_AMOUNT>
      </FUND_COMMIT_AMOUNT>
    - <PERIOD_CONTRACT>
      <CODE>RPO000ECN11000100</CODE>
      <AGENCY_CODE>RPO000</AGENCY_CODE>
      <ADMIN_FEE_SGD_AMOUNT>0</ADMIN_FEE_SGD_AMOUNT>
      </PERIOD_CONTRACT>
    - <BUYER>
      <ORGANISATION_CODE>1</ORGANISATION_CODE>
      <ORGANISATION_NAME>Republic Polytechnic</ORGANISATION_NAME>
      <NAME>Sally Ang</NAME>
      <PHONE>31001711</PHONE>
      <FAX>64151310</FAX>
      <EMAIL>[email protected]</EMAIL>
      </BUYER>
      <APPROVING_OFFICERS />
      </HEADER>
    - <ITEMS>
    - <ITEM>
      <LINE_NUMBER>1</LINE_NUMBER>
      <STATUS>NEW</STATUS>
      <STATUS_DATE>2011-07-08T16:57:39</STATUS_DATE>
      <DESCRIPTION>Return Air Ticket including Airport Taxes and Fuel Surcharges (2 staff and 24 students)</DESCRIPTION>
      <UNIT_OF_MEASURE>PAX</UNIT_OF_MEASURE>
      <QUANTITY>26</QUANTITY>
      <LINE_TYPE>SERVICES</LINE_TYPE>
      <UNIT_PRICE>828.9</UNIT_PRICE>
      <PRICE_UNIT>1</PRICE_UNIT>
      <TOTAL_AMOUNT>21551.4</TOTAL_AMOUNT>
      <MATERIAL_MASTER_CODE xsi:nil="true" />
      <MATERIAL_GROUP_CODE xsi:nil="true" />
      <PLANT_CODE xsi:nil="true" />
      <ITEM_CATEGORY_CODE xsi:nil="true" />
      <ADMIN_FEE_SGD_AMOUNT>0</ADMIN_FEE_SGD_AMOUNT>
      <INSTRUCTION_TO_SUPPLIER>Purchase of goods/services is subject to the Terms & Conditions found in www.rp.sg/purchase and/or in the ITQ/ITT Specifications. Please liaise with the Contact Person for delivery details. Invoice MUST be addressed to the Contact Person. PO number MUST be included in the Description field under e-Invoice Details section at Vendor@Gov.</INSTRUCTION_TO_SUPPLIER>
      <PERIOD_CONTRACT_LINE_NUMBER>1</PERIOD_CONTRACT_LINE_NUMBER>
      <GOODS_INSPECT_FLAG>N</GOODS_INSPECT_FLAG>
    - <PURCHASE_REQUEST>
      <CODE>RPO000EPR11000465</CODE>
      <LINE_NUMBER>1</LINE_NUMBER>
      </PURCHASE_REQUEST>
    - <PART_NUMBER_INFORMATION>
      <NATO_STOCK_NUMBER xsi:nil="true" />
      <MANUFACTURER_PART_NUMBER xsi:nil="true" />
      <PART_NUMBER xsi:nil="true" />
      <CAGE_CODE xsi:nil="true" />
      <CAGE_NAME xsi:nil="true" />
      <ITEM_CONDITION xsi:nil="true" />
      <MINIMUM_SHELF_LIFE xsi:nil="true" />
      <SHELF_LIFE_REMAINING xsi:nil="true" />
      <CERTIFICATE_OF_CONFORMANCE xsi:nil="true" />
      <EXPORT_LICENSE xsi:nil="true" />
      </PART_NUMBER_INFORMATION>
    - <LOCATIONS>
    - <LOCATION>
      <LINE_NUMBER>1</LINE_NUMBER>
      <STATUS>NEW</STATUS>
      <STATUS_DATE>2011-07-08T16:57:39</STATUS_DATE>
      <QUANTITY>26</QUANTITY>
      <DELIVERY_DESTINATION>Republic Polytechnic, One-Stop Centre, 9 Woodlands Avenue 9, S(738964)</DELIVERY_DESTINATION>
      <DELIVERY_DATE>2011-07-11T00:00:00</DELIVERY_DATE>
      <DELIVERY_TERMS>LOC</DELIVERY_TERMS>
      <PORT_OF_ORIGIN>-</PORT_OF_ORIGIN>
    - <RECIPIENT>
      <CODE>OSC</CODE>
      <NAME>One Stop Centre</NAME>
      <PHONE>65103000</PHONE>
      <EMAIL>[email protected]</EMAIL>
      </RECIPIENT>
    - <DISTRIBUTIONS>
    - <DISTRIBUTION>
      <LINE_NUMBER>1</LINE_NUMBER>
      <STATUS>NEW</STATUS>
      <STATUS_DATE>2011-07-08T16:57:39</STATUS_DATE>
      <QUANTITY>26</QUANTITY>
      <CHART_OF_ACCOUNT>1/G01/3SAS/020/220908/0000/0000/0000</CHART_OF_ACCOUNT>
      <PROJECT_DISTRIBUTION xsi:nil="true" />
      </DISTRIBUTION>
      </DISTRIBUTIONS>
      </LOCATION>
      </LOCATIONS>
      </ITEM>
      </ITEMS>
      </GEBIZ_ORDER>I was able to read this kind of file structure but due to some constraints now they added supplier sites and increment that one which will be like variable kind of thing now.
    And below mentioned is the script which I am using right now for reading that xml file
    PROCEDURE XGBZPROD.XGBZ_PUR_ORD_XMLTAG_PROC(P_XML_FILE IN VARCHAR2, P_FOLDER_NAME IN VARCHAR2)
    IS
      lv_supp_file     XMLTYPE;
      lv_hdr_error     VARCHAR2(240);
      lv_line_error    VARCHAR2(240);
      lv_line_loc_err  VARCHAR2(240);
      lv_dist_err      VARCHAR2(240);
      l_file_name      VARCHAR2(300);
      l_folder_name    VARCHAR2(300);
      lv_sysdate       DATE := sysdate;
    BEGIN
      l_file_name     := p_xml_file;
      l_folder_name   := p_folder_name;
      -- this clause to check whether is xml file or NODATA FILE.
      IF upper(substr(l_file_name,instr(l_file_name,'.',1)+1,3)) ='XML' THEN
        lv_supp_file  := xmltype( bfilename('XMLDIR',P_XML_FILE), nls_charset_id('AL32UTF8'));
        dbms_output.put_line('P_XML_FILE '||P_XML_FILE);
    -- Initially insert data into 11g table
    -- This is to read xml datafile
      INSERT INTO XGBZ_PO_XML_DETAILS
       (ministry_code                ,
        department_code              ,
        order_code                   ,
        external_system_code         ,
        amendment_number             ,
        variation_number             ,
        description                  ,
        status                       ,
        status_date                  ,
        payment_terms                ,
        bill_to                      ,
        justification                ,
        create_timestamp             ,
        terminate_reason             ,
        terminate_timestamp          ,
        order_type                   ,
        sub_business_unit            ,
        cost_center_group            ,
        buyer_code                   ,
        financial_system_order_code  ,
        user_nric                    ,
        supplier_code                ,
        supplier_name                ,
        gst_number                   ,
        contact_name                 ,
        contact_phone                ,
        contact_email                ,
        contact_fax                  ,
        supp_site_id                 ,
        supp_site_name               ,
        supp_site_phone              ,
        supp_sit_phone_ext           ,
        supp_site_fax                ,
        supp_site_email              ,
        supp_site_add_line1          ,
        supp_site_add_line2          ,
        supp_site_add_line3          ,
        supp_site_country_code       ,
        supp_site_province           ,
        supp_site_state              ,
        supp_site_city               ,
        supp_site_area_code          ,
        supp_site_zip                ,
        supp_site_region_code        ,
        user_code                    ,
        user_name                    ,
        user_org_name                ,
        currency_code                ,
        currency_rate                ,
        currency_rate_date           ,
        currency_rate_type           ,
        currency_amount              ,
        tx_field_2                   ,
        agency_code                  ,
        admin_fee_sgd                ,
        buyer_orgn_code              ,
        buyer_orgn_name              ,
        buyer_name                   ,
        buyer_phone                  ,
        buyer_fax                    ,
        buyer_email                  ,
        ao_code                      ,
        ao_name                      ,
        line_no                      ,
        line_status                  ,
        line_status_date             ,
        line_description             ,
        unit_of_measure              ,
        line_qty                     ,
        line_type                    ,
        unit_price                   ,
        line_total_amount            ,
        material_master_code         ,
        material_group_code          ,
        item_category_code           ,
        line_admin_fee_sgd_amt       ,
        instruction_supplier         ,
        period_contract_line_no      ,
        goods_inspect_flag           ,
        pr_code                      ,
        pr_line_number               ,
        nato_stock_number            ,
        manufacturer_part_no         ,
        part_number                  ,
        cage_code                    ,
        cage_name                    ,
        item_condition               ,
        minimum_shelf_life           ,
        shelf_life_remaining         ,
        cert_of_conformance          ,
        export_license               ,
        line_location_no             ,
        line_loc_status              ,
        line_loc_status_date         ,
        line_loc_qty                 ,
        delivery_destination         ,
        delivery_date                ,
        delivery_terms               ,
        port_of_origin               ,
        recipient_code               ,
        recipient_name               ,
        recipient_phone              ,
        recipient_email              ,
        dist_line_no                 ,
        dist_line_status             ,
        dist_line_status_date        ,
        dist_line_qty                ,
        chart_of_account             ,
        project_distribution
       SELECT --Header Data
              ministry_code                ,
              department_code              ,
              order_code                   ,
              external_system_code         ,
              amendment_number             ,
              variation_number             ,
              description                  ,
              status                       ,
              status_date                  ,
              payment_terms                ,
              bill_to                      ,
              justification                ,
              create_timestamp             ,
              terminate_reason             ,
              terminate_timestamp          ,
              order_type                   ,
              sub_business_unit            ,
              cost_center_group            ,
              buyer_code                   ,
              financial_system_order_code  ,
              user_nric                    ,
              supplier_code                ,
              supplier_name                ,
              gst_number                   ,
              contact_name                 ,
              contact_phone                ,
              contact_email                ,
              contact_fax                  ,
              supp_site_id                 ,
              supp_site_name               ,
              supp_site_phone              ,
              supp_sit_phone_ext           ,
              supp_site_fax                ,
              supp_site_email              ,
              supp_site_add_line1          ,
              supp_site_add_line2          ,
              supp_site_add_line3          ,
              supp_site_country_code       ,
              supp_site_province           ,
              supp_site_state              ,
              supp_site_city               ,
              supp_site_area_code          ,
              supp_site_zip                ,
              supp_site_region_code        ,
              user_code                    ,
              user_name                    ,
              user_org_name                ,
              currency_code                ,
              currency_rate                ,
              currency_rate_date           ,
              currency_rate_type           ,
              currency_amount              ,
              tx_field_2                   ,
              agency_code                  ,
              admin_fee_sgd                ,
              buyer_orgn_code              ,
              buyer_orgn_name              ,
              buyer_name                   ,
              buyer_phone                  ,
              buyer_fax                    ,
              buyer_email                  ,
              ao_code                      ,
              ao_name                      ,
              line_no                      ,
              line_status                  ,
              line_status_date             ,
              line_description             ,
              unit_of_measure              ,
              line_qty                     ,
              line_type                    ,
              unit_price                   ,
              line_total_amount            ,
              material_master_code         ,
              material_group_code          ,
              item_category_code           ,
              line_admin_fee_sgd_amt       ,
              instruction_supplier         ,
              period_contract_line_no      ,
              goods_inspect_flag           ,
              pr_code                      ,
              pr_line_number               ,
              nato_stock_number            ,
              manufacturer_part_no         ,
              part_number                  ,
              cage_code                    ,
              cage_name                    ,
              item_condition               ,
              minimum_shelf_life           ,
              shelf_life_remaining         ,
              cert_of_conformance          ,
              export_license               ,
              line_location_no             ,
              line_loc_status              ,
              line_loc_status_date         ,
              line_loc_qty                 ,
              delivery_destination         ,
              delivery_date                ,
              delivery_terms               ,
              port_of_origin               ,
              recipient_code               ,
              recipient_name               ,
              recipient_phone              ,
              recipient_email              ,
              dist_line_no                 ,
              dist_line_status             ,
              dist_line_status_date        ,
              dist_line_qty                ,
              chart_of_account             ,
              project_distribution
         FROM XMLTable('/GEBIZ_ORDER'
              passing lv_supp_file
              columns
              ministry_code                      VARCHAR2(3)    path    'HEADER/MINISTRY_CODE',
              department_code                    VARCHAR2(3)    path    'HEADER/DEPARTMENT_CODE',
              order_code                         VARCHAR2(17 )  path    'HEADER/ORDER_CODE',
              external_system_code               VARCHAR2(1)    path    'HEADER/EXTERNAL_SYSTEM_CODE',
              amendment_number                   VARCHAR2(5)    path    'HEADER/AMENDMENT_NUMBER' ,
              variation_number                   VARCHAR2(5)    path    'HEADER/VARIATION_NUMBER',
              description                        VARCHAR2(500)  path    'HEADER/DESCRIPTION',
              status                             VARCHAR2(500)  path    'HEADER/STATUS',
              status_date                        VARCHAR2(24)   path    'HEADER/STATUS_DATE',
              payment_terms                      VARCHAR2(400)  path    'HEADER/PAYMENT_TERMS',
              bill_to                            VARCHAR2(200)  path    'HEADER/BILL_TO',
              justification                      VARCHAR2(400)  path    'HEADER/JUSTIFICATION',
              create_timestamp                   VARCHAR2(24)   path    'HEADER/CREATE_TIMESTAMP',
              terminate_reason                   VARCHAR2(400)  path    'HEADER/TERMINATE_REASON',
              terminate_timestamp                VARCHAR2(24)   path    'HEADER/TERMINATE_TIMESTAMP',
              order_type                         VARCHAR2(2 )   path    'HEADER/ORDER_TYPE',
              sub_business_unit                  VARCHAR2(5 )   path    'HEADER/FINANCIAL_SYSTEM/SUB_BUSINESS_UNIT',
              cost_center_group                  VARCHAR2(20 )  path    'HEADER/FINANCIAL_SYSTEM/NFS/COST_CENTER_GROUP',
              buyer_code                         VARCHAR2(30 )  path    'HEADER/FINANCIAL_SYSTEM/NFS/BUYER_CODE',
              financial_system_order_code        VARCHAR2(20 )  path    'HEADER/FINANCIAL_SYSTEM/NFS/FINANCIAL_SYSTEM_ORDER_CODE',
              user_nric                          VARCHAR2(9 )   path    'HEADER/FINANCIAL_SYSTEM/NFS/USER_NRIC',
              supplier_code                      VARCHAR2(10)   path    'HEADER/SUPPLIER/CODE',
              supplier_name                      VARCHAR2(140)  path    'HEADER/SUPPLIER/NAME' ,
              gst_number                         VARCHAR2(30 )  path    'HEADER/SUPPLIER/GST_NUMBER',
              contact_name                       VARCHAR2(140 ) path    'HEADER/SUPPLIER/CONTACT_NAME',
              contact_phone                      VARCHAR2(23 )  path    'HEADER/SUPPLIER/CONTACT_PHONE',
              contact_email                      VARCHAR2(100)  path    'HEADER/SUPPLIER/CONTACT_EMAIL',
              contact_fax                        VARCHAR2(23 )  path    'HEADER/SUPPLIER/CONTACT_FAX',
              supp_site_id                       NUMBER         path    'HEADER/SUPPLIER/SITES/SITE/ID',
              supp_site_name                     VARCHAR2(140)  path    'HEADER/SUPPLIER/SITES/SITE/NAME',
              supp_site_phone                    VARCHAR2(23)   path    'HEADER/SUPPLIER/SITES/SITE/PHONE',
              supp_sit_phone_ext                 VARCHAR2(4 )   path    'HEADER/SUPPLIER/SITES/SITE/PHONE_EXTENSION',
              supp_site_fax                      VARCHAR2(23 )  path    'HEADER/SUPPLIER/SITES/SITE/FAX',
              supp_site_email                    VARCHAR2(100 ) path    'HEADER/SUPPLIER/SITES/SITE/EMAIL',
              supp_site_add_line1                VARCHAR2(254 ) path    'HEADER/SUPPLIER/SITES/SITE/ADDRESS_LINE1',
              supp_site_add_line2                VARCHAR2(35 )  path    'HEADER/SUPPLIER/SITES/SITE/ADDRESS_LINE2',
              supp_site_add_line3                VARCHAR2(35 )  path    'HEADER/SUPPLIER/SITES/SITE/ADDRESS_LINE3',
              supp_site_country_code             VARCHAR2(2 )   path    'HEADER/SUPPLIER/SITES/SITE/COUNTRY_CODE',
              supp_site_province                 VARCHAR2(25 )  path    'HEADER/SUPPLIER/SITES/SITE/PROVINCE',
              supp_site_state                    VARCHAR2(25 )  path    'HEADER/SUPPLIER/SITES/SITE/STATE',
              supp_site_city                     VARCHAR2(25 )  path    'HEADER/SUPPLIER/SITES/SITE/CITY',
              supp_site_area_code                VARCHAR2(10 )  path    'HEADER/SUPPLIER/SITES/SITE/AREA_CODE',
              supp_site_zip                      VARCHAR2(20 )  path    'HEADER/SUPPLIER/SITES/SITE/ZIP',
              supp_site_region_code              VARCHAR2(3 )   path    'HEADER/SUPPLIER/SITES/SITE/REGION_CODE',
              user_code                          VARCHAR2(16 )  path    'HEADER/USER/CODE',
              user_name                          VARCHAR2(25 )  path    'HEADER/USER/NAME',
              user_org_name                      VARCHAR2(95 )  path    'HEADER/USER/ORGANISATION_NAME',
              currency_code                      VARCHAR2(3 )   path    'HEADER/FUND_COMMIT_AMOUNT/CURRENCY_CODE',
              currency_rate                      NUMBER         path    'HEADER/FUND_COMMIT_AMOUNT/CURRENCY_RATE',
              currency_rate_date                 VARCHAR2(24)   path    'HEADER/FUND_COMMIT_AMOUNT/CURRENCY_RATE_DATE',
              currency_rate_type                 VARCHAR2(5 )   path    'HEADER/FUND_COMMIT_AMOUNT/CURRENCY_RATE_TYPE',
              currency_amount                    NUMBER         path    'HEADER/FUND_COMMIT_AMOUNT/CURRENCY_AMOUNT',
              tx_field_2                         VARCHAR2(17 )  path    'HEADER/PERIOD_CONTRACT/CODE',
              agency_code                        VARCHAR2(6 )   path    'HEADER/PERIOD_CONTRACT/AGENCY_CODE',
              admin_fee_sgd                      NUMBER         path    'HEADER/PERIOD_CONTRACT/ADMIN_FEE_SGD_AMOUNT'  ,
              buyer_orgn_code                    VARCHAR2(5 )   path    'HEADER/BUYER/ORGANISATION_CODE',
              buyer_orgn_name                    VARCHAR2(95 )  path    'HEADER/BUYER/ORGANISATION_NAME',
              buyer_name                         VARCHAR2(80 )  path    'HEADER/BUYER/NAME',
              buyer_phone                        VARCHAR2(23 )  path    'HEADER/BUYER/PHONE',
              buyer_fax                          VARCHAR2(23 )  path    'HEADER/BUYER/FAX',
              buyer_email                        VARCHAR2(100 ) path    'HEADER/BUYER/EMAIL',
              ao_code                            VARCHAR2(16 )  path    'HEADER/APPROVING_OFFICERS/APPROVING_OFFICER/CODE',
              ao_name                            VARCHAR2(40 )  path    'HEADER/APPROVING_OFFICERS/APPROVING_OFFICER/NAME',
              items                              XMLTYPE        path    'ITEMS'
              ) x1,
            XMLTABLE('/ITEMS/ITEM'
            passing x1.items
            columns
              line_no                            VARCHAR2(5)    path    'LINE_NUMBER',
              line_status                        VARCHAR2(15)   path    'STATUS',
              line_status_date                   VARCHAR2(24)   path    'STATUS_DATE',
              line_description                   VARCHAR2(500)  path    'DESCRIPTION',
              unit_of_measure                    VARCHAR2(3)    path    'UNIT_OF_MEASURE',
              line_qty                           NUMBER         path    'QUANTITY',
              line_type                          VARCHAR2(20)   path    'LINE_TYPE',
              unit_price                         NUMBER         path    'UNIT_PRICE',
              line_total_amount                  NUMBER         path    'TOTAL_AMOUNT',
              material_master_code               VARCHAR2(20)   path    'MATERIAL_MASTER_CODE',
              material_group_code                VARCHAR2(10)   path    'MATERIAL_GROUP_CODE',
              item_category_code                 VARCHAR2(18)   path    'ITEM_CATEGORY_CODE',
              line_admin_fee_sgd_amt             NUMBER         path    'ADMIN_FEE_SGD_AMOUNT',
              instruction_supplier               VARCHAR2(400)  path    'INSTRUCTION_TO_SUPPLIER',
              period_contract_line_no            NUMBER         path    'PERIOD_CONTRACT_LINE_NUMBER',
              goods_inspect_flag                 VARCHAR2(1)    path    'GOODS_INSPECT_FLAG',
              pr_code                            VARCHAR2(17)   path    'PURCHASE_REQUEST/CODE',
              pr_line_number                     VARCHAR2(5)    path    'PURCHASE_REQUEST/LINE_NUMBER',
              nato_stock_number                  VARCHAR2(14)   path    'PART_NUMBER_INFORMATION/NATO_STOCK_NUMBER',
              manufacturer_part_no               VARCHAR2(32)   path    'PART_NUMBER_INFORMATION/MANUFACTURE_PART_NUMBER',
              part_number                        VARCHAR2(200)  path    'PART_NUMBER_INFORMATION/PART_NUMBER',
              cage_code                          VARCHAR2(10)   path    'PART_NUMBER_INFORMATION/CAGE_CODE',
              cage_name                          VARCHAR2(140)  path    'PART_NUMBER_INFORMATION/CAGE_NAME',
              item_condition                     VARCHAR2(1)    path    'PART_NUMBER_INFORMATION/ITEM_CONDITION'  ,
              minimum_shelf_life                 NUMBER         path    'PART_NUMBER_INFORMATION/MINIMUM_SHELF_LIFE',
              shelf_life_remaining               VARCHAR2(3)    path    'PART_NUMBER_INFORMATION/SHELF_LIFE_REMAINING',
              cert_of_conformance                VARCHAR2(1000) path    'PART_NUMBER_INFORMATION/CERTIFICATE_OF_CONFORMANCE',
              export_license                     VARCHAR2(3)    path    'PART_NUMBER_INFORMATION/EXPORT_LICENSE',
              locations                          XMLTYPE        path    'LOCATIONS'
             )x2,
             XMLTABLE('/LOCATIONS/LOCATION'
             passing x2.locations
             columns
              line_location_no                   NUMBER         path     'LINE_NUMBER',
              line_loc_status                    VARCHAR2(15)   path     'STATUS',
              line_loc_status_date               VARCHAR2(24)   path     'STATUS_DATE',
              line_loc_qty                       NUMBER         path     'QUANTITY',
              delivery_destination               VARCHAR2(1000) path     'DELIVERY_DESTINATION',
              delivery_date                      VARCHAR2(24)   path     'DELIVERY_DATE',
              delivery_terms                     VARCHAR2(3)    path     'DELIVERY_TERMS',
              port_of_origin                     VARCHAR2(150)  path     'PORT_OF_ORIGIN',
              recipient_code                     VARCHAR2(16 )  path     'RECIPIENT/CODE',
              recipient_name                     VARCHAR2(40 )  path     'RECIPIENT/NAME',
              recipient_phone                    VARCHAR2(23 )  path     'RECIPIENT/PHONE',
              recipient_email                    VARCHAR2(100 ) path     'RECIPIENT/EMAIL',
              distributions                      XMLTYPE        path     'DISTRIBUTIONS'
             )x3,
             XMLTABLE('/DISTRIBUTIONS/DISTRIBUTION'
             passing x3.distributions
             columns
              dist_line_no                       NUMBER         path     'LINE_NUMBER',
              dist_line_status                   VARCHAR2(15)   path     'STATUS',
              dist_line_status_date              VARCHAR2(24)   path     'STATUS_DATE',
              dist_line_qty                      NUMBER         path     'QUANTITY',
              chart_of_account                   VARCHAR2(420)  path     'CHART_OF_ACCOUNT',
              project_distribution               VARCHAR2(4000) path     'PROJECT_DISTRIBUTION'
              )x4;
    end;As there is change in requirement now I need to read the multiple supplier sites at the header level. Current this is my structure please give an idea how to read the mulitple sites as one record, probably i can increase the supplier site columns at table level so as to capture second site level information.
    But if in case if i receive that time it should not fail please provide some good solution for this issue.
    Thanks in advance for your help.
    Regards
    Nagendra

    Hi odie,
    Thanks for your response. But here my supplier site will always be maxiumum 2 times and minimum 1 time. My thinking is to fit this one in the existing code by repeating the supplier site only like this
              supp_site_id                       NUMBER         path    'HEADER/SUPPLIER/SITES/SITE/ID',
              supp_site_name                     VARCHAR2(140)  path    'HEADER/SUPPLIER/SITES/SITE/NAME',
              supp_site_phone                    VARCHAR2(23)   path    'HEADER/SUPPLIER/SITES/SITE/PHONE',
              supp_sit_phone_ext                 VARCHAR2(4 )   path    'HEADER/SUPPLIER/SITES/SITE/PHONE_EXTENSION',
              supp_site_fax                      VARCHAR2(23 )  path    'HEADER/SUPPLIER/SITES/SITE/FAX',
              supp_site_email                    VARCHAR2(100 ) path    'HEADER/SUPPLIER/SITES/SITE/EMAIL',
              supp_site_add_line1                VARCHAR2(254 ) path    'HEADER/SUPPLIER/SITES/SITE/ADDRESS_LINE1',
              supp_site_add_line2                VARCHAR2(35 )  path    'HEADER/SUPPLIER/SITES/SITE/ADDRESS_LINE2',
              supp_site_add_line3                VARCHAR2(35 )  path    'HEADER/SUPPLIER/SITES/SITE/ADDRESS_LINE3',
              supp_site_country_code             VARCHAR2(2 )   path    'HEADER/SUPPLIER/SITES/SITE/COUNTRY_CODE',
              supp_site_province                 VARCHAR2(25 )  path    'HEADER/SUPPLIER/SITES/SITE/PROVINCE',
              supp_site_state                    VARCHAR2(25 )  path    'HEADER/SUPPLIER/SITES/SITE/STATE',
              supp_site_city                     VARCHAR2(25 )  path    'HEADER/SUPPLIER/SITES/SITE/CITY',
              supp_site_area_code                VARCHAR2(10 )  path    'HEADER/SUPPLIER/SITES/SITE/AREA_CODE',
              supp_site_zip                      VARCHAR2(20 )  path    'HEADER/SUPPLIER/SITES/SITE/ZIP',
              supp_site_region_code              VARCHAR2(3 )   path    'HEADER/SUPPLIER/SITES/SITE/REGION_CODE',
              supp_site_id2                       NUMBER         path    'HEADER/SUPPLIER/SITES/SITE/ID',
              supp_site_name2                     VARCHAR2(140)  path    'HEADER/SUPPLIER/SITES/SITE/NAME',
              supp_site_phone2                    VARCHAR2(23)   path    'HEADER/SUPPLIER/SITES/SITE/PHONE',
              supp_sit_phone_ext2                 VARCHAR2(4 )   path    'HEADER/SUPPLIER/SITES/SITE/PHONE_EXTENSION',
              supp_site_fax2                      VARCHAR2(23 )  path    'HEADER/SUPPLIER/SITES/SITE/FAX',
              supp_site_email2                    VARCHAR2(100 ) path    'HEADER/SUPPLIER/SITES/SITE/EMAIL',
              supp_site_add_line1_2                VARCHAR2(254 ) path    'HEADER/SUPPLIER/SITES/SITE/ADDRESS_LINE1',
              supp_site_add_line2_2                VARCHAR2(35 )  path    'HEADER/SUPPLIER/SITES/SITE/ADDRESS_LINE2',
              supp_site_add_line3_2                VARCHAR2(35 )  path    'HEADER/SUPPLIER/SITES/SITE/ADDRESS_LINE3',
              supp_site_country_code_2             VARCHAR2(2 )   path    'HEADER/SUPPLIER/SITES/SITE/COUNTRY_CODE',
              supp_site_province_2                 VARCHAR2(25 )  path    'HEADER/SUPPLIER/SITES/SITE/PROVINCE',
              supp_site_state_2                    VARCHAR2(25 )  path    'HEADER/SUPPLIER/SITES/SITE/STATE',
              supp_site_city_2                     VARCHAR2(25 )  path    'HEADER/SUPPLIER/SITES/SITE/CITY',
              supp_site_area_code_2                VARCHAR2(10 )  path    'HEADER/SUPPLIER/SITES/SITE/AREA_CODE',
              supp_site_zip_2                      VARCHAR2(20 )  path    'HEADER/SUPPLIER/SITES/SITE/ZIP',
              supp_site_region_code_2              VARCHAR2(3 )   path    'HEADER/SUPPLIER/SITES/SITE/REGION_CODE',As this table I am being used in many areas, it will be problem for me if try to go for different levels of tables. Or else can it be possible to read only once
    I mean only the first in the xml tags and leave the second xml. As there is not much significant for the second one.
    I appreciate your ideas on this, as the structure we are following is to rigid so I don't have much options to explore, please provide me your inputs in this context.
    Thanks for your help.
    Regards
    Nagendra
    Edited by: 838961 on Jul 13, 2011 1:43 AM

  • Open Dataset for XML not reading the XML file, Returning Code 8.

    Dear all,
    Im trying to open an XML file using Open Dataset, since i have to execute this report in background and GUI_upload doesnt work in background.
    The XML file is available in my C:\, say, C:\xmlfile.xml.
    But  the open dataset is not reading any value into the g_xml_line . it is returning sy-subrc = 8.
    Below is my code for that, can anybody help me out to resolve.
    DATA : lv_filename LIKE rlgrap-filename.
      CLEAR: lv_filename.
      lv_filename = p_input.
      OPEN DATASET lv_filename FOR INPUT IN BINARY MODE.
      IF sy-subrc ne 0.
        WRITE:/ 'invalid file'.
      else.
      DO.
        READ DATASET lv_filename INTO  g_xml_line.
        IF sy-subrc EQ 0.
          APPEND g_xml_line TO g_xml_table.
        ELSE.
          EXIT.
        ENDIF.
      ENDDO.
      CLOSE DATASET lv_filename.
       ENDIF.
    TYPES: BEGIN OF t_xml_line,
            data(256) TYPE x,
          END OF t_xml_line.
    DATA: g_xml_table       TYPE TABLE OF t_xml_line,
          g_xml_line        TYPE t_xml_line,
          g_xml_table_size  TYPE i.
    GET REFERENCE OF gt_person INTO gs_result_xml-value.
      gs_result_xml-name = 'IPIX'.
      APPEND gs_result_xml TO gt_result_xml.
    Perform the XSLT stylesheet
      TRY.
          CALL TRANSFORMATION zaum_manh_sync_rpt
          SOURCE XML g_xml_table
          RESULT (gt_result_xml).
        CATCH cx_root INTO gs_rif_ex.
          gs_var_text = gs_rif_ex->get_text( ).
          MESSAGE gs_var_text TYPE 'E'.
      ENDTRY.
    Kindly suggest me a solution. Points assured
    regs,
    raja

    After saving the file , below is the code i wrote, but it gives a runtime error with message
    No roll storage space of length 3788808 available for internal storage.
    ***Coding****
    PARAMETERS: p_file TYPE pathintern LOWER CASE DEFAULT '/usr/sap/DEV/SYS/global/XMLABAP2.XML'.
    DATA : lv_filename LIKE rlgrap-filename.
      CLEAR: lv_filename.
      lv_filename = p_file.
      DATA: l_fname TYPE filename-fileintern. " File name
    *GET THE FILENAME FROM THE APPLICATION SERVER
      CALL FUNCTION '/SAPDMC/LSM_F4_SERVER_FILE'
        EXPORTING
          directory        = p_file
          filemask         = '*'
        IMPORTING
          serverfile       = l_fname
        EXCEPTIONS
          canceled_by_user = 1
          OTHERS           = 2.
      IF sy-subrc NE 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
        WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    */usr/sap/DEV/SYS/global/substanc
      lv_filename = l_fname.
      OPEN DATASET lv_filename FOR INPUT IN BINARY MODE.
      IF sy-subrc NE 0.
        WRITE:/ 'invalid file'.
      ELSE.
        DO.
          READ DATASET lv_filename INTO  g_xml_line.
       IF sy-subrc EQ 0.
          APPEND g_xml_line TO g_xml_table.
       ELSE.
         EXIT.
       ENDIF.
        ENDDO.
        CLOSE DATASET lv_filename.
      ENDIF.

  • Error in reading the XML file

    Hi,
    I am trying to read the values of the node of XML file. The structure of the XML file is:
    <?xml version = "1.0"?>
    <DOCUMENT>
    <LANGUAGE_TRANS>
    <TRANSLATION>
    <CODE>3</CODE>
    <VALUE>Please select a number</VALUE>
    </TRANSLATION>
    <TRANSLATION>
    <CODE>5</CODE>
    <VALUE>Patni</VALUE>
    </TRANSLATION>
    <TRANSLATION>
    <CODE>6</CODE>
    <VALUE>Status Messages</VALUE>
    </TRANSLATION>
    <TRANSLATION>
    <CODE>7</CODE>
    <VALUE>Progress</VALUE>
    </TRANSLATION>
    <TRANSLATION>
    <CODE>8</CODE>
    <VALUE>Create Data Files...</VALUE>
    </TRANSLATION>
    <TRANSLATION>
    <CODE>9</CODE>
    <VALUE>OK</VALUE>
    </TRANSLATION>
    </LANGUAGE_TRANS>
    </DOCUMENT>
    I have written the code to read the value of the code from the XML file. When I run the code as written below. It doesnot give any error or exception. The node name returned is CODE as desired but the Node value returned is null which is not the desired result. Can anyone please help me to find where I am going wrong. Thanks a lot.
    Regards,
    Shweta
    import java.net.*;
    import java.util.*;
    import oracle.xml.parser.v2.*;
    import org.w3c.dom.*;
    import org.xml.sax.SAXException;
    public class MergeXMLTest
    private static XMLDocument mDoc;
    public MergeXMLTest () {
    try {
    // Get an instance of the parser
    DOMParser lParser = new DOMParser();
    // Generate a URL from the filename for UPDATE.XML file.
    URL lUrl = createURL("mot.xml");
    System.out.println("after creating the URL object ");
    lParser.setErrorStream(System.out);
    lParser.showWarnings(true);
    lParser.parse(lUrl);
    mDoc = lParser.getDocument();
    System.out.println("after creating the URL object "+mDoc);
    lParser.reset();
    } catch (Exception e) {
    e.printStackTrace();
    } // end catch block
    } // End of constructor
    public void merge() throws DOMException {
    try {
         NodeList lTrans1 = this.mDoc.getElementsByTagName("CODE");
         if(lTrans1.getLength()>0) {
              Node lTransTag1 = lTrans1.item(0);
              System.out.println("lTrans1.item(0).getNodeName : " + lTrans1.item(0).getNodeName());
              System.out.println("lTrans1.item(0).getNodeValue : " + lTrans1.item(0).getNodeValue());
         } catch (Exception e) {
         System.out.println("Exception "+e);
         e.printStackTrace();
         } catch (Throwable t) {
              System.out.println("Exception "+t);
    public static URL createURL(String pFileName) throws MalformedURLException {
    URL url = null;
    Block of code to create a URL object from the file name
    that is passed as parameter.
    try {
    url = new URL(pFileName);
    } catch (MalformedURLException ex) {
    File f = new File(pFileName);
    String path = f.getAbsolutePath();
    String fs = System.getProperty("file.separator");
    System.out.println(" path of file : "+path +"separator " +fs);
    if (fs.length() == 1) {
    char sep = fs.charAt(0);
    if (sep != '/')
    path = path.replace(sep, '/');
    if (path.charAt(0) != '/')
    path = '/' + path;
    path = "file://" + path;
    System.out.println("path is : "+path);
    // Try again, if this throws an exception we just raise it up
    url = new URL(path);
    } // End catch block
    return url;
    } // end method create URL
    public static void main (String args[]) {
         MergeXMLTest mXML = new MergeXMLTest();
         mXML.merge();
    }

    see my answer here: http://forum.java.sun.com/thread.jsp?forum=34&thread=304647
    ps. if you know a little of XPath, this is why text() is a special kind of node()...

  • Problems with and tags while reading the xml file

    Hi
    I am using the xml files in my project. The project uses Tomcat, JMS. The project is divided into some components which communicate with each oher thru JMS. The component for which I am responsible gets a dcoument object from the JMS which is a processed xml of the following format (the processing is done by the DBMS_XMLGEN package of oracle)
    <?xml version="1.0" encoding="UTF-8"?>
    <root>
    <filename>157_1000000001</filename>
    <querydata>
    <tabdata>
    <tabinfo>Tab-id3</tabinfo>
    <queryset>
    <query name="Fax">
    select a.ARLN_NAME,d.TICKETED_ORIGIN,d.TICKETED_DESTINATION, d.ENDORSEMENTS,to_char(d.DATE_OF_ISSUE,'DDMONYY') as DATE_OF_ISSUE ,d.EXCHANGE_DOC_TYPE,
                   d.PASSENGER_NAME,d.ORIG_ISS_AIRLINE,d.ORIG_DOC_NO,d.ORIG_PLACE_OF_ISSUE,
                   to_char(d.ORIG_DATE_OF_ISSUE,'DDMONYY'),d.ORIG_ISSUE_AGENT,d.CUR_OF_SALE,d.GROSS_FARE,d.EQUIV_CUR_OF_SALE,d.EQUIV_FARE,
                   d.PANDA_DEAL_CODE,d.ISI,d.reporting_date
                   from airline_master a,ticket_main d,ticket_conj e where d.doc_no = e.doc_no and d.iss_airline = e.iss_airline
                   and e.conj_doc_no = (select DOC_NO from TICKET_CONJ where CONJ_DOC_NO = 1000000001 and ISS_AIRLINE = 157)
                   and e.ISS_AIRLINE = 157 and d.iss_airline = a.ARLN_NUM_CODE
    </query>
    </queryset>
    </tabdata>
    </querydata>
    the function on my side is like this
    private void processMessage(ObjectMessage objmessage)
         Document XMLreqObject = (Document) objmessage.getObject();
         Element root = XMLreqObject.getRootElement();                
         String resultFilename = root.getChildText("filename");
         Element tabSet = root.getChild("querydata");//doesnt work
         ArrayList tabSetlist = new ArrayList(tabSet.getChildren ("tabdata"));//doesnt work
    The code commented with "doesnt work", is not working. What must be the problem ?
    Thanks in Advance
    Martin

    Okay. Your original example XML didn't include < or > which was rather confusing if that particular feature was supposed to be the cause of the problem. Also calling them "tags" was rather confusing since "tags" is the term for the things that come at the beginning and of an element, like this:<data>...</data>Anyway, I assume your theory is that documents that don't have < in a text element process correctly and documents that do have < in a text element get "stuck" in the parser? Well, from your original description the process appears to be:
    1. Create XML
    2. Parse it into a Document
    3. Send the Document via JMS
    4. Receive the Document via JMS
    5. Process it.
    And it's step 4 that is "stuck"? That would be my guess based on the code you posted.

  • How to read the CSV Files into Database Table

    Hi
    Friends i have a Table called tblstudent this has the following fields Student ID, StudentName ,Class,Father_Name, Mother_Name.
    Now i have a CSV File with 1500 records with all These Fields. Now in my Program there is a need for me to read all these Records into this Table tblstudent.
    Note: I have got already 2000 records in the Table tblstudent now i would like to read all these CSV File records into the Table tblstudent.
    Please give me some examples to do this
    Thank your for your service
    Cheers
    Jofin

    1) Read the CSV file line by line using BufferedReader.
    2) Convert each line (record) to a List and add it to a parent List. If you know the columns before, you might use a List of DTO's.
    3) Finally save the two-dimensional List or the List of DTO's into the datatable using plain JDBC or any kind of ORM (Hibernate and so on).
    This article contains some useful code snippets to parse a CSV: http://balusc.xs4all.nl/srv/dev-jep-csv.html

  • B2B - Email with XML attachment - Error in reading the xml file

    Hello,
    We have a requirement where an application sends an email with an xml attachment to a Lotus Notes (IMAP) mail box. I have configured the Partner, Agreements and Listening Channel to pick up the file from the mail box. Looks like when B2B is trying to read / store attachment, it errors out, there is no instance in B2B created. Looking at the logs, the file content is not read as XML, instead it seems like a text. When B2B tries to read the attachment it is not xml, there are no error messages as well.
    The "Content type" in the Listening Channel is set to blank, so B2B can decide appropriate content type. Should this be set?
    Could some one tell me what is wrong, not sure what is missing in the configuration.
    Thanks,
    Venkatesh
    Here is the log in Trace 32.
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [NOTIFICATION] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@e4012] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [APP: soa-infra] Repository:: getReceivingEndPointList: Delivery channel Id:CHANNEL_uGzsvLy-5972197188599763240
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [NOTIFICATION] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@e4012] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [APP: soa-infra] Repository:: getReceivingEndPointList: name = host value = abcapp1.abc.com
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [NOTIFICATION] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@e4012] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [APP: soa-infra] Repository:: getReceivingEndPointList: name = password value = ******
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [NOTIFICATION] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@e4012] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [APP: soa-infra] Repository:: getReceivingEndPointList: name = user value = IDropshipabcTest
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [NOTIFICATION] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@e4012] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [APP: soa-infra] Repository:: getReceivingEndPointList: name = polling_interval value = 60
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [NOTIFICATION] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@e4012] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [APP: soa-infra] Repository:: getReceivingEndPointList: name = content-type value = null
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [NOTIFICATION] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@e4012] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [APP: soa-infra] Repository:: getReceivingEndPointList: name = send as attachment value = null
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [NOTIFICATION] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@e4012] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [APP: soa-infra] Repository:: getReceivingEndPointList: name = folder value = null
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [NOTIFICATION] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@e4012] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [APP: soa-infra] Repository:: getReceivingEndPointList: name = email-id value = [email protected]
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [NOTIFICATION] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@e4012] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [APP: soa-infra] Repository:: getReceivingEndPointList: name = subject value = null
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [NOTIFICATION] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@e4012] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [APP: soa-infra] Repository:: getReceivingEndPointList: name = dateformat value = null
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [NOTIFICATION] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@e4012] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [APP: soa-infra] Repository:: getReceivingEndPointList: name = eMail-server value = IMAP
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [NOTIFICATION] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@e4012] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [APP: soa-infra] Repository:: getReceivingEndPointList: Putting imap://[email protected]
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [NOTIFICATION] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@e4012] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [APP: soa-infra] Repository:: put: Putting imap://[email protected] for delivery channel CHANNEL_uGzsvLy-5972197188599763240
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@e4012] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.system.DiagnosticService] [APP: soa-infra] [SRC_METHOD: synchedLog_J] Engine: addEndpoint: Adding endpoint...channel name abc_EmailVendor_LC
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@e4012] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.system.DiagnosticService] [APP: soa-infra] [SRC_METHOD: synchedLog_J] Engine: addEndpoint: Endpoint url imap://[email protected]
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@e4012] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.system.DiagnosticService] [APP: soa-infra] [SRC_METHOD: synchedLog_J] Engine: addEndpoint: Endpoint url imap://[email protected]
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@e4012] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.system.DiagnosticService] [APP: soa-infra] [SRC_METHOD: synchedLog_J] Engine: addEndpoint: This is NOT a listening internal delivery channel imap://[email protected]
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [TRACE:32] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@e4012] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.system.DiagnosticService] [APP: soa-infra] [SRC_METHOD: log] TransportLogger Init....
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@e4012] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] TransportProperties.TransportProperties():smtp.receiver.user=IDropshipTest;smtp.receiver.polling_interval=60;channelId=CHANNEL_uGzsvLy-5972197188599763240;[email protected];user=IDropshipTest;internal=false;smtp.receiver.password=******;polling_interval=60;smtp.receiver.protocol=imap;password=******;eMail-server=IMAP;host=abcapp1.abc.com;
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [TRACE:32] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.system.DiagnosticService] [APP: soa-infra] [SRC_METHOD: log] B2BTransport.init(url) Endpoint = sftp://w108p-dmzftp01:22//Dev/Local/VEN-Dropship/FoamCraft url parameter = imap://[email protected]
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [TRACE:32] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.system.DiagnosticService] [APP: soa-infra] [SRC_METHOD: log] B2BTransport.init(url) Endpoint = sftp://w108p-dmzftp01:22//Dev/Local/VEN-Dropship/JoyCarpets url parameter = imap://[email protected]
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [TRACE:32] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.system.DiagnosticService] [APP: soa-infra] [SRC_METHOD: log] B2BTransport.init(url) Endpoint = sftp://w108p-dmzftp01:22//Dev/Local/VEN-Dropship/JoyCarpets/OrderResults url parameter = imap://[email protected]
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@e4012] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.system.DiagnosticService] [APP: soa-infra] [SRC_METHOD: synchedLog_J] Engine: addEndpoint: Added new endpoint.
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [TRACE:32] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.system.DiagnosticService] [APP: soa-infra] [SRC_METHOD: log] B2BTransport.init(url) Endpoint = imap://[email protected] url parameter = imap://[email protected]
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@e4012] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.system.DiagnosticService] [APP: soa-infra] [SRC_METHOD: synchedLog_J] Engine: addEndpoint: Exit
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] SMTPReceiver.init() started ....
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@e4012] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.system.DiagnosticService] [APP: soa-infra] [SRC_METHOD: synchedLog_J] Engine: handleUpdateChannelEvent: Exit
    [2013-03-18T19:03:34.212-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@e4012] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.system.DiagnosticService] [APP: soa-infra] [SRC_METHOD: synchedLog_J] Engine: processEvents: Exit
    [2013-03-18T19:03:34.259-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor.setPollingInterval: polling time 60
    [2013-03-18T19:03:34.259-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] SMTPReceiver.init() completed.
    [2013-03-18T19:03:34.259-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] [IPT_SmtpRecPollingStatus] IMAPMonitor is up polling at 60 sec interval ...
    [2013-03-18T19:03:34.259-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor.run shutdown is false, continuing
    [2013-03-18T19:03:34.259-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] Total number of messages = 2
    [2013-03-18T19:03:34.259-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] Number of new messages =0
    [2013-03-18T19:03:34.259-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] Number of unread messages =0
    [2013-03-18T19:03:34.259-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] Number of messages to be processed by IMAPMonitor = 2
    [2013-03-18T19:03:34.259-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor.convertMailToTransport(): Converting message ...
    [2013-03-18T19:03:34.446-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor.convertMailToTransport(): Message Type = BINARY
    [2013-03-18T19:03:34.446-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor: Headers Importance - High
    [2013-03-18T19:03:34.446-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor: Headers Subject - Inventory Quantity On Hand Update for 266219 as of 20130318 at 18:54
    [2013-03-18T19:03:34.446-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor: Headers Auto-Submitted - auto-generated
    [2013-03-18T19:03:34.446-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor: Headers To - [email protected]
    [2013-03-18T19:03:34.446-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor: Headers Message-ID - <[email protected]>
    [2013-03-18T19:03:34.446-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor: Headers Sender - [email protected]
    [2013-03-18T19:03:34.446-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor: Headers Date - Mon, 18 Mar 2013 18:54:35 -0500
    [2013-03-18T19:03:34.446-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor: Headers X-MIMETrack - Serialize by IMAP Server on abcAPP1/abc(Release 8.5.1|September 28, 2009) at[[
    03/18/2013 19:03:33
    [2013-03-18T19:03:34.446-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor: Headers MIME-Version - 1.0
    [2013-03-18T19:03:34.446-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor: Headers Content-type - multipart/mixed; [[
         Boundary="0__=09BBF1A1DF10DC2F8f9e8a93df938690918c09BBF1A1DF10DC2F"
    [2013-03-18T19:03:34.446-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor: Headers Content-Disposition - inline
    [2013-03-18T19:03:34.509-05:00] [AdminServer] [TRACE:32] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.system.DiagnosticService] [APP: soa-infra] [SRC_METHOD: log] COntentHandler backcompat: true
    [2013-03-18T19:03:34.509-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor: MultiPart Message
    [2013-03-18T19:03:34.509-05:00] [AdminServer] [TRACE:32] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.system.DiagnosticService] [APP: soa-infra] [SRC_METHOD: log] COntentHandler backcompat: true
    [2013-03-18T19:03:34.509-05:00] [AdminServer] [TRACE:32] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.system.DiagnosticService] [APP: soa-infra] [SRC_METHOD: log] COntentHandler backcompat: true
    [2013-03-18T19:03:34.556-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@169d2b1] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-52575d59:13d7daec7d5:-8000-000000000000d14d,0] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor.saveAttachment(): PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiID8+DQo8SW52ZW50b3J5VXBkYXRl[[
    IHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiDQp4
    c2k6c2NoZW1hTG9jYXRpb249Imh0dHA6Ly93d3cuZXhhbXBsZS5vcmcgSW52ZW50b3J5VXBkYXRl
    LnhzZCINCnhtbG5zPSJodHRwOi8vd3d3LmV4YW1wbGUub3JnIj4NCjxEYXRlPjIwMTMtMDMtMTg8
    L0RhdGU+DQo8VGltZT4xODo1NDo0NDwvVGltZT4NCjxUeXBlPiBGdWxsIDwvVHlwZT4NCjxWZW5k
    b3JJRD4yNjYyMTk8L1ZlbmRvcklEPg0KPEl0ZW0+DQo8U2t1PjQ8L1NrdT4NCjxRdWFudGl0eT4w
    PC9RdWFudGl0eT4NCjxDb3N0PjE1LjU8L0Nvc3Q+DQo8TmV3Q29zdD4xNS41PC9OZXdDb3N0Pg0K
    PE5ld0Nvc3RFZmZEYXRlPjIwMTMtMDMtMTg8L05ld0Nvc3RFZmZEYXRlPg0KPFN0YXR1cz4NCjxT
    Caused by: java.sql.SQLException: ORA-01461: can bind a LONG value only for insert into a LONG column
         at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:457)
         at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:405)
         at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:889)

    Thanks Anuj,
    After setting the property, I am no longer receiving the error, however, still fails with a different error, "Exception occurs in conversion from mail to TransportMessage. Please make sure the message sent is in correct format." and "TransportMessage cannot be created from mail. Skip this mail."
    The error appears after / while, executing, IMAPMonitor.saveAttachment():
    Is this a problem with the attachment or the email?
    here is the log,
    [2013-03-19T09:16:23.264-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor.run(): IMAPMonitor goes to sleep for 60 secs ...
    [2013-03-19T09:17:23.266-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor.run: wake up. shutdown_ = false
    [2013-03-19T09:17:23.266-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor.run shutdown is false, continuing
    [2013-03-19T09:17:23.313-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] Total number of messages = 1
    [2013-03-19T09:17:23.313-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] Number of new messages =0
    [2013-03-19T09:17:23.329-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] Number of unread messages =0
    [2013-03-19T09:17:23.329-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] Number of messages to be processed by IMAPMonitor = 1
    [2013-03-19T09:17:23.329-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor.convertMailToTransport(): Converting message ...
    [2013-03-19T09:17:23.516-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor.convertMailToTransport(): Message Type = BINARY
    [2013-03-19T09:17:23.516-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor: Headers Subject - Inventory Quantity On Hand Update for 266219 as of 20130319 at 09:07
    [2013-03-19T09:17:23.516-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor: Headers To - [email protected]
    [2013-03-19T09:17:23.516-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor: Headers Message-ID - <[email protected]main>
    [2013-03-19T09:17:23.516-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor: Headers Date - Tue, 19 Mar 2013 09:07:29 -0500
    [2013-03-19T09:17:23.516-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor: Headers Sender - [email protected]
    [2013-03-19T09:17:23.516-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor: Headers From - [email protected]
    [2013-03-19T09:17:23.516-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor: Headers Content-type - multipart/mixed; [[
         Boundary="0__=09BBF1A0DFDE15CA8f9e8a93df938690918c09BBF1A0DFDE15CA"
    [2013-03-19T09:17:23.516-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor: Headers Content-Disposition - inline
    [2013-03-19T09:17:23.516-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor: Headers MIME-Version - 1.0
    [2013-03-19T09:17:23.516-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor: Headers Auto-Submitted - auto-generated
    [2013-03-19T09:17:23.516-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor: Headers X-MIMETrack - Itemize by Agent Manager on abcAPP1/abc(Release 8.5.1|September 28, 2009) at[[
    03/19/2013 09:07:29,CD-MIME by IMAP Server on abcAPP1/abc(Release 8.5.1|September 28, 2009) at
    03/19/2013 09:17:21,CD-MIME complete at 03/19/2013 09:17:21,Itemize by IMAP Server on abcAPP1/abc(Release 8.5.1|September 28, 2009) at
    03/19/2013 09:17:22
    [2013-03-19T09:17:23.563-05:00] [AdminServer] [TRACE:32] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.system.DiagnosticService] [APP: soa-infra] [SRC_METHOD: log] COntentHandler backcompat: true
    [2013-03-19T09:17:23.563-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor: MultiPart Message
    [2013-03-19T09:17:23.563-05:00] [AdminServer] [TRACE:32] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.system.DiagnosticService] [APP: soa-infra] [SRC_METHOD: log] COntentHandler backcompat: true
    [2013-03-19T09:17:23.563-05:00] [AdminServer] [TRACE:32] [] [oracle.soa.b2b.engine] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.system.DiagnosticService] [APP: soa-infra] [SRC_METHOD: log] COntentHandler backcompat: true
    *[2013-03-19T09:17:23.563-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor.saveAttachment(): AttachDir=C:\Oracle\Middleware\home_11gR1\user_projects\domains\mysoa_domain\servers\AdminServer\AttachmentHandler*
    *[2013-03-19T09:17:23.563-05:00] [AdminServer] [ERROR] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [APP: soa-infra] [IPT_SmtpRecConversionError] Exception occurs in conversion from mail to TransportMessage. Please make sure the message sent is in correct format.*
    *[2013-03-19T09:17:23.563-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor: TransportMessage cannot be created from mail. Skip this mail.*
    *[2013-03-19T09:17:23.579-05:00] [AdminServer] [TRACE] [] [oracle.soa.b2b.transport] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@11c2050] [userId: <anonymous>] [ecid: 54ec404c68bbfb80:-67aaafb8:13d82f27adb:-8000-0000000000000204,1:26833] [SRC_CLASS: oracle.tip.b2b.transport.basic.TransportLogger] [APP: soa-infra] [SRC_METHOD: log] IMAPMonitor.run(): IMAPMonitor goes to sleep for 60 secs ...*
    Thanks,
    Venkatesh

  • Reading the XML file and displaying teh string with teh desired output

    Hi Gurus,
    I have an xml file as below.
    catalog>
    <book>
    <id>101</id>
    <genre>Computer</genre>
    <author>Jim Cortez</author>
    <title>XML for dummies</title>
    <price>44.95</price>
    <description>An in-depth look at creating mashed potatoes
    with XML.</description>
    </book>
    <book>
    <id>102</id>
    <author>George Bush</author>
    <title>I'm the decider</title>
    <genre>Fantasy</genre>
    <price>0.95</price>
    <description>I like milk and cookies.</description>
    </book>
    </catalog>
    I would like to display the Output as
    [<catalog>:1]
    [<book>:1]
    [<id>:1]
    [101:3]
    [</id>:2]
    [<genre>:1]
    [Computer:3]
    [</genre>:2]
    [<author>:1]
    [Jim Cortez:3]
    [</author>:2]
    [<title>:1]
    [XML for dummies:3]
    ............ etc., etc.,,
    here is the code template.......
    import java.io.*;
    class TagScanner implements TokenStream {
    public static final int BEGIN_TAG_TYPE = 1;
    public static final int END_TAG_TYPE = 2;
    public static final int TEXT_TYPE = 3;
    protected Reader reader = null;
    /** Lookahead char */
    protected char c;
    /** Text of currently matched token */
    protected StringBuffer text = new StringBuffer(100);
    public TagScanner(Reader reader) throws IOException {
    this.reader = reader;
    nextChar();
    protected void nextChar() throws IOException {
    c = (char)reader.read();
    public Token nextToken() throws IOException {
         if ( start of a tag ) {
         // scarf until end of tag
         // type is either BEGIN_TAG_TYPE or END_TAG_TYPE
         if ( end of file ) {
         type = Token.EOF_TYPE;
         text = "end-of-file";
         else {
         // scarf until start of a tag
         type = TEXT_TYPE;
         if ( just whitespace ) {
         // ignore and get another token
    return new Token(type, text.toString());
    Can someone please provide me the logic for the code please........... here is the complete link of the excersie http://www.antlr.org/wiki/display/CS652/Lexer+for+XML
    Many Thanks
    -M

    Can someone please provide me the logic for the code please..........The logic is pretty well spelled out for you in the description of the assignment and the outline for the code you provided. If you mean
    Can someone please do my homework for me....The answer to that is usually yes, someone can do your homework for you, but no, they usually won't actually do it for you.
    However, if you are really stuck on what to do, you should consider:
            if ( start of a tag ) {How would you know that you are at the start of a tag? Once you can answer that, the rest sort of works itself out as long as
                // scarf until end of tagyou realize what it means to 'scarf' and how to determine when an end-of-tag is reached (hint, very similar as to how to determine if you are at the start-of-tag).

  • Reading the XML file and displaying the string with the desired output

    Hi Gurus,
    I have an xml file as below.
    catalog>
    <book>
    <id>101</id>
    <genre>Computer</genre>
    <author>Jim Cortez</author>
    <title>XML for dummies</title>
    <price>44.95</price>
    <description>An in-depth look at creating mashed potatoes
    with XML.</description>
    </book>
    <book>
    <id>102</id>
    <author>George Bush</author>
    <title>I'm the decider</title>
    <genre>Fantasy</genre>
    <price>0.95</price>
    <description>I like milk and cookies.</description>
    </book>
    </catalog>
    I would like to display the Output as
    [<catalog>:1]
    [<book>:1]
    [<id>:1]
    [101:3]
    [</id>:2]
    [<genre>:1]
    [Computer:3]
    [</genre>:2]
    [<author>:1]
    [Jim Cortez:3]
    [</author>:2]
    [<title>:1]
    [XML for dummies:3]
    ............ etc., etc.,,
    here is the code template.......
    import java.io.*;
    class TagScanner implements TokenStream {
    public static final int BEGIN_TAG_TYPE = 1;
    public static final int END_TAG_TYPE = 2;
    public static final int TEXT_TYPE = 3;
    protected Reader reader = null;
    /** Lookahead char */
    protected char c;
    /** Text of currently matched token */
    protected StringBuffer text = new StringBuffer(100);
    public TagScanner(Reader reader) throws IOException {
    this.reader = reader;
    nextChar();
    protected void nextChar() throws IOException {
    c = (char)reader.read();
    public Token nextToken() throws IOException {
    if ( start of a tag ) {
    // scarf until end of tag
    // type is either BEGIN_TAG_TYPE or END_TAG_TYPE
    if ( end of file ) {
    type = Token.EOF_TYPE;
    text = "end-of-file";
    else {
    // scarf until start of a tag
    type = TEXT_TYPE;
    if ( just whitespace ) {
    // ignore and get another token
    return new Token(type, text.toString());
    Can someone please provide me the logic for the code please........... here is the complete link of the excersie
    http://www.antlr.org/wiki/display/CS652/Lexer+for+XML
    Many Thanks
    -M

    Can someone please provide me the logic for the code please..........The logic is pretty well spelled out for you in the description of the assignment and the outline for the code you provided. If you mean
    Can someone please do my homework for me....The answer to that is usually yes, someone can do your homework for you, but no, they usually won't actually do it for you.
    However, if you are really stuck on what to do, you should consider:
            if ( start of a tag ) {How would you know that you are at the start of a tag? Once you can answer that, the rest sort of works itself out as long as
                // scarf until end of tagyou realize what it means to 'scarf' and how to determine when an end-of-tag is reached (hint, very similar as to how to determine if you are at the start-of-tag).

  • How could we read the XML data from a table using BODS.

    Hi Guys,
    My requirement is , As the OLTP system  consists of a table called person which consists of a column demographics. so how could i read this XML data which is in one column of an SQL table called persons. As this XML data will populate the remaining fields in my target using BODS.
    Regards,
    Amjad.

    Hi Amjad,
    I am afraid there ain't any direct method to extract XML field from a data base.
    Indirect way could be converting the whole table (instead of one field) into XML format and then extract one field from it!!
    Regards,
    Mubashir Hussain

  • How to read the attribute of the xml file using jaxb

    Thanks,
    Buddy as i have a issue i have to read the xml file using jaxb and xml file contains this data and i have read the attribute like name , desc and action for a particular menu name pls tell the code how to do this it will be a great favour to me
    thanx in advance
    Rasool
    <contextmenu>
    <menu name='Lead' >
    <menuitem name='newlead' desc='New Lead' action='/leads.do?dispatch=insert' />
    <menuitem name='editlead' desc='Edit Lead' action='' />
    <menuitem name='leadinfo' desc='Lead Information' action='' />
    </menu>
    <menu name='Cases' >
    <menuitem name='' desc='' action='' />
    <menuitem name='' desc='' action='' />
    <menuitem name='' desc='' action='' />
    </menu>
    <menu name='Contact' >
    <menuitem name='' desc='' action='' />
    <menuitem name='' desc='' action='' />
    <menuitem name='' desc='' action='' />
    </menu>
    </contextmenu>

    What my program do is to get the encoding of XML files and convert them to UTF-8 encoding files, while I need this "encoding" information of the original XML document thus I can convert...
    After reading specifications and JDOM docs, the truth turns to be disappointed, no function is provided to get this information in JDOM level 2(the current released one), while it's promissed that this function will be provided in JDOM level API....
    Thanx all for your help and attention!!!

  • Decrypt and unzip a File + read a XML file received into the ZIP

    Hello,
    I need your help to develop some a complex Biztalk application.
    Here're my needs :
    Our Busness partner send us a zip file cripted with a standard PGP(Pretty Goof Privacy).
    The zip containts an XML file that i have to deal it, and some attachments file(PDF).
    So i need to know what's the best approach for the developpement of my application.
    I want to decrypt the ZIP and then Unzip the file and them read the XML file received in the zip.
    Knowimg that we already have the pipeline compenent to dectypt the file with the strandar PGP and an other pipeline compenent to unzip the File.
    Thank you

    Hi ,
    Try this code to unzip the file and send the xml message .If u face issue let me know
    namespace BizTalk.Pipeline.Component.DisUnzip
    using System;
    using System.IO;
    using System.Text;
    using System.Drawing;
    using System.Resources;
    using System.Reflection;
    using System.Diagnostics;
    using System.Collections;
    using System.ComponentModel;
    using Microsoft.BizTalk.Message.Interop;
    using Microsoft.BizTalk.Component.Interop;
    using Microsoft.BizTalk.Component;
    using Microsoft.BizTalk.Messaging;
    using Ionic.Zip;
    using System.IO.Compression;
    [ComponentCategory(CategoryTypes.CATID_PipelineComponent)]
    [System.Runtime.InteropServices.Guid("8bef7aa9-5da5-4d62-ac5b-03af2fb9d280")]
    [ComponentCategory(CategoryTypes.CATID_DisassemblingParser)]
    public class DisUnzip : Microsoft.BizTalk.Component.Interop.IDisassemblerComponent, IBaseComponent, IPersistPropertyBag, IComponentUI
    private System.Resources.ResourceManager resourceManager = new System.Resources.ResourceManager("BizTalk.Pipeline.Component.DisUnzip.DisUnzip", Assembly.GetExecutingAssembly());
    #region IBaseComponent members
    /// <summary>
    /// Name of the component
    /// </summary>
    [Browsable(false)]
    public string Name
    get
    return resourceManager.GetString("COMPONENTNAME", System.Globalization.CultureInfo.InvariantCulture);
    /// <summary>
    /// Version of the component
    /// </summary>
    [Browsable(false)]
    public string Version
    get
    return resourceManager.GetString("COMPONENTVERSION", System.Globalization.CultureInfo.InvariantCulture);
    /// <summary>
    /// Description of the component
    /// </summary>
    [Browsable(false)]
    public string Description
    get
    return resourceManager.GetString("COMPONENTDESCRIPTION", System.Globalization.CultureInfo.InvariantCulture);
    #endregion
    #region IPersistPropertyBag members
    /// <summary>
    /// Gets class ID of component for usage from unmanaged code.
    /// </summary>
    /// <param name="classid">
    /// Class ID of the component
    /// </param>
    public void GetClassID(out System.Guid classid)
    classid = new System.Guid("8bef7aa9-5da5-4d62-ac5b-03af2fb9d280");
    /// <summary>
    /// not implemented
    /// </summary>
    public void InitNew()
    /// <summary>
    /// Loads configuration properties for the component
    /// </summary>
    /// <param name="pb">Configuration property bag</param>
    /// <param name="errlog">Error status</param>
    public virtual void Load(Microsoft.BizTalk.Component.Interop.IPropertyBag pb, int errlog)
    /// <summary>
    /// Saves the current component configuration into the property bag
    /// </summary>
    /// <param name="pb">Configuration property bag</param>
    /// <param name="fClearDirty">not used</param>
    /// <param name="fSaveAllProperties">not used</param>
    public virtual void Save(Microsoft.BizTalk.Component.Interop.IPropertyBag pb, bool fClearDirty, bool fSaveAllProperties)
    #region utility functionality
    /// <summary>
    /// Reads property value from property bag
    /// </summary>
    /// <param name="pb">Property bag</param>
    /// <param name="propName">Name of property</param>
    /// <returns>Value of the property</returns>
    private object ReadPropertyBag(Microsoft.BizTalk.Component.Interop.IPropertyBag pb, string propName)
    object val = null;
    try
    pb.Read(propName, out val, 0);
    catch (System.ArgumentException )
    return val;
    catch (System.Exception e)
    throw new System.ApplicationException(e.Message);
    return val;
    /// <summary>
    /// Writes property values into a property bag.
    /// </summary>
    /// <param name="pb">Property bag.</param>
    /// <param name="propName">Name of property.</param>
    /// <param name="val">Value of property.</param>
    private void WritePropertyBag(Microsoft.BizTalk.Component.Interop.IPropertyBag pb, string propName, object val)
    try
    pb.Write(propName, ref val);
    catch (System.Exception e)
    throw new System.ApplicationException(e.Message);
    #endregion
    #endregion
    #region IComponentUI members
    /// <summary>
    /// Component icon to use in BizTalk Editor
    /// </summary>
    [Browsable(false)]
    public IntPtr Icon
    get
    return ((System.Drawing.Bitmap)(this.resourceManager.GetObject("COMPONENTICON", System.Globalization.CultureInfo.InvariantCulture))).GetHicon();
    /// <summary>
    /// The Validate method is called by the BizTalk Editor during the build
    /// of a BizTalk project.
    /// </summary>
    /// <param name="obj">An Object containing the configuration properties.</param>
    /// <returns>The IEnumerator enables the caller to enumerate through a collection of strings containing error messages. These error messages appear as compiler error messages. To report successful property validation, the method should return an empty enumerator.</returns>
    public System.Collections.IEnumerator Validate(object obj)
    // example implementation:
    // ArrayList errorList = new ArrayList();
    // errorList.Add("This is a compiler error");
    // return errorList.GetEnumerator();
    return null;
    #endregion
    /// <summary>
    /// this variable will contain any message generated by the Disassemble method
    /// </summary>
    private System.Collections.Queue _msgs = new System.Collections.Queue();
    #region IDisassemblerComponent members
    /// <summary>
    /// called by the messaging engine until returned null, after disassemble has been called
    /// </summary>
    /// <param name="pc">the pipeline context</param>
    /// <returns>an IBaseMessage instance representing the message created</returns>
    public Microsoft.BizTalk.Message.Interop.IBaseMessage
    GetNext(Microsoft.BizTalk.Component.Interop.IPipelineContext pc)
    // get the next message from the Queue and return it
    Microsoft.BizTalk.Message.Interop.IBaseMessage msg = null;
    if ((_msgs.Count > 0))
    msg = ((Microsoft.BizTalk.Message.Interop.IBaseMessage)(_msgs.Dequeue()));
    return msg;
    /// <summary>
    /// called by the messaging engine when a new message arrives
    /// </summary>
    /// <param name="pc">the pipeline context</param>
    /// <param name="inmsg">the actual message</param>
    public void Disassemble(Microsoft.BizTalk.Component.Interop.IPipelineContext pc, Microsoft.BizTalk.Message.Interop.IBaseMessage inmsg)
    IBaseMessage Temp = inmsg;
    using (ZipFile zip = ZipFile.Read(inmsg.BodyPart.GetOriginalDataStream()))
    foreach (ZipEntry e in zip)
    var ms = new MemoryStream();
    IBaseMessage outMsg;
    outMsg = pc.GetMessageFactory().CreateMessage();
    outMsg.AddPart("Body", pc.GetMessageFactory().CreateMessagePart(), true);
    outMsg.Context=inmsg.Context;
    e.Extract(ms);
    string XMLMessage = Encoding.UTF8.GetString(ms.ToArray());
    MemoryStream mstemp = new System.IO.MemoryStream(
    System.Text.Encoding.UTF8.GetBytes(XMLMessage));
    outMsg.GetPart("Body").Data = mstemp;
    _msgs.Enqueue(outMsg);
    #endregion
    Thanks
    Abhishek

  • "PLS-00172: string literal too long" When Writing XML file into a Table

    Hi.
    I'm using DBMS_XMLStore to get a XML file into a db table. See the example below, I'm using that for my PL/SQL format. Problem is that because there're too many XML elements that I use in "xmldoc CLOB:= ...", I get "PLS-00172: string literal too long" error.
    Can someone suggest a workaround?
    THANKS!!!
    DECLARE
    insCtx DBMS_XMLStore.ctxType;
    rows NUMBER;
    xmldoc CLOB :=
    '<ROWSET>
    <ROW num="1">
    <EMPNO>7369</EMPNO>
    <SAL>1800</SAL>
    <HIREDATE>27-AUG-1996</HIREDATE>
    </ROW>
    <ROW>
    <EMPNO>2290</EMPNO>
    <SAL>2000</SAL>
    <HIREDATE>31-DEC-1992</HIREDATE>
    </ROW>
    </ROWSET>';
    BEGIN
    insCtx := DBMS_XMLStore.newContext('scott.emp'); -- get saved context
    DBMS_XMLStore.clearUpdateColumnList(insCtx); -- clear the update settings
    -- set the columns to be updated as a list of values
    DBMS_XMLStore.setUpdateColumn(insCtx,'EMPNO');
    DBMS_XMLStore.setUpdateColumn(insCtx,'SAL');
    DBMS_XMLStore.setUpdatecolumn(insCtx,'HIREDATE');
    -- Now insert the doc.
    -- This will only insert into EMPNO, SAL and HIREDATE columns
    rows := DBMS_XMLStore.insertXML(insCtx, xmlDoc);
    -- Close the context
    DBMS_XMLStore.closeContext(insCtx);
    END;
    /

    You ask where am getting the XML doc. Well, am not
    getting the doc itself.I either don't understand or I disagree. In your sample code, you're certainly creating an XML document-- your local variable "xmldoc" is an XML document.
    DBMS_XMLSTORE package needs
    to know the canonical format and that's what I
    hardcoded. Again, I either don't understand or I disagree... DBMS_XMLStore more or less assumes the format of the XML document itself-- there's a ROWSET tag, a ROW tag, and a then whatever column tags you'd like. You can override what tag identifies a row, but the rest is pretty much assumed. Your calls to setUpdateColumn identifies what subset of column tags in the XML document you're interested in.
    Later in code I use
    DBMS_XMLStore.setUpdateColumn to specify which
    columns are to be inserted.Agreed.
    xmldoc CLOB :=
    '<ROWSET>
    <ROW num="1">
    <KEY_OLD> Smoker </KEY_OLD>
    <KEY_NEW> 3 </KEY_NEW>
    <TRANSFORM> Specified </TRANSFORM>
    <KEY_OLD> Smoker </KEY_OLD>
    <VALUEOLD> -1 </VALUEOLD>
    EW> -1 </VALUENEW>
         <DESCRIPTION> NA </DESCRIPTION>
    </ROW>
    ROWSET>';This is your XML document. You almost certainly want to be reading this from the file system and/or have it passed in from another procedure. If you hard-code the XML document, you're limited to a 32k string literal, which is almost certainly causing the error you were reporting initially.
    As am writing this I'm realizing that I'm doing this
    wrong, because I do need to read the XML file from
    the filesystem (but insert the columns
    selectively)...What I need to come up with is a proc
    that would grab the XML file and do inserts into a
    relational table. The XML file will change in the
    future and that means that all my 'canonical format'
    code will be broken. How do I deal with anticipated
    change? Do I need to define/create an XML schema in
    10g if am just inserting into one relat. table from
    one XML file?What does "The XML file will change in the future" mean? Are you saying that the structure of the XML document will change? Or that the data in the XML document would change? Your code should only need to change if the structure of the document changes, which should be exceptionally uncommon and would only be an issue if you're adding another column that you want to work with, which would necessitate code changes.
    I found an article where the issue of changing XML
    file is dealt by using a XSL file (that's where I'd
    define the 'canonical format'), but am having a
    problem with creating one, because the source XML is
    screwed up in terms of the format:
    it's not <x> blah </x>
    <x2> blah </x2>
    x2="blah" x3="blah> ...etc
    Can you point me in the right direction, please?You can certainly use something like the DBMS_XSLProcessor package to transform whatever XML document you have into an XML document in an appropriate format for the XMLStore package and pass that transformed XML document into something like your sample procedure rather than defining the xmldoc local variable with a hard-coded document. Of course, you'd need to write appropriate XSL code to do the actual transform.
    Justin

  • Read of XML file and post to IDOC

    Hi
    I'm working on a <b>WAS620</b> and need to read an XML file from a customer, extract the fields needed and post these via IDOC ORDERS01. My problem is HOW to read the XML file? Can anyone give me the steps involved/links to examples etc - I have not processed XML files via ABAP before.
    The file is posted to a shared folder and the ABAP I am about to develop will pick up this file.
    The file is <b>NOT</b> in IDOC/XML format but the customers own format
    Hope someone can help me asap.
    Thanks all in advance
    /Bo

    Hi,
    I would like to extend this question for <b>WAS620</b> and <b>reading</b> a <b>proprietary customer specific XML</b> file/data that is <b>send via HTTP to SAP WAS</b>.
    <b>Q1</b>: What is the best way to read this HTTP sent XML data (as it is, without transformations) into ABAP?
    <b>Q2</b>: What is the appropriate handler to use in the ICF object?
    Thanks all in advance

  • Problem converting data in XML file to internal table data

    Hi all,
    I have a requirement. I need to convert an XML file to internal table data and based on that data do Goods Receipt in SAP.
    With the help of this blog /people/r.eijpe/blog/2005/11/10/xml-dom-processing-in-abap-part-i--convert-an-abap-table-into-xml-file-using-sap-dom-approach
    I am able to convert the XML file to data in SAP. But this blog will display the output on screen as ELELEMNT = nodename VALUE= value of that node.
    But I donu2019t want in that way, I want to store all the data in XML file in an internal table so that I can make use of those values and do Goods Recipt in SAP.
    Can some one suggest how should I read the data in an internal table.
    Here is my code..what changes should I make?
    *& Report  z_xit_xml_check
      REPORT  z_xit_xml_check.
      TYPE-POOLS: ixml.
      TYPES: BEGIN OF t_xml_line,
              data(256) TYPE x,
            END OF t_xml_line.
      DATA: l_ixml            TYPE REF TO if_ixml,
            l_streamfactory   TYPE REF TO if_ixml_stream_factory,
            l_parser          TYPE REF TO if_ixml_parser,
            l_istream         TYPE REF TO if_ixml_istream,
            l_document        TYPE REF TO if_ixml_document,
            l_node            TYPE REF TO if_ixml_node,
            l_xmldata         TYPE string.
      DATA: l_elem            TYPE REF TO if_ixml_element,
            l_root_node       TYPE REF TO if_ixml_node,
            l_next_node       TYPE REF TO if_ixml_node,
            l_name            TYPE string,
            l_iterator        TYPE REF TO if_ixml_node_iterator.
      DATA: l_xml_table       TYPE TABLE OF t_xml_line,
            l_xml_line        TYPE t_xml_line,
            l_xml_table_size  TYPE i.
      DATA: l_filename        TYPE string.
      PARAMETERS: pa_file TYPE char1024 DEFAULT 'c:\temp\orders_dtd.xml'.
    Validation of XML file: Only DTD included in xml document is supported
      PARAMETERS: pa_val  TYPE char1 AS CHECKBOX.
      START-OF-SELECTION.
      Creating the main iXML factory
        l_ixml = cl_ixml=>create( ).
      Creating a stream factory
        l_streamfactory = l_ixml->create_stream_factory( ).
        PERFORM get_xml_table CHANGING l_xml_table_size l_xml_table.
      wrap the table containing the file into a stream
        l_istream = l_streamfactory->create_istream_itable( table = l_xml_table
                                                        size  = l_xml_table_size ).
      Creating a document
        l_document = l_ixml->create_document( ).
      Create a Parser
        l_parser = l_ixml->create_parser( stream_factory = l_streamfactory
                                          istream        = l_istream
                                          document       = l_document ).
      Validate a document
        IF pa_val EQ 'X'.
          l_parser->set_validating( mode = if_ixml_parser=>co_validate ).
        ENDIF.
      Parse the stream
        IF l_parser->parse( ) NE 0.
          IF l_parser->num_errors( ) NE 0.
            DATA: parseerror TYPE REF TO if_ixml_parse_error,
                  str        TYPE string,
                  i          TYPE i,
                  count      TYPE i,
                  index      TYPE i.
            count = l_parser->num_errors( ).
            WRITE: count, ' parse errors have occured:'.
            index = 0.
            WHILE index < count.
              parseerror = l_parser->get_error( index = index ).
              i = parseerror->get_line( ).
              WRITE: 'line: ', i.
              i = parseerror->get_column( ).
              WRITE: 'column: ', i.
              str = parseerror->get_reason( ).
              WRITE: str.
              index = index + 1.
            ENDWHILE.
          ENDIF.
        ENDIF.
      Process the document
        IF l_parser->is_dom_generating( ) EQ 'X'.
          PERFORM process_dom USING l_document.
        ENDIF.
    *&      Form  get_xml_table
      FORM get_xml_table CHANGING l_xml_table_size TYPE i
                                  l_xml_table      TYPE STANDARD TABLE.
      Local variable declaration
        DATA: l_len      TYPE i,
              l_len2     TYPE i,
              l_tab      TYPE tsfixml,
              l_content  TYPE string,
              l_str1     TYPE string,
              c_conv     TYPE REF TO cl_abap_conv_in_ce,
              l_itab     TYPE TABLE OF string.
        l_filename = pa_file.
      upload a file from the client's workstation
        CALL METHOD cl_gui_frontend_services=>gui_upload
          EXPORTING
            filename   = l_filename
            filetype   = 'BIN'
          IMPORTING
            filelength = l_xml_table_size
          CHANGING
            data_tab   = l_xml_table
          EXCEPTIONS
            OTHERS     = 19.
        IF sy-subrc <> 0.
          MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                     WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
        ENDIF.
      Writing the XML document to the screen
        CLEAR l_str1.
        LOOP AT l_xml_table INTO l_xml_line.
          c_conv = cl_abap_conv_in_ce=>create( input = l_xml_line-data replacement = space  ).
          c_conv->read( IMPORTING data = l_content len = l_len ).
          CONCATENATE l_str1 l_content INTO l_str1.
        ENDLOOP.
        l_str1 = l_str1+0(l_xml_table_size).
        SPLIT l_str1 AT cl_abap_char_utilities=>cr_lf INTO TABLE l_itab.
        WRITE: /.
        WRITE: /' XML File'.
        WRITE: /.
        LOOP AT l_itab INTO l_str1.
          REPLACE ALL OCCURRENCES OF cl_abap_char_utilities=>horizontal_tab IN
            l_str1 WITH space.
          WRITE: / l_str1.
        ENDLOOP.
        WRITE: /.
      ENDFORM.                    "get_xml_table
    *&      Form  process_dom
      FORM process_dom USING document TYPE REF TO if_ixml_document.
        DATA: node      TYPE REF TO if_ixml_node,
              iterator  TYPE REF TO if_ixml_node_iterator,
              nodemap   TYPE REF TO if_ixml_named_node_map,
              attr      TYPE REF TO if_ixml_node,
              name      TYPE string,
              prefix    TYPE string,
              value     TYPE string,
              indent    TYPE i,
              count     TYPE i,
              index     TYPE i.
        node ?= document.
        CHECK NOT node IS INITIAL.
        ULINE.
        WRITE: /.
        WRITE: /' DOM-TREE'.
        WRITE: /.
        IF node IS INITIAL. EXIT. ENDIF.
      create a node iterator
        iterator  = node->create_iterator( ).
      get current node
        node = iterator->get_next( ).
      loop over all nodes
        WHILE NOT node IS INITIAL.
          indent = node->get_height( ) * 2.
          indent = indent + 20.
          CASE node->get_type( ).
            WHEN if_ixml_node=>co_node_element.
            element node
              name    = node->get_name( ).
              nodemap = node->get_attributes( ).
              WRITE: / 'ELEMENT  :'.
              WRITE: AT indent name COLOR COL_POSITIVE INVERSE.
              IF NOT nodemap IS INITIAL.
              attributes
                count = nodemap->get_length( ).
                DO count TIMES.
                  index  = sy-index - 1.
                  attr   = nodemap->get_item( index ).
                  name   = attr->get_name( ).
                  prefix = attr->get_namespace_prefix( ).
                  value  = attr->get_value( ).
                  WRITE: / 'ATTRIBUTE:'.
                  WRITE: AT indent name  COLOR COL_HEADING INVERSE, '=',
                                   value COLOR COL_TOTAL   INVERSE.
                ENDDO.
              ENDIF.
            WHEN if_ixml_node=>co_node_text OR
                 if_ixml_node=>co_node_cdata_section.
            text node
              value  = node->get_value( ).
              WRITE: / 'VALUE     :'.
              WRITE: AT indent value COLOR COL_GROUP INVERSE.
          ENDCASE.
        advance to next node
          node = iterator->get_next( ).
        ENDWHILE.
      ENDFORM.                    "process_dom
    Any help would be highly apperciated.
    regards,
    Jessica Sam

    Pavel Vera,
    With your example i tries doing the following .....
    I tried  to convert the data of XML file to internal table data. I am collecting the data in internal table to do goos recipt with that data.
    Please find my XML file, ABAP pgm and XSLT pgm . I donu2019t know what I am missing I am not getting any output. I donu2019t know what is wrong please help me with this
    Below is my XML file, My code and XSLT Program. In the below XML file I need to collect Vendor Number, Order Number, and Date tags which occur only once for one XML file.
    I also need to collect the following tags from <Shipmentdetail>
    <Shipmentdetail> has following child nodes and I need to collect them
    TrackingNumber
    Freight
    Weight
    ShipmentDate
    ShipmentMethod
    Need to collect to collect the following tags from <ProductInformation>
    <ProductInformation> has following child nodes and I need to collect them
        LineNumber
        SKUNumber
        OrderedQuantity
        ShippedQuantity
        UOM
    The <Shipmentdetail> and <ProductInformation> are child nodes of <OrderShipment>
    The <Shipmentdetail> occurs only ones but the <ProductInformation> can occur once or many times and will be dynamic and differs depening on the input file.
    My XML file is as follows
    <?xml version="1.0" encoding="iso-8859-1" ?>
    - <ShipmentHeader>
      <AccountID />
    - <OrderShipment>
          <VendorNumber>1000</VendorNumber>
          <OrderNumber>P00009238</OrderNumber>
          <OrderType>Stock</OrderType>
          <Company />
          <Division />
         <Department />
         <Date>20061120</Date>
         <CartonCount>2</CartonCount>
         <ShipAllProducts>No</ShipAllProducts>
    -             <ShipmentDetail>
                      <TrackingNumber>1ZR3W891PG47477811</TrackingNumber>
                      <Freight>000000010000</Freight>
                      <ShipmentDate>20061120</ShipmentDate>
                      <ShipmentMethod>UPS1PS</ShipmentMethod>
                 </ShipmentDetail>
    -            <ProductInformation>
                     <LineNumber>000000001</LineNumber>
                     <SKUNumber>110FR</SKUNumber>
                     <AdvSKUNumber>003 4518</AdvSKUNumber>
                     <SKUID />
                     <OrderedQuantity>00000001000000</OrderedQuantity>
                     <ShippedQuantity>00000001000000</ShippedQuantity>
                     <UOM>EA</UOM>
                     <Factor>1</Factor>
                </ProductInformation>
    -           <ProductInformation>
                    <LineNumber>000000002</LineNumber>
                    <SKUNumber>938EN</SKUNumber>
                    <AdvSKUNumber>001 7294</AdvSKUNumber>
                    <SKUID />
                    <OrderedQuantity>00000000450000</OrderedQuantity>
                    <ShippedQuantity>00000000450000</ShippedQuantity>
                    <UOM>EA</UOM>
                    <Factor>1</Factor>
                </ProductInformation>
    -           <CaseInformation>
                   <LineNumber>000000001</LineNumber>
                   <SKUNumber>110FR</SKUNumber>
                   <AdvSKUNumber>003 4518</AdvSKUNumber>
                   <SKUID />
                   <SSCCNumber>00000001668000002487</SSCCNumber>
                   <CaseQuantity>00000001000000</CaseQuantity>
                   <UOM>EA</UOM>
                   <Factor>1</Factor>
                 </CaseInformation>
                 <CaseInformation>
                   <LineNumber>000000001</LineNumber>
                   <SKUNumber>110FR</SKUNumber>
                   <AdvSKUNumber>003 4518</AdvSKUNumber>
                   <SKUID />
                   <SSCCNumber>00000001668000002487</SSCCNumber>
                   <CaseQuantity>00000001000000</CaseQuantity>
                   <UOM>EA</UOM>
                   <Factor>1</Factor>
                 </CaseInformation>
    -  </OrderShipment>
      </ShipmentHeader>
    My Program
    TYPE-POOLS abap.
    CONSTANTS gs_file TYPE string VALUE 'C:\temp\test.xml'.
    * This is the structure for the data from the XML file
    TYPES: BEGIN OF ts_shipment,
             VendorNumber(10)     TYPE n,
             OrderNumber(20)      TYPE n,
             OrderType(8)         TYPE c,
             Date(8)              TYPE c,
           END OF ts_shipment.
    TYPES: BEGIN OF ts_shipmentdetail,
             TrackingNumber(30)     TYPE n,
             Freight(12)            TYPE n,
             Weight(14)             TYPE n,
             ShipmentDate(8)        TYPE c,
             ShipmentMethod(8)      TYPE c,
             END OF ts_shipmentdetail.
    TYPES: BEGIN OF ts_productinformation,
             LineNumber(9)          TYPE n,
             SKUNumber(20)          TYPE c,
             OrderedQuantity(14)    TYPE n,
             ShippedQuantity(14)    TYPE n,
             UOM(4)                 TYPE c,
             END OF ts_productinformation.
    * Table for the XML content
    DATA: gt_itab       TYPE STANDARD TABLE OF char2048.
    * Table and work ares for the data from the XML file
    DATA: gt_shipment               TYPE STANDARD TABLE OF ts_shipment,
          gs_shipment               TYPE ts_shipment.
    DATA: gt_shipmentdetail         TYPE STANDARD TABLE OF ts_shipmentdetail,
          gs_shipmentdetail         TYPE ts_shipmentdetail.
    DATA: gt_productinformation     TYPE STANDARD TABLE OF ts_productinformation,
          gs_productinformation     TYPE ts_productinformation.
    * Result table that contains references
    * of the internal tables to be filled
    DATA: gt_result_xml TYPE abap_trans_resbind_tab,
          gs_result_xml TYPE abap_trans_resbind.
    * For error handling
    DATA: gs_rif_ex     TYPE REF TO cx_root,
          gs_var_text   TYPE string.
    * Get the XML file from your client
    CALL METHOD cl_gui_frontend_services=>gui_upload
      EXPORTING
        filename                = gs_file
      CHANGING
        data_tab                = gt_itab
      EXCEPTIONS
        file_open_error         = 1
        file_read_error         = 2
        no_batch                = 3
        gui_refuse_filetransfer = 4
        invalid_type            = 5
        no_authority            = 6
        unknown_error           = 7
        bad_data_format         = 8
        header_not_allowed      = 9
        separator_not_allowed   = 10
        header_too_long         = 11
        unknown_dp_error        = 12
        access_denied           = 13
        dp_out_of_memory        = 14
        disk_full               = 15
        dp_timeout              = 16
        not_supported_by_gui    = 17
        error_no_gui            = 18
        OTHERS                  = 19.
    IF sy-subrc <> 0.
      MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
              WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    ENDIF.
    * Fill the result table with a reference to the data table.
    * Within the XSLT stylesheet, the data table can be accessed with
    * "ISHIPMENT".
    GET REFERENCE OF gt_shipment INTO gs_result_xml-value.
    gs_result_xml-name = 'ISHIPMENT'.
    APPEND gs_result_xml TO gt_result_xml.
    * Fill the result table with a reference to the data table.
    * Within the XSLT stylesheet, the data table can be accessed with
    * "ISHIPDET".
    GET REFERENCE OF gt_shipmentdetail INTO gs_result_xml-value.
    gs_result_xml-name = 'ISHIPDET'.
    APPEND gs_result_xml TO gt_result_xml.
    * Fill the result table with a reference to the data table.
    * Within the XSLT stylesheet, the data table can be accessed with
    * "IPRODDET".
    GET REFERENCE OF gt_productinformation  INTO gs_result_xml-value.
    gs_result_xml-name = 'IPRODDET'.
    APPEND gs_result_xml TO gt_result_xml.
    * Perform the XSLT stylesheet
    TRY.
        CALL TRANSFORMATION z_xml_to_abap3
        SOURCE XML gt_itab
        RESULT (gt_result_xml).
      CATCH cx_root INTO gs_rif_ex.
        gs_var_text = gs_rif_ex->get_text( ).
        MESSAGE gs_var_text TYPE 'E'.
    ENDTRY.
    * Writing the data from file for gt_shipment
    *Collecting the Shipping Data from the XML file to internal table gt_shipment
    *and writing the data to the screen
    LOOP AT gt_shipment INTO gs_shipment.
      WRITE: / 'VendorNumber:', gs_shipment-VendorNumber.
      WRITE: / 'OrderNumber :', gs_shipment-OrderNumber.
      WRITE: / 'OrderType  :', gs_shipment-OrderType.
      WRITE: / 'Date  :',      gs_shipment-Date.
      WRITE : /.
    ENDLOOP. "gt_shipment.
    LOOP AT gt_shipmentdetail INTO gs_shipmentdetail.
      WRITE: / 'TrackingNumber:',     gs_shipmentdetail-TrackingNumber.
      WRITE: / 'Freight :',           gs_shipmentdetail-Freight.
      WRITE: / 'Weight  :',           gs_shipmentdetail-Weight.
      WRITE: / 'ShipmentDate  :',     gs_shipmentdetail-ShipmentDate.
    * WRITE: / 'ShipmentMethod  :'    gs_shipmentdetail-ShipmentMethod
      WRITE : /.
    ENDLOOP. "gt_shipmentdetail.
    LOOP AT gt_productinformation INTO gs_productinformation.
      WRITE: / 'LineNumber:',         gs_productinformation-LineNumber.
      WRITE: / 'SKUNumber :',         gs_productinformation-SKUNumber.
      WRITE: / 'OrderedQuantity  :',  gs_productinformation-OrderedQuantity.
      WRITE: / 'ShippedQuantity  :',  gs_productinformation-ShippedQuantity.
      WRITE: / 'UOM  :',              gs_productinformation-UOM.
      WRITE : /.
    ENDLOOP. "gt_productinformation.
    XSLT Program
    <xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
      <xsl:output encoding="iso-8859-1" indent="yes" method="xml" version="1.0"/>
      <xsl:strip-space elements="*"/>
      <xsl:template match="/">
        <asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
          <asx:values>
            <ISHIPMENT>
              <xsl:apply-templates select="//OrderShipment"/>
            </ISHIPMENT>
          </asx:values>
        </asx:abap>
      </xsl:template>
      <xsl:template match="OrderShipment">
        <item>
          <VENDORNUMBER>
            <xsl:value-of select="VendorNumber"/>
          </VENDORNUMBER>
          <ORDERNUMBER>
            <xsl:value-of select="OrderNumber"/>
          </ORDERNUMBER>
          <ORDERTYPE>
            <xsl:value-of select="OrderType"/>
          </ORDERTYPE>
          <DATE>
            <xsl:value-of select="Date"/>
          </DATE>
        </item>
      </xsl:template>
      <xsl:template match="/">
        <asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
          <asx:values>
            <ISHIPDET>
              <xsl:apply-templates select="//OrderShipment/ShipmentDetail"/>
            </ISHIPDET>
          </asx:values>
        </asx:abap>
      </xsl:template>
      <xsl:template match="ShipmentDetail">
        <item>
          <TRACKINGNUMBER>
            <xsl:value-of select="TrackingNumber"/>
          </TRACKINGNUMBER>
          <FREIGHT>
            <xsl:value-of select="Freight"/>
          </FREIGHT>
          <SHIPMENTDATE>
            <xsl:value-of select="ShipmentDate"/>
          </SHIPMENTDATE>
          <SHIPMENTMETHOD>
            <xsl:value-of select="ShipmentMethod"/>
          </SHIPMENTMETHOD>
        </item>
      </xsl:template>
    </xsl:transform> .
    Any help is highly appreciated. If anyone encountered this situation before please let me know where i am going wrong in my XSLT transformation.
    Any Help will be highly apppreciated. Thanks in advance
    Regards,
    Jessica   Sam

Maybe you are looking for

  • Repairing display due to dead pixels

    ive had my 2nd 30in display and now seeing 4 -5 dead pixels ... due to the type of work i do the positioning of these are VERY annoying. I spoke to AC and they are willing to repair my display meaning that the casing will remain the same but i guess

  • No audio from dv9720us vista

    I have reloaded OS (VISTA x64) on my LP.  Device manager indicates no driver installed.  Have downloaded HP driver support apps and they do not find any errors as does several other driver programs that I have tried.  Manually loading RealTek audio d

  • CSCts69270 - CCX CTI ports may stuck in out-of-service state when UCM Upgrade/Restart

    Symptom: CCX CTI ports (RP & IVR) may stuck in out-of-service state during CUCM upgrade or Restart. Conditions: During CUCM upgrade the The UCCX CTI ports (RoutePoint Triggers and few IVR ports) went into out-of-service state . This condition may hap

  • Upgrading ODI from 11.1.1.5.0 to 11.1.1.6.4

    Hello, Did anyone upgraded ODI from 11.1.1.5 to 11.1.1.6.4? Is there any documentation available for this patching? Can someone please advise me the steps I need to follow? Thanks.

  • Desfasaje

    hola,llevo grabando y editando audio propio hace un año,con el cool edit 2.0, no he tenido mayores problemas, pero hace poco cambiamos la placa de sonido integrada de la pc, y colocamos una creative audigy 7.1, desde entonces sucede lo mismo, la prim