Hi Matt,
I wrote a simple test case to explain what I'm looking for, I'd like to
reach and get the 4th TD html tag
within the second TR tag in the TABLE html element, that is the string
'Good'.
What I get is the following stacktrace
org.apache.commons.jxpath.JXPathNotFoundException: No value for xpath:
/TABLE/TR[2]/TD[4]
at
org.apache.commons.jxpath.ri.JXPathContextReferenceImpl.getValue(JXPathC
ontextReferenceImpl.java:383)
at
org.apache.commons.jxpath.ri.JXPathContextReferenceImpl.getValue(JXPathC
ontextReferenceImpl.java:313)
at test.HtmlQueryingTestCase.test(HtmlQueryingTestCase.java:35)
TIA,
Stefano.
> -----Original Message-----
> From: Matt Benson [mailto:[email protected]]
> Sent: Tuesday, March 12, 2013 3:27 PM
> To: Commons Users List
> Subject: Re: [jxpath] querying an html file
>
> Can you put together a small test case that illustrates the problem?
>
> Matt
>
>
> On Tue, Mar 12, 2013 at 6:49 AM, MASTRELLA STEFANO
> <[email protected]>wrote:
>
> >
> > Hi all,
> >
> > I'm trying to use jxpath-1.3 to query the content of some
> tags within
> > an html fragment.
> > Given the file 'html.frag.response.html' I want to explore
> all the TR
> > tag in the document.
> >
> > For what I know I can do this stuff with the following
> lines of code:
> >
> > String tableFragment = loadfromthefile();
> >
> > JXPathContext context = JXPathContext.newContext(tableFragment);
> >
> > Iterator it = context.iteratePointers("//TR");
> >
> > while (it.hasNext()) {
> > Pointer msgPointer = (Pointer) it.next();
> >
> > msgPointer.asPath();
> >
> > System.out.println(msgPointer);
> >
> > What I get is always an empty Iterator so there's nothing
> to iterate
> > on, as there were no TR tag in the document.
> >
> > What am I doing wrong?
> >
> > TIA.
> >
> > ---
> > Stefano
> >
> >
> >
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [email protected]
> > For additional commands, e-mail: [email protected]
> >
>
<TABLE border="1" fontsize="4" bgcolor="#54FF87" name="dataTable"
id="dataTable" style='cursor:hand'>
<tr>
<TH><A href="javascript:sortTable(0)">CONCESSIONARIO</A></TH>
<TH><A href="javascript:sortTable(1)">CODICE_MSG</A></TH>
<TH><A href="javascript:sortTable(2)">TIPO_MSG</A></TH>
<TH><A href="javascript:sortTable(3)">ESITO_MSG</A></TH>
<TH><A href="javascript:sortTable(4)">ID_SEQ</A></TH>
<TH><A href="javascript:sortTable(5)">ID_TESTATA</A></TH>
<TH><A href="javascript:sortTable(6)">MSG_OPERATIVO</A></TH>
<TH><A href="javascript:sortTable(7)">MITTENTE</A></TH>
<TH><A href="javascript:sortTable(8)">RNUM</A></TH>
</TR>
<TR name="myriga" language = "JavaScript"
onclick="Riga((this.parentElement).parentElement, this)"
onMouseover="changeto(event, 'yellow')" onMouseout="changeback(event,
'54FF87')">
<TD>CIRSA ITALIA S.P.A.</TD>
<TD>600</TD>
<TD>TRASMISSIONE GIORNALIERA, MENSILE, ANNUALE INCASSI E VINCITE</TD>
<TD>NORMALE</TD>
<TD>7098653</TD>
<TD>060130200000015</TD>
<TD>A|1|1111000024|89000|115600|0|50000|76600|89|100000|124600|0|150000|129600|100|2013|02||;B|1115000663|0|0|0|0|0|0;B|1115000664|0|0|0|0|0|0;B|1115000665|0|0|0|0|0|0;B|1115000666|89000|115600|89|100000|124600|100;B|1115000667|0|0|0|0|0|0</TD>
<TD>A</TD>
<TD>1</TD>
</TR>
<TR name="myriga" language = "JavaScript"
onclick="Riga((this.parentElement).parentElement, this)"
onMouseover="changeto(event, 'yellow')" onMouseout="changeback(event,
'54FF87')">
<TD>CIRSA ITALIA S.P.A.</TD>
<TD>600</TD>
<TD>TRASMISSIONE GIORNALIERA, MENSILE, ANNUALE INCASSI E VINCITE</TD>
<TD>ERRORE</TD>
<TD>7098652</TD>
<TD>060130200000014</TD>
<TD>A|2|EA610039745A|89000|115600|0|50000|76600|89|95000|124600|0|100000|129600|95|2013|02||1111000024;B|1115000663|0|0|0|0|0|0;B|1115000664|0|0|0|0|0|0;B|1115000665|0|0|0|0|0|0;B|1115000666|89000|115600|89|95000|124600|95;B|1115000667|0|0|0|0|0|0</TD>
<TD>A</TD>
<TD>2</TD>
</TR>
<TR name="myriga" language = "JavaScript"
onclick="Riga((this.parentElement).parentElement, this)"
onMouseover="changeto(event, 'yellow')" onMouseout="changeback(event,
'54FF87')">
<TD>CIRSA ITALIA S.P.A.</TD>
<TD>600</TD>
<TD>TRASMISSIONE GIORNALIERA, MENSILE, ANNUALE INCASSI E VINCITE</TD>
<TD>NORMALE</TD>
<TD>7098651</TD>
<TD>060130200000013</TD>
<TD>A|2|EA190029993A|0|0|0|0|0|0|5000|0|0|50000|0|5|2013|02||1111000024;B|1115000663|0|0|0|0|0|0;B|1115000664|0|0|0|0|0|0;B|1115000665|0|0|0|0|0|0;B|1115000666|0|0|0|5000|0|5;B|1115000667|0|0|0|0|0|0</TD>
<TD>A</TD>
<TD>3</TD>
</TR>
<TR name="myriga" language = "JavaScript"
onclick="Riga((this.parentElement).parentElement, this)"
onMouseover="changeto(event, 'yellow')" onMouseout="changeback(event,
'54FF87')">
<TD>CIRSA ITALIA S.P.A.</TD>
<TD>600</TD>
<TD>TRASMISSIONE GIORNALIERA, MENSILE, ANNUALE INCASSI E VINCITE</TD>
<TD>NORMALE</TD>
<TD>7098650</TD>
<TD>060130200000012</TD>
<TD>A|3|A0000000050|0|0||0|0|0|0|0||0|0|0|2013|02||1111000024;B|1115000664|0|0|0|0|0|0;B|1115000665|0|0|0|0|0|0;B|1115000666|0|0|0|0|0|0;B|1115000667|0|0|0|0|0|0</TD>
<TD>A</TD>
<TD>4</TD>
</TR>
<TR name="myriga" language = "JavaScript"
onclick="Riga((this.parentElement).parentElement, this)"
onMouseover="changeto(event, 'yellow')" onMouseout="changeback(event,
'54FF87')">
<TD>CIRSA ITALIA S.P.A.</TD>
<TD>600</TD>
<TD>TRASMISSIONE GIORNALIERA, MENSILE, ANNUALE INCASSI E VINCITE</TD>
<TD>NORMALE</TD>
<TD>7098649</TD>
<TD>060130200000011</TD>
<TD>A|3|A0000000049|0|0||0|0|0|0|0||0|0|0|2013|02||1111000024;B|1115000664|0|0|0|0|0|0;B|1115000665|0|0|0|0|0|0;B|1115000666|0|0|0|0|0|0;B|1115000667|0|0|0|0|0|0</TD>
<TD>A</TD>
<TD>5</TD>
</TR>
<TR name="myriga" language = "JavaScript"
onclick="Riga((this.parentElement).parentElement, this)"
onMouseover="changeto(event, 'yellow')" onMouseout="changeback(event,
'54FF87')">
<TD>CIRSA ITALIA S.P.A.</TD>
<TD>600</TD>
<TD>TRASMISSIONE GIORNALIERA, MENSILE, ANNUALE INCASSI E VINCITE</TD>
<TD>ERRORE</TD>
<TD>7098648</TD>
<TD>060130200000010</TD>
<TD>A|3|A0000000012|89000|115600||50000|76600|89|100000|124600||150000|129600|100|2013|02||1111000024;B|1115000663|0|0|0|0|0|0;B|1115000664|0|0|0|0|0|0;B|1115000665|0|0|0|0|0|0;B|1115000666|89000|115600|89|100000|124600|100;B|1115000667|0|0|0|0|0|0</TD>
<TD>A</TD>
<TD>6</TD>
</TR>
<TR name="myriga" language = "JavaScript"
onclick="Riga((this.parentElement).parentElement, this)"
onMouseover="changeto(event, 'yellow')" onMouseout="changeback(event,
'54FF87')">
<TD>CIRSA ITALIA S.P.A.</TD>
<TD>600</TD>
<TD>TRASMISSIONE GIORNALIERA, MENSILE, ANNUALE INCASSI E VINCITE</TD>
<TD>NORMALE</TD>
<TD>7098647</TD>
<TD>060130200000009</TD>
<TD>A|3|A0000000011|0|0||0|0|0|0|0||0|0|0|2013|02||1111000024;B|1115000663|0|0|0|0|0|0;B|1115000664|0|0|0|0|0|0;B|1115000665|0|0|0|0|0|0;B|1115000666|0|0|0|0|0|0;B|1115000667|0|0|0|0|0|0</TD>
<TD>A</TD>
<TD>7</TD>
</TR>
<TR name="myriga" language = "JavaScript"
onclick="Riga((this.parentElement).parentElement, this)"
onMouseover="changeto(event, 'yellow')" onMouseout="changeback(event,
'54FF87')">
<TD>CIRSA ITALIA S.P.A.</TD>
<TD>600</TD>
<TD>TRASMISSIONE GIORNALIERA, MENSILE, ANNUALE INCASSI E VINCITE</TD>
<TD>ERRORE</TD>
<TD>7098646</TD>
<TD>060130200000008</TD>
<TD>A|1|1111000024|0|0|0|0|0|0|100000|124600|0|150000|129600|100|2013|02|28|;B|1115000664|0|0|0|0|0|0;B|1115000665|0|0|0|0|0|0;B|1115000666|0|0|0|100000|124600|100;B|1115000667|0|0|0|0|0|0</TD>
<TD>A</TD>
<TD>8</TD>
</TR>
<TR name="myriga" language = "JavaScript"
onclick="Riga((this.parentElement).parentElement, this)"
onMouseover="changeto(event, 'yellow')" onMouseout="changeback(event,
'54FF87')">
<TD>CIRSA ITALIA S.P.A.</TD>
<TD>600</TD>
<TD>TRASMISSIONE GIORNALIERA, MENSILE, ANNUALE INCASSI E VINCITE</TD>
<TD>NORMALE</TD>
<TD>7098645</TD>
<TD>060130200000007</TD>
<TD>A|2|EA190029993A|0|0|0|0|0|0|5000|0|0|50000|0|5|2013|02|28|1111000024;B|1115000664|0|0|0|0|0|0;B|1115000665|0|0|0|0|0|0;B|1115000666|0|0|0|5000|0|5;B|1115000667|0|0|0|0|0|0</TD>
<TD>A</TD>
<TD>9</TD>
</TR>
<TR name="myriga" language = "JavaScript"
onclick="Riga((this.parentElement).parentElement, this)"
onMouseover="changeto(event, 'yellow')" onMouseout="changeback(event,
'54FF87')">
<TD>CIRSA ITALIA S.P.A.</TD>
<TD>600</TD>
<TD>TRASMISSIONE GIORNALIERA, MENSILE, ANNUALE INCASSI E VINCITE</TD>
<TD>NORMALE</TD>
<TD>7098644</TD>
<TD>060130200000006</TD>
<TD>A|3|A0000000050|0|0||0|0|0|0|0||0|0|0|2013|02|28|1111000024;B|1115000664|0|0|0|0|0|0;B|1115000665|0|0|0|0|0|0;B|1115000666|0|0|0|0|0|0;B|1115000667|0|0|0|0|0|0</TD>
<TD>A</TD>
<TD>10</TD>
</TR>
<TR name="myriga" language = "JavaScript"
onclick="Riga((this.parentElement).parentElement, this)"
onMouseover="changeto(event, 'yellow')" onMouseout="changeback(event,
'54FF87')">
<TD>CIRSA ITALIA S.P.A.</TD>
<TD>600</TD>
<TD>TRASMISSIONE GIORNALIERA, MENSILE, ANNUALE INCASSI E VINCITE</TD>
<TD>NORMALE</TD>
<TD>7098643</TD>
<TD>060130200000005</TD>
<TD>A|3|A0000000049|0|0||0|0|0|0|0||0|0|0|2013|02|28|1111000024;B|1115000664|0|0|0|0|0|0;B|1115000665|0|0|0|0|0|0;B|1115000666|0|0|0|0|0|0;B|1115000667|0|0|0|0|0|0</TD>
<TD>A</TD>
<TD>11</TD>
</TR>
</TABLE>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]