Xml parsing to get only first node.

Hello,
I am trying to parse the following xml tag. I want only the first node of the ORDER_PAYMENT_DETAIL element, and then other node element.
I would appreciate your help.
<ORDER_PAYMENTS>
<ORDER_PAYMENT>
<ORDER_NO>20000404</ORDER_NO>
<PAYMENT_METHOD_ID>5</PAYMENT_METHOD_ID>
<PAYMENT_SEQ_NO>0</PAYMENT_SEQ_NO>
<CHARGE_AMOUNT>50</CHARGE_AMOUNT>
<CHARGE_CURRENCY>USD</CHARGE_CURRENCY>
<ORDER_PAYMENT_DETAILS>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>2</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>test1</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>1</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>CC</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>3</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>4222222222222</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>4</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>01</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>5</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>2012</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>10</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>AP53-7457490</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>11</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>ID575754W34623525SDT</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>12</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>KEY111222333444555FSDRT</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>2</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>test2</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>1</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>CC</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>3</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>4444444444444448</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>4</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>02</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>5</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>2013</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>10</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>AP53-7457490</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>11</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>ID575754W34623525SDT</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>12</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>KEY111222333444555FSDRT</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
</ORDER_PAYMENT_DETAILS>
</ORDER_PAYMENT>
<ORDER_PAYMENT>
<ORDER_NO>20000404</ORDER_NO>
<PAYMENT_METHOD_ID>1</PAYMENT_METHOD_ID>
<PAYMENT_SEQ_NO>1</PAYMENT_SEQ_NO>
<CHARGE_AMOUNT>10.47</CHARGE_AMOUNT>
<CHARGE_CURRENCY>USD</CHARGE_CURRENCY>
<ORDER_PAYMENT_DETAILS>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>2</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>test1</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>1</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>CC</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>3</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>4222222222222</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>4</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>01</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>5</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>2012</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>10</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>AP53-7457490</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>11</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>ID575754W34623525SDT</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>12</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>KEY111222333444555FSDRT</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>2</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>test2</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>1</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>CC</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>3</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>4444444444444448</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>4</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>02</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>5</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>2013</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>10</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>AP53-7457490</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>11</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>ID575754W34623525SDT</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
<ORDER_PAYMENT_DETAIL>
<ATTRIBUTE_ID>12</ATTRIBUTE_ID>
<ATTRIBUTE_VALUE>KEY111222333444555FSDRT</ATTRIBUTE_VALUE>
</ORDER_PAYMENT_DETAIL>
</ORDER_PAYMENT_DETAILS>
</ORDER_PAYMENT>
</ORDER_PAYMENTS>

Do you mean the full xml excluding all the ORDER_PAYMENT_DETAIL elements but the first?
SQL> select deletexml(colx,'//ORDER_PAYMENT_DETAIL[position()>1]').extract('/*')
  2  from tabx;
DELETEXML(X,'//ORDER_PAYMENT_DETAIL[POSITION()>1]').EXTRACT('/*')
<ORDER_PAYMENTS>
  <ORDER_PAYMENT>
    <ORDER_NO>20000404</ORDER_NO>
    <PAYMENT_METHOD_ID>5</PAYMENT_METHOD_ID>
    <PAYMENT_SEQ_NO>0</PAYMENT_SEQ_NO>
    <CHARGE_AMOUNT>50</CHARGE_AMOUNT>
    <CHARGE_CURRENCY>USD</CHARGE_CURRENCY>
    <ORDER_PAYMENT_DETAILS>
      <ORDER_PAYMENT_DETAIL>
        <ATTRIBUTE_ID>2</ATTRIBUTE_ID>
        <ATTRIBUTE_VALUE>test1</ATTRIBUTE_VALUE>
      </ORDER_PAYMENT_DETAIL>
    </ORDER_PAYMENT_DETAILS>
  </ORDER_PAYMENT>
  <ORDER_PAYMENT>
    <ORDER_NO>20000404</ORDER_NO>
    <PAYMENT_METHOD_ID>1</PAYMENT_METHOD_ID>
    <PAYMENT_SEQ_NO>1</PAYMENT_SEQ_NO>
    <CHARGE_AMOUNT>10.47</CHARGE_AMOUNT>
    <CHARGE_CURRENCY>USD</CHARGE_CURRENCY>
    <ORDER_PAYMENT_DETAILS>
      <ORDER_PAYMENT_DETAIL>
        <ATTRIBUTE_ID>2</ATTRIBUTE_ID>
        <ATTRIBUTE_VALUE>test1</ATTRIBUTE_VALUE>
      </ORDER_PAYMENT_DETAIL>
    </ORDER_PAYMENT_DETAILS>
  </ORDER_PAYMENT>
</ORDER_PAYMENTS>Note that the ".extract('/*')" is there only for formatting...
Max
http://oracleitalia.wordpress.com

Similar Messages

  • Multi mapping after container append operation gets only first message

    XI environment with SP16
    I have a simple integration process scenario with a container operation collecting two messages (identical).
    The input to the interface mapping correctly has 0..outbounded and the map is just a java pass through. The process consists of just one receive step, two container operations, a transformation step and a async send step. The output received only contains the first
    message in the collection.
    Is there any obvious reason why this is happening? (I have checked and rechecked for proper types, attributes, and tested the transformation step individually.
    Thanks in advance for any help.
    Krish

    Hi Henrique,
    Thanks for your response.
    I did have 0..unbounded in the source message settings. (I did see the <Messsages>.. wrapper in the Test tab and in fact it works ok if we use Message Mapping (in my case where multiple messages are of the same type). However, when I have multiple (different) type messages, I got a Mapping..BaseruntimeException even though it worked ok during unit test.
    Now, if I have a Java mapping, it clearly does not pass multiple messages (with 0..unbounded in interface mapping for source). I only get the first in the collection.
    I have a feeling that XI does not do any preprocessing in the case of Java mapping step (including the wrapping of multiple messages). If that is true, then it is a bug.
    Another thing: when I have different type of messages as input - not a collection but distinct message types in the interface mapping - and if I have Java mapping, then I get an error "No Message interface defined for parameter 2" in the workflow log. But I am more concerned with why it does not wrap multiple messages and pass it to the java mapping transformation step.
    Regards,
    Krish

  • How to get only expanded node after open & close in CL_GUI_ALV_TREE?

    Hi,
    I have a tree structure using CL_GUI_ALV_TREE.
    I would like to capture only the expanded nodes AFTER open and close operation.
    If the user opens all the nodes and then closes them, I get all the nodes when using GET_EXPANDED_NODES.
    I want to get only the expanded nodes that the user currently sees on the screen (so in open and close you will not get it as open).
    whatever I tried doesn't work.
    Do you have any idea how to do it?
    Thanks,
    Itay

    this methods calls method of attribute MR_COLUMN_TREE without setting the parameter NO_HIDDEN_NODES to 'X'
    that's why you get every node that is "open" even if not "visible"
    as this attribute MR_COLUMN_TREE is protected, you cannot access it...
    you should consider using an object of class CL_GUI_COLUMN_TREE directly in place of CL_GUI_ALV_TREE so that you can call the method with this parameter set...
    you will have far more to do by hand but you will get more flexibility...

  • PL/SQL XML Parser (problem getting text of a node)

    I am trying to get the contents of an ELEMENT (node with a CDATA section) using xmldom.getNodeValue(). However, it seems that there is a MAXIMUM number of characters that I can get back.
    I think I've found a work-around using xmldom.writeToBuffer() which seems to write all of the CDATA contents to a VARCHAR2 variable. Now my problem is that it is using strings like '&#60' and '&#38'. I recognize these strings as being "internal representations of '<' and '&' respectively. I'd not have to replace every occurence of these types of strings with the ASCII equivalent -especially since I don't know all of the possible '&#nn' strings that may crop up.
    Help!

    The use of "//" or "\\" appears to be a bug in JServer. It has
    been filed. You should not specify the path as a shared
    directory as a workaround.
    Oracle XML Team
    http://technet.oracle.com
    Oracle Technology Network
    Andre (guest) wrote:
    : Oracle 8.1.5 database on NT
    : When i try running the example with command:
    : SQL*Plus> exec domsample
    : ('//SERVER_03/ORACLE/xml_tmp','family.xml', 'err.txt');
    : I get the following error:
    : ERROR at line 1:
    : ORA-20100: Error occurred while parsing:
    : //ORACLE/xml_tmp/err.txt
    : ORA-06512: at "OEF1_MGR.XMLPARSER", line 43
    : ORA-06512: at "OEF1_MGR.XMLPARSER", line 120
    : ORA-06512: at "OEF1_MGR.DOMSAMPLE", line 80
    : ORA-06512: at line 1
    : If i use backward-slashes '\' which should be OK for NT i get:
    : ORA-20100: Error occurred while parsing:
    : \\ORACLE\xml_tmp/err.txt
    : I tried using a directory (create directory ...) but this
    : results in the same error.
    : Thus anyone now how it should be done?
    : Thanks
    null

  • XML Parsing with Java - Only some attributes have start and end tags

    Hello,
    I am trying to interpret the XML response from a server after a HTTP request is sent to it. I have modified an example off Wikipedia below to give an example of what it looks like.
    Example XML:
    <Asset name="bread" prep_time="5 mins" cook_time="3 hours">
    <Attribute name="Ingredient: ">Flour</Attribute>
    <Attribute name="Ingredient: ">Water</Attribute>
    <Attribute name="Used in Recipes:" />
    </recipe>
    I have been trying to display the above XML in a format such as:
    name: bread prep_time: 5 mins cook_time: 3 hours
    Ingredient: Flour
    Ingredient: Water
    Used in Recipes:
    Right now I have been trying to do it manually using indexOf and substring of the XML text, but I would like to find a better way of doing this. I have found some examples online that show had to deal with cases such as
    <person>
    <first>Kiran</first>
    <last>Pai</last>
    <age>22</age>
    </person>
    but I do not know what to do when I encounter something like the last item, when there are no "Used in Recipe" items, and it ends with a />, instead of an ending tag </Attribute>.
    Are there any suggestions as to how to handle the example XML code that I have posted?
    Any help would be appreciated. Thanks.

    jtahlborn wrote:
    Tolls wrote:
    I suppose so, but since the idea is to turn it into text in a different format, XSLT strikes me as a better fit than hand crafting it.i agree if the end goal is formatted text. however, i wasn't sure if the OP was just writing some test code to figure out how to access the data or if the formatted text was the final desired output.No, true. It is open to interpretation.
    jschell wrote:
    (Quoting the same bit)
    As long as one is mindful of the potential performance and maintenance impacts of course.Again, it depends what he's doing...true. I was making some assumptions, since (as usual) we don't really know the requirements beyond a base technical one (ie "I have this, and I need it to look like this"). In general, though, if you have XML data and you need it formatted differently then I'd say your first port of call ought to be transformation.
    As for maintenance, I'd say it's easier to maintain a stylesheet than to modify Java, which is why I say it ought to be the start point.
    Of course, YMMV.

  • Repeating nodes using FOR loop but when concating XML string then concating only last iteration of FOr loop ??

    I stuck with a problem that I am using FOR loop for generating repeating nodes. 
    Now when I concat the generated node in the main node then I got only last iteration of that FOR loop.
    can anybody suggest me a way to handle this error....
    FOR i IN 1..pl_phone_tab.Count
    LOOP
    SELECT xmlelement("Phone"     
                                        ,xmlelement("PHONETYPE",xmlattributes('01' AS "dmnADRP_PHONETYPE"),pl_phone_tab(i).p_phtype_tab)
                         ,xmlelement("PHONENUM",pl_phone_tab(i).p_phnum_tab)
                         ,xmlelement("PRIMARY_CONTACT",pl_phone_tab(i).p_prcon_tab)
    INTO p_phone_xml
    FROM dual; END LOOP;
    SELECT xmlelement("PhoneInfo"
                           ,xmlconcat(p_phone_xml))
    INTO p_phone_info_xml
    FROM dual;
    here I am getting only one node but there has to be two nodes for PHONE node

    Not that I'm encouraging you but here are two standalone examples explaining how to do what you want :
    1) Loop through the input collection and append each node to its target container :
    SQL> declare
      2 
      3    type t_emp_tab is table of scott.emp%rowtype;
      4 
      5    emp_tab       t_emp_tab;
      6    emp_info_xml  xmltype;
      7    emp_xml       xmltype;
      8 
      9  begin
    10 
    11    -- filling emp_tab with data
    12    select e.*
    13    bulk collect into emp_tab
    14    from scott.emp e
    15    where e.deptno = 10;
    16 
    17    emp_info_xml := xmltype('<EmpInfo/>');
    18 
    19    -- looping through emp collection and appending to EmpInfo element
    20    for i in 1 .. emp_tab.count loop
    21      select appendchildxml(
    22               emp_info_xml
    23             , '/*'
    24             , xmlelement("Emp"
    25               , xmlattributes(emp_tab(i).empno as "id")
    26               , xmlforest(
    27                   emp_tab(i).ename as "Name"
    28                 , emp_tab(i).job as "Job"
    29                 )
    30               )
    31             )
    32      into emp_info_xml
    33      from dual;
    34    end loop;
    35 
    36    dbms_output.put_line(emp_info_xml.getclobval(1,2));
    37 
    38  end;
    39  /
    <EmpInfo>
      <Emp id="7782">
        <Name>CLARK</Name>
        <Job>MANAGER</Job>
      </Emp>
      <Emp id="7839">
        <Name>KING</Name>
        <Job>PRESIDENT</Job>
      </Emp>
      <Emp id="7934">
        <Name>MILLER</Name>
        <Job>CLERK</Job>
      </Emp>
    </EmpInfo>
    PL/SQL procedure successfully completed
    2) Build a secondary collection of XML nodes and use XMLAgg to aggregate them in one go :
    SQL> declare
      2 
      3    type t_emp_tab is table of scott.emp%rowtype;
      4 
      5    emp_tab       t_emp_tab;
      6    emp_info_xml  xmltype;
      7    emp_xml_tab   xmlsequencetype := xmlsequencetype();
      8 
      9  begin
    10 
    11    -- filling emp_tab with data
    12    select e.*
    13    bulk collect into emp_tab
    14    from scott.emp e
    15    where e.deptno = 10;
    16 
    17    -- looping through emp collection and appending to the collection of Emp nodes
    18    for i in 1 .. emp_tab.count loop
    19 
    20      emp_xml_tab.extend;
    21 
    22      select xmlelement("Emp"
    23             , xmlattributes(emp_tab(i).empno as "id")
    24             , xmlforest(
    25                 emp_tab(i).ename as "Name"
    26               , emp_tab(i).job as "Job"
    27               )
    28             )
    29      into emp_xml_tab(i)
    30      from dual;
    31 
    32    end loop;
    33 
    34    select xmlelement("EmpInfo", xmlagg(t.column_value))
    35    into emp_info_xml
    36    from table(emp_xml_tab) t ;
    37 
    38    dbms_output.put_line(emp_info_xml.getclobval(1,2));
    39 
    40  end;
    41  /
    <EmpInfo>
      <Emp id="7782">
        <Name>CLARK</Name>
        <Job>MANAGER</Job>
      </Emp>
      <Emp id="7839">
        <Name>KING</Name>
        <Job>PRESIDENT</Job>
      </Emp>
      <Emp id="7934">
        <Name>MILLER</Name>
        <Job>CLERK</Job>
      </Emp>
    </EmpInfo>
    PL/SQL procedure successfully completed
    Both solutions give the same output.
    Test them both and see which one fits better into your scenario.

  • XML Parsing - problem with a value of an element if starting with space

    Hi Experts,
    I need your valuable guidence to get out of a problem in parsing an XML file.
    An XML file is read into xstring variable and it is processed to be split into the corresponding itab.
    Please find the code below
    types: begin of ty-itab,
                field(4096),
              end of ty-itab.
    Data:
    g_ixml                       TYPE REF TO if_ixml,
    g_ixmldocument               TYPE REF TO if_ixml_document,
    g_ixmlstreamfactory          TYPE REF TO if_ixml_stream_factory,
    g_ixmlstream                 TYPE REF TO if_ixml_istream,
    g_ixmlparser              TYPE REF TO if_ixml_parser,
    g_ixmlnodemainlist        TYPE REF TO if_ixml_node_list,
    g_ixmlnodelistmainelement TYPE REF TO if_ixml_node_list,
    g_sxmldata                TYPE string,
    g_ixmlnode                TYPE REF TO if_ixml_node.
      DATA: wa_xmltab TYPE xstring,
                itab type table of ty-itab.
    OPEN DATASET l_file IN BINARY MODE FOR INPUT MESSAGE v_msg.
    READ DATASET l_file INTO wa_xmltab.
    PERFORM f_create_xmltable USING wa_xmltab
                                  CHANGING v_msg.
    IF NOT v_msg IS INITIAL.
          msg = v_msg.
          EXIT.
        ELSE.
          itab[] = it_xmldata[].
        ENDIF.
    CLOSE DATASET l_file.
    Subroutine to convert xstring to char type ITAB.
    FORM f_create_xmltable USING  value(pi_inputxmlstring) TYPE xstring
                           CHANGING v_msg.
    *-- create the main factory
      g_ixml = cl_ixml=>create( ).
    *-- create the initial document
      g_ixmldocument = g_ixml->create_document( ).
    *-- create the stream factory
      g_ixmlstreamfactory = g_ixml->create_stream_factory( ).
    *create input stream
      g_ixmlstream = g_ixmlstreamfactory->create_istream_xstring( string =
    pi_inputxmlstring ).
    *-- create the parser
      g_ixmlparser = g_ixml->create_parser( stream_factory =
    g_ixmlstreamfactory
                                      istream        = g_ixmlstream
                                      document       = g_ixmldocument ).
    *-- parse the stream
      IF g_ixmlparser->parse( ) NE 0.
    *if parser cannot be created then give error exit
        IF g_ixmlparser->num_errors( ) NE 0.
          EXIT.
        ENDIF.
      ENDIF.
    *-- we don't need the stream any more, so let's close it...
      CALL METHOD g_ixmlstream->close( ).
      CLEAR g_ixmlstream.
    *get the number of main nodes of the XML document
      g_ixmlnodemainlist = g_ixmldocument->get_children( ).
    *set number of elemtns
      g_inummainelements = 0.
      g_imainelementsctr = 0.
      g_inummainelements = g_ixmlnodemainlist->get_length( ).
      g_ifirstlevelctr = 0.
    *loop through the document till all have nodes have been covered.
      WHILE g_ifirstlevelctr LT g_inummainelements.
    *get the first node
        g_ixmlnode = g_ixmlnodemainlist->get_item( g_ifirstlevelctr ).
    *check the type of node
        g_isnodeelement = g_ixmlnode->get_type( ).
    *if node is not of type Element then continue
    *because we have got to read only text from element nodes.
        IF g_isnodeelement NE c_nodeelement.
          g_ifirstlevelctr = g_ifirstlevelctr + 1.
          CONTINUE.
        ENDIF.
    *get nodes of the element just found.
        g_ixmlnodelistmainelement = g_ixmlnode->get_children( ).
    *get number of children of main element
        g_inumchildelements = g_ixmlnodelistmainelement->get_length( ).
    *loop trhough the number of children
        WHILE g_imainelementsctr LT g_inumchildelements.
          g_ixmlnodemainelement = g_ixmlnodelistmainelement->get_item(
        g_imainelementsctr ).
    *get type of node
          g_isnodeelement = g_ixmlnodemainelement->get_type( ).
          IF g_isnodeelement NE c_nodeelement.
            g_imainelementsctr = g_imainelementsctr + 1.
            CONTINUE.
          ENDIF.
    *get name of the node.
          g_selementvalue = g_ixmlnodemainelement->get_name( ).
    *get children of node
          g_childnodelist = g_ixmlnodemainelement->get_children( ).
          g_inumchildren =  g_childnodelist->get_length( ).
          g_ichildelementcounter = 0.
    *while there are number of children of node.loop through
          WHILE g_ichildelementcounter LT g_inumchildren.
    *get the child node
            g_childnode = g_childnodelist->get_item(
    g_ichildelementcounter ).
    *check the type of node
            g_isnodeelement = g_childnode->get_type( ).
    *if node is not of element type continue
            IF g_isnodeelement NE c_nodeelement.
              g_ichildelementcounter = g_ichildelementcounter + 1.
              CONTINUE.
            ENDIF.
    *otherwise get element name
            g_selementname = g_childnode->get_name( ).
    *get value stored in this node.
            g_selementvalue = g_childnode->get_value( ).
            g_numelem = g_inumchildren - 1.
            IF g_ichildelementcounter EQ g_numelem.
              CONCATENATE: g_slinedata g_selementvalue
                      INTO g_slinedata.
            ELSE.
    *      store the value of noide in delimiter ~ line
    *      Check for Invalid characters in file
                IF g_selementvalue CA '&'.
                  REPLACE ALL OCCURRENCES OF '&amp;' IN g_selementvalue WITH
                endif.
    *if value contains delimiter then error
                IF g_selementvalue CA '~'.             
                  V_MSG = text-003.
                  EXIT.
                ELSE.
                  CONCATENATE: g_slinedata g_selementvalue '~'  .
                  INTO g_slinedata.
                ENDIF.
            ENDIF.
    *continue
            g_ichildelementcounter = g_ichildelementcounter + 1.
          ENDWHILE.
          g_ichildelementcounter = 0.
    *increment the main element counter by one to go to the next node
          g_imainelementsctr = g_imainelementsctr  + 1.
    *move the current delimiter line creted to internal table to be given
    *back to the calling program
          MOVE g_slinedata TO wa_xmldata-data.
          APPEND wa_xmldata TO it_xmldata.
          MOVE '' TO g_slinedata.
          MOVE '' TO wa_xmldata-data.
        ENDWHILE.
    *increment counter to move to hte next node.
        g_ifirstlevelctr = g_ifirstlevelctr + 1.
        g_imainelementsctr = 0.
      ENDWHILE.
    ENDFORM.                    "f_create_xmltable
    XML structure
    <?xml version="1.0" encoding="utf-8"?>
    <ABCInbound xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="C:\XYZSchema\ABCInbound.xsd">
    <HH>
    <RecordType>HH</RecordType>
    <Source>ABC</Source>
    <Destination>XYZ</Destination>
    <TimeStamp>20050909220546</TimeStamp>
    </HH>
    <BH>
    <RecordType>BH</RecordType>
    <DocType>AB</DocType>
    <Reference>2205516125</Reference>
    <DocumentDate>20080909</DocumentDate>
    <PostingDate></PostingDate>
    <CompanyCode>ABC</CompanyCode>
    <Currency>INR</Currency>
    <ExchangeRate>1.0000</ExchangeRate>
    <Park></Park>
    <ItemNumber>2</ItemNumber>
    </BH>
    <BL>
    <RecordType>BL</RecordType>
    <Reference>2205516125</Reference>
    <RefLineItem>1</RefLineItem>
    <AcctType>K</AcctType>
    <DrCrIndicator>H</DrCrIndicator>
    <Account>01000003</Account>
    <Amount>364.00</Amount>
    <VendorName-1>TOM &amp; JERRY IS MY</VendorName-1>
    <VendorName-2> NAME TO BE PAID</VendorName-2>
    <VendorName-3>1987566Z</VendorName-3>
    <VendorName-4>22</VendorName-4>
    <Street>UCX STREET</Street>
    <City>ROAD 4</City>
    <PostalCode>515004</PostalCode>
    <Country>IND</Country>
    <ContactPerson></ContactPerson>
    <AlternatePayeeCode></AlternatePayeeCode>
    <AlternatePayeeName-1></AlternatePayeeName-1>
    <AlternatePayeeName-2></AlternatePayeeName-2>
    <AlternatePayeeName-3></AlternatePayeeName-3>
    <PaymentTerms></PaymentTerms>
    <BaselineDate></BaselineDate>
    <PaymentMethods></PaymentMethods>
    <Allocation></Allocation>
    <LineItemText>item text</LineItemText>
    <TaxCode></TaxCode>
    <TaxAmount>0.00</TaxAmount>
    <WHTaxCode></WHTaxCode>
    <WHTaxbase>0.00</WHTaxbase>
    <Fund></Fund>
    <FundCenter></FundCenter>
    <CostCenter></CostCenter>
    <InternalOrder></InternalOrder>
    <TaxAutomatically></TaxAutomatically>
    <SpecialGLIndicator></SpecialGLIndicator>
    </BL>
    <TT>
    <RecordType>TT</RecordType>
    <TotalRecords>1</TotalRecords>
    <TotalValue>222</TotalValue>
    </TT>
    </ABCInbound>
    when the above xml file is read and populated into ITAB, for element vendorname-2 which has a space in first position , that space is ignored.
    This is being used for a FB01 posting and vendor is paid based on Name1+Name2 printed on cheque and due to the space ignoring problem, the vendor name is displayed wrongly thus causing problems.
    I appreciate if someone could guide me thru and help me in solving this problem.
    How to preserve the leading or trailing space.
    g_selementvalue = g_childnode->get_value( ).
    when i check g_selementvalue, space is ignored.
    i will be greateful if someone could guide me through.
    Regards,
    Simha
    Edited by: Simha on Dec 11, 2008 10:49 AM

    0.02: A C C E P T: Request="NEXT"
    0.06: Fetch session state from database
    0.08: ...Check session ... owner
    0.08: ...Metadata: Fetch Page, Computation, Process, and Branch
    0.08: Session: Fetch session header information
    0.08: ...Metadata: Fetch page attributes for application ..., page 330
    0.08: ...Validate item page affinity.
    0.08: ...Validate hidden_protected items.
    0.08: ...Check authorization security schemes
    0.08: Session State: Save form items and p_arg_values
    0.08: ...Session State: Save "P330_PROJECT" - saving same value: ""
    0.09: ...Session State: Saved Item "P330_SHUTTLE" New Value=""
    0.09: Processing point: ON_SUBMIT_BEFORE_COMPUTATION
    0.09: Branch point: BEFORE_COMPUTATION
    0.09: Computation point: AFTER_SUBMIT
    0.09: Tabs: Perform Branching for Tab Requests
    0.09: Branch point: BEFORE_VALIDATION
    0.09: ...Evaluating Branch: BEFORE_VALIDATION type: "REDIRECT_URL" button: 12904321314585385 branch: (Unconditional)
    0.09: Perform validations:
    0.09: ...Item Not Null Validation: P330_SHUTTLE
    0.09: ...Validation did NOT pass
    This is from debugging, what does the point "0.09: ...Session State: Saved Item "P330_SHUTTLE" New Value="" "
    mean ? I think it means, that the Shuttle somehow sets itself to null ?! but i dont understand why...
    There is no computation or anything that deletes the shuttle, the page is quite small, there is not much more than the shuttle and the validations and computations to give default value and transforming the shuttle items into a collection to continue working with the IDs.
    I dont check whats the problem
    Edited by: user12154443 on 21.07.2010 09:47

  • Error in parsing: SAX2 driver class com.sun.xml.parser not found

    Hi I have this exception
    Error in parsing: SAX2 driver class com.sun.xml.parser not found
    when I try to run the examples from the book xml and java
    I have added the following jar files to the class path that i have download form java.sun.com
    xml.jar
    xalan.jar
    jaxp.jar
    crimson.jar
    Please can anyone tell me what is missing or wrong..the code must be right since written by oreilly... please have u any ideA
    XMLReaderFactory.createXMLReader(
    // "org.apache.xerces.parsers.SAXParser");
                        "com.sun.xml.parser");//
    I HAVE ONLY CHANGED THIS LINE FROM THE apache parser..to com.sun.xml.parser
    THIS IS THE ALL CODE
    import java.io.IOException;
    import org.xml.sax.Attributes;
    import org.xml.sax.ContentHandler;
    import org.xml.sax.ErrorHandler;
    import org.xml.sax.Locator;
    import org.xml.sax.SAXException;
    import org.xml.sax.SAXParseException;
    import org.xml.sax.XMLReader;
    import org.xml.sax.helpers.XMLReaderFactory;
    import org.xml.sax.*;
    * <b><code>SAXParserDemo</code></b> will take an XML file and parse it using SAX,
    * displaying the callbacks in the parsing lifecycle.
    * @author Brett McLaughlin
    * @version 1.0
    public class SAXParserDemo {
    * <p>
    * This parses the file, using registered SAX handlers, and output
    * the events in the parsing process cycle.
    * </p>
    * @param uri <code>String</code> URI of file to parse.
    public void performDemo(String uri) {
    System.out.println("Parsing XML File: " + uri + "\n\n");
    // Get instances of our handlers
    ContentHandler contentHandler = new MyContentHandler();
    ErrorHandler errorHandler = new MyErrorHandler();
    try {
    // Instantiate a parser
    XMLReader parser =
    XMLReaderFactory.createXMLReader(
    // "org.apache.xerces.parsers.SAXParser");
                        "com.sun.xml.parser");// I HAVE ONLY CHANGED THIS LINE FROM THE apache parser..
    // Register the content handler
    parser.setContentHandler(contentHandler);
    // Register the error handler
    parser.setErrorHandler(errorHandler);
    // Parse the document
    parser.parse(uri);
    } catch (IOException e) {
    System.out.println("Error reading URI: " + e.getMessage());
    } catch (SAXException e) {
    System.out.println("Error in parsing: " + e.getMessage());
    * <p>
    * This provides a command line entry point for this demo.
    * </p>
    public static void main(String[] args) {
    // if (args.length != 1) {
    // System.out.println("Usage: java SAXParserDemo [XML URI]");
    // System.exit(0);
    //String uri = args[0];
    SAXParserDemo parserDemo = new SAXParserDemo();
    parserDemo.performDemo("content.xml");
    * <b><code>MyContentHandler</code></b> implements the SAX
    * <code>ContentHandler</code> interface and defines callback
    * behavior for the SAX callbacks associated with an XML
    * document's content.
    class MyContentHandler implements ContentHandler {
    /** Hold onto the locator for location information */
    private Locator locator;
    * <p>
    * Provide reference to <code>Locator</code> which provides
    * information about where in a document callbacks occur.
    * </p>
    * @param locator <code>Locator</code> object tied to callback
    * process
    public void setDocumentLocator(Locator locator) {
    System.out.println(" * setDocumentLocator() called");
    // We save this for later use if desired.
    this.locator = locator;
    * <p>
    * This indicates the start of a Document parse - this precedes
    * all callbacks in all SAX Handlers with the sole exception
    * of <code>{@link #setDocumentLocator}</code>.
    * </p>
    * @throws <code>SAXException</code> when things go wrong
    public void startDocument() throws SAXException {
    System.out.println("Parsing begins...");
    * <p>
    * This indicates the end of a Document parse - this occurs after
    * all callbacks in all SAX Handlers.</code>.
    * </p>
    * @throws <code>SAXException</code> when things go wrong
    public void endDocument() throws SAXException {
    System.out.println("...Parsing ends.");
    * <p>
    * This will indicate that a processing instruction (other than
    * the XML declaration) has been encountered.
    * </p>
    * @param target <code>String</code> target of PI
    * @param data <code>String</code containing all data sent to the PI.
    * This typically looks like one or more attribute value
    * pairs.
    * @throws <code>SAXException</code> when things go wrong
    public void processingInstruction(String target, String data)
    throws SAXException {
    System.out.println("PI: Target:" + target + " and Data:" + data);
    * <p>
    * This will indicate the beginning of an XML Namespace prefix
    * mapping. Although this typically occur within the root element
    * of an XML document, it can occur at any point within the
    * document. Note that a prefix mapping on an element triggers
    * this callback <i>before</i> the callback for the actual element
    * itself (<code>{@link #startElement}</code>) occurs.
    * </p>
    * @param prefix <code>String</code> prefix used for the namespace
    * being reported
    * @param uri <code>String</code> URI for the namespace
    * being reported
    * @throws <code>SAXException</code> when things go wrong
    public void startPrefixMapping(String prefix, String uri) {
    System.out.println("Mapping starts for prefix " + prefix +
    " mapped to URI " + uri);
    * <p>
    * This indicates the end of a prefix mapping, when the namespace
    * reported in a <code>{@link #startPrefixMapping}</code> callback
    * is no longer available.
    * </p>
    * @param prefix <code>String</code> of namespace being reported
    * @throws <code>SAXException</code> when things go wrong
    public void endPrefixMapping(String prefix) {
    System.out.println("Mapping ends for prefix " + prefix);
    * <p>
    * This reports the occurrence of an actual element. It will include
    * the element's attributes, with the exception of XML vocabulary
    * specific attributes, such as
    * <code>xmlns:[namespace prefix]</code> and
    * <code>xsi:schemaLocation</code>.
    * </p>
    * @param namespaceURI <code>String</code> namespace URI this element
    * is associated with, or an empty
    * <code>String</code>
    * @param localName <code>String</code> name of element (with no
    * namespace prefix, if one is present)
    * @param rawName <code>String</code> XML 1.0 version of element name:
    * [namespace prefix]:[localName]
    * @param atts <code>Attributes</code> list for this element
    * @throws <code>SAXException</code> when things go wrong
    public void startElement(String namespaceURI, String localName,
    String rawName, Attributes atts)
    throws SAXException {
    System.out.print("startElement: " + localName);
    if (!namespaceURI.equals("")) {
    System.out.println(" in namespace " + namespaceURI +
    " (" + rawName + ")");
    } else {
    System.out.println(" has no associated namespace");
    for (int i=0; i<atts.getLength(); i++)
    System.out.println(" Attribute: " + atts.getLocalName(i) +
    "=" + atts.getValue(i));
    * <p>
    * Indicates the end of an element
    * (<code></[element name]></code>) is reached. Note that
    * the parser does not distinguish between empty
    * elements and non-empty elements, so this will occur uniformly.
    * </p>
    * @param namespaceURI <code>String</code> URI of namespace this
    * element is associated with
    * @param localName <code>String</code> name of element without prefix
    * @param rawName <code>String</code> name of element in XML 1.0 form
    * @throws <code>SAXException</code> when things go wrong
    public void endElement(String namespaceURI, String localName,
    String rawName)
    throws SAXException {
    System.out.println("endElement: " + localName + "\n");
    * <p>
    * This will report character data (within an element).
    * </p>
    * @param ch <code>char[]</code> character array with character data
    * @param start <code>int</code> index in array where data starts.
    * @param end <code>int</code> index in array where data ends.
    * @throws <code>SAXException</code> when things go wrong
    public void characters(char[] ch, int start, int end)
    throws SAXException {
    String s = new String(ch, start, end);
    System.out.println("characters: " + s);
    * <p>
    * This will report whitespace that can be ignored in the
    * originating document. This is typically only invoked when
    * validation is ocurring in the parsing process.
    * </p>
    * @param ch <code>char[]</code> character array with character data
    * @param start <code>int</code> index in array where data starts.
    * @param end <code>int</code> index in array where data ends.
    * @throws <code>SAXException</code> when things go wrong
    public void ignorableWhitespace(char[] ch, int start, int end)
    throws SAXException {
    String s = new String(ch, start, end);
    System.out.println("ignorableWhitespace: [" + s + "]");
    * <p>
    * This will report an entity that is skipped by the parser. This
    * should only occur for non-validating parsers, and then is still
    * implementation-dependent behavior.
    * </p>
    * @param name <code>String</code> name of entity being skipped
    * @throws <code>SAXException</code> when things go wrong
    public void skippedEntity(String name) throws SAXException {
    System.out.println("Skipping entity " + name);
    * <b><code>MyErrorHandler</code></b> implements the SAX
    * <code>ErrorHandler</code> interface and defines callback
    * behavior for the SAX callbacks associated with an XML
    * document's errors.
    class MyErrorHandler implements ErrorHandler {
    * <p>
    * This will report a warning that has occurred; this indicates
    * that while no XML rules were "broken", something appears
    * to be incorrect or missing.
    * </p>
    * @param exception <code>SAXParseException</code> that occurred.
    * @throws <code>SAXException</code> when things go wrong
    public void warning(SAXParseException exception)
    throws SAXException {
    System.out.println("**Parsing Warning**\n" +
    " Line: " +
    exception.getLineNumber() + "\n" +
    " URI: " +
    exception.getSystemId() + "\n" +
    " Message: " +
    exception.getMessage());
    throw new SAXException("Warning encountered");
    * <p>
    * This will report an error that has occurred; this indicates
    * that a rule was broken, typically in validation, but that
    * parsing can reasonably continue.
    * </p>
    * @param exception <code>SAXParseException</code> that occurred.
    * @throws <code>SAXException</code> when things go wrong
    public void error(SAXParseException exception)
    throws SAXException {
    System.out.println("**Parsing Error**\n" +
    " Line: " +
    exception.getLineNumber() + "\n" +
    " URI: " +
    exception.getSystemId() + "\n" +
    " Message: " +
    exception.getMessage());
    throw new SAXException("Error encountered");
    * <p>
    * This will report a fatal error that has occurred; this indicates
    * that a rule has been broken that makes continued parsing either
    * impossible or an almost certain waste of time.
    * </p>
    * @param exception <code>SAXParseException</code> that occurred.
    * @throws <code>SAXException</code> when things go wrong
    public void fatalError(SAXParseException exception)
    throws SAXException {
    System.out.println("**Parsing Fatal Error**\n" +
    " Line: " +
    exception.getLineNumber() + "\n" +
    " URI: " +
    exception.getSystemId() + "\n" +
    " Message: " +
    exception.getMessage());
    throw new SAXException("Fatal Error encountered");

    I have seen this error when I'm executing inside one of the (j2ee sun reference implementation) server containers (either web or ejb). I believe its caused by "something" having previously loaded the "sax 1 driver class". In my case, I think the container or server is loading the sax parser from a jar that contains a sax 1 version. If you can, ensure that nothing is loading the sax 1 parser from another jar on your system. Verify that you are loading the sax parser from a jar containing the latest version so that you get the sax 2 compliant parser. Good luck!

  • ANN: Oracle XML Parser for Java v2.0.0.1

    A new maintenance release of the Oracle Parser for Java is
    available for download. It has the following fixes and changes:
    Bug fixes for #920536, i.e. Cannot access element attributes via
    XSLT; #898423. i.e. ElementDecl's in DTDs; #774774, i.e. DOM
    extensions using XSL pattern matching; #863890 i.e. SAX
    IOException not thrown.
    New APIs in the following new interface:
    1. oracle.xml.parser.v2.NSResolver
    - resolveNamespacePrefix( find the namespace definition in scope
    for a given namespace prefix )
    New APIs in the following classes:
    1. oracle.xml.parser.v2.XMLNode
    - selectNodes( Selects nodes from the tree which match the given
    pattern; client can provide an NSResolver implementation to
    resolve namespace prefixes in the pattern ).
    2. oracle.xml.parser.v2.ElementDecl
    - getParseTree( Returns the root Node of Content Model parse
    tree, which could then be traversed node by node using
    getFirstChild() and getLastChild(). The Node types are: PLUS,
    COMMA, ASTERISK, ELEMENT, QMARK ).
    This is the first beta patch release for v2.
    Oracle XML Team
    http://technet.oracle.com
    Oracle Technology Network
    null

    unzip -l appsborg2.zip | grep 9.0.4
    0 04-18-03 20:10 .xdkjava_version_9.0.4.0.0_production
    do i still need to do that step?No, you do not have to since "XML Parser for Java v9.0.4" is already installed as part of appsborg2.zip

  • What Oracle version for XML Parser for java

    Is the XML Parser for Java only available for use with
    Oracle 8i? Is it possible to use with Oracle 8.05
    null

    The XML Parser for Java can be used with any of the supported
    version JavaVMs. The only difference with 8i is that you can
    load it into the database and use JServer which is an internal
    VM. For 8.0.5 you simple run it externally and connect through
    JDBC.
    Oracle XML Team
    http://technet.oracle.com
    Oracle Technology Network
    Eddie SHipman (guest) wrote:
    : Is the XML Parser for Java only available for use with
    : Oracle 8i? Is it possible to use with Oracle 8.05
    null

  • XML parsing - NodeList : how to get only the desired childs

    Hi
    my question is about parsing XML files. I use "getChildNodes()" method (from org.w3c.dom.Node class) to get in a NodeList all childs of node. Is there a method to get only desired child nodes? For example I want to get only node elements wtih tag "coordinate". Or alternatively, is there a method to exclude text node to be added to the NodeList? My problem is that depending on the xml is formatted, text node could be recognized and added from parser, and this causes problems with my parsing..
    thanks to all

    If you want to select nodes based on changing criteria, you should use XPath.
    If you have relatively fixed criteria, iterate over the nodes and pick out the ones that you want. For example:
      public static List<Element> getChildren(Element parent, String tagname) {
        List<Element> result = new ArrayList<Element>();
        NodeList children = parent.getChildNodes();
        for (int ii = 0 ; ii < children.getLength() ; ii++) {
          Node child = children.item(ii);
          if ((child.getNodeType() == Node.ELEMENT_NODE) && tagname.equals(child.getNodeName()) {
            result.add((Element)child);
        return result;
      }

  • Why am I getting an Error #1090 xml parser error in IE only?

    Hi,
    I've got a Flex 3 website and I'm setting up an OpenX adServer. Everything works fine if I view my site in Firefox or Safari. The ads are served. But, if I view the site using Internet Explorer, I get error #1090, which is an xml parser error.
    I haven't posted any code as it is long. But, has anyone run into a similar problem, where the error #1090 only occurred in IE? Any general ideas as to why this would happen? Any suggestions or possible fixes?
    Thank you.
    -Laxmidi

    Hi Gregor,
    Thank you for the message.
    I've set-up OpenX on my production server only. I don't have OpenX running on my localhost. (So, if I ran it in Flash 9 debug version on my localhost, it is possible that I could get an error then, as well).
    When I view the production site in a standard IE8 browser, running the usual Flash 9, I get the error. If I view the production site in another browser (Safari or Firefox) I don't get the error. It's weird that the other browsers, don't have a problem.
    -Chris

  • I've just tried to open Auroara and am only getting a small window stating... XML Parsing Error: undefined entity Location: chrome://browser/content/browser.xu

    I've just tried to open Auroara and am only getting a small window stating...
    XML Parsing Error: undefined entity
    Location: chrome://browser/content/browser.xul
    Line Number 540, Column 9: <button default="true"

    Start Firefox in <u>[[Safe Mode|Safe Mode]]</u> to check if one of the extensions (Firefox/Tools > Add-ons > Extensions) or if hardware acceleration is causing the problem (switch to the DEFAULT theme: Firefox/Tools > Add-ons > Appearance).
    *Do not click the Reset button on the Safe mode start window or otherwise make changes.
    *https://support.mozilla.org/kb/Safe+Mode
    *https://support.mozilla.org/kb/Troubleshooting+extensions+and+themes

  • How to get only the first level of nodes for a subform?

    How can we get only the first level of nodes of a subform?
    For ex:
    Form1
         SubForm1
              Text1
              Text2
              RadioButton1
         SubForm2
              Text1
              Text2
              RadioButton1
         SubForm3
              Text1
              Text2
                   SubForm31
                        RadioButton1
    In this heirarchy if we give Form1.nodes will refer to all nodes under the Form1 (SubForm1,Test1,Text2,RadioButton1,SubForm2,...SubForm31, RadioButton1 etc..)
    But is there any way that we can access only the first level of nodes of Form1 ie can we get only (SubForm1,SubForm2,SubForm3) for Form1 in any Way..?
    Thanks.

    Two ways .....
    1. Use Javascript E4X instead ...there are nice functions for getting children of parents.
    2. Cycle through all of the form1.nodes and look for objects that have a className of "subform". For loops are useful for this task.
    Make sense?
    Paul

  • Poweshell script to parse a XML document to get all Leaf level nodes with Node names in CSV

    Hi Experts,
    I want to write a Powershell script to parse a XML document to get all Leaf level nodes with Node names in CSV
    <?xml version="1.0" encoding="UTF-8"?>
    <CATALOG>
       <CD>
          <TITLE>Empire Burlesque</TITLE>
          <ARTIST>Bob Dylan</ARTIST>
          <COUNTRY>USA</COUNTRY>
          <COMPANY>Columbia</COMPANY>
          <PRICE>10.90</PRICE>
          <YEAR>1985</YEAR>
       </CD>
    </CATALOG>
    Need to display this as
    CD_Tiltle, CD_ARTIST, CD_COUNTRY, CD_COMPANY, CD_PRICE, CD_YEAR
    Empire Burlesque, Bob Dylan,USA,Columbia,10.90,1985
    and so on..
    I do not want to hard code the tag names in the script.
    current example is 2 level hierarchy XML can be many level till 10 max I assume
    in that case the csv file field name will be like P1_P2_P3_NodeName as so on..
    Thanks in advance
    Prajesh

    Thankfully, I have writtenscript for ths same $node_name="";
    $node_value="";
    $reader = [system.Xml.XmlReader]::Create($xmlfile)
    while ($reader.Read())
    while ($reader.Read())
    if ($reader.IsStartElement())
    $node_name += "," + $reader.Name.ToString();
    if ($reader.Read())
    $node_value += "," + $reader.Value.Trim();
    Thanks and Regards, Prajesh Please use Marked as Answer if my post solved your problem and use Vote As Helpful if a post was useful.

Maybe you are looking for

  • Unknown error on Media Encoder (CS4)

    I'm trying to render a movie and every time I get about half way through it crashes saying unknown error.. Oddly I can render the 1st half of the movie and then quit and restart and render the 2nd half of my movie, but not both together.. I've tried

  • Configure plain http adapter for receiving message from an external system

    Hi, we use Pi/700. Now I have an external system and I have to use HTTP (plain) to send messages to XI (via plain http adapter). I have no experiences with HTTP! In the external system I can only configure "URL, Username, Password" for sending messag

  • How to identify/remove kexts labeled as kernel_task that consume too much resources

    Hi all, I am using Mac Os X 10.6, on a 2010 macbook pro 17" with latest updates as of 09 05 2011 I am using memory intensive applications for scientific purposes, and I am quite unhappy with one kernel extension that consumes more than 600 mb of real

  • Account balances T-code /CEECV/ROFI16

    Hello, In transaction "/CEECV/ROFI16 - Trial Balance at profit center level" I need to display it in group currency (currency typ 30). The only currency fiel that exists in the transaction is "Transaction currency" which is equivalent with the field

  • How to implement "Please wait your request is being processed" window ?

    Hi all, We are integrating BSP iviews in our portal. When the BSP applicaiton is being processed(eg. a form is submitted"), is it possible to show a small window like "Please wait your request is being processed" ? . Such a window appears when any op