You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cocoon.apache.org by aps olute <ap...@yahoo.com> on 2002/12/27 19:35:13 UTC

esql in Cocoon-2.1-dev not working well with Oracle? due to skip-rows element?

 Antonio,
     Per your suggestion, I downloaded the latest on 12/24 and it still does
not work. ESQL having a problem working with Oracle 8i and Tomcat 4.1.12. 
Exact xml file is working with Tomcat.4.0.1 but not on 4.1.12.  What actually
has been changed?
     I tinkered a little bit more, and based on your postings, I kind of
clue-in on this skip-rows and max-rows.  This was not needed before, why make
it mandatory? Is this documented somewhere like on a DTD or a Schema for ESQL?
Also it does not work with skip-rows set to zero!!!! 
     

aps

__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com

---------------------------------------------------------------------
Please check that your question  has not already been answered in the
FAQ before posting.     <http://xml.apache.org/cocoon/faq/index.html>

To unsubscribe, e-mail:     <co...@xml.apache.org>
For additional commands, e-mail:   <co...@xml.apache.org>


Re: esql in Cocoon-2.1-dev not working well with Oracle? due to skip-rows element?

Posted by Antonio Gallardo <ag...@agsoftware.dnsalias.com>.
aps olute dijo:
>   I did not have the need for this, so I will assume its okay, my code
> works
> without this.
>
>> 2-The <esql:skip-rows> and <esql:max-rows> are also optionals that
>> means that it will not triggered if you dont request it.
>
>     Apparently one of them is not optional, if it was, I would not
> brought this up as an issue.  If you recall my original posting on this:
> http://marc.theaimsgroup.com/?l=xml-cocoon-users&m=104069369318391&w=2 I
> could not run same ESQL code on Tomcat4.1.12 but yet it works fine on
> Tomcat 4.0.1.

It looks like the problem is calling the absolute() method. As long as I
know the function is part of the java.sql then it must be into your
driver. Try to find a newer driver that implements the absolute()
function.

Also, better try to use Tomcat 4.1.18. I used before 4.1.12 and there are
some bugs that can confuse your development under windows.

BTW I am using tomcat 4.1.18 on Red Hat Linux 8.0

>     Can you perhaps verify an ESQL(XSP file) like I had posted without
> the <esql:skip-rows> and can you post what the result is? Without this
> element on mine, it will not work.

I already checked your file and I think it must work is well written as
long as I know.

Sorry, but I dont know how this work for Oracle. I am using PostgreSQL. I
have many files without any of this tags and all the XSP works fine. Maybe
the problem is somewhere else. Try to download the sources from CVS and
check the source of Cocoon for Oracle.

>> By the way I dont see a case when you will request 0 rows in the
>> <esql:max-rows>. I the worst case you will need to set it just to
>> control if the are some rows. Then you will need to request almost 1
>> additional row (0+1) to check for additionals rows in the returned
>> recordset.
>
>   Umm, I was referring to <esql:skip-rows> being zero, not
> <esql:max-rows>.

It is the default approach. The default value for <esql:skip-rows> is "-1"
(minus 1) that means that the function absolute will not being called.

I review the code of OracleEsqlQuery.java and there if you does not use
any of the tags: <esql:skip-rows> and <esql:max-rows>, then your query is
sended to the database server without any other stuff. But if you are
using some of the tags, then Cocoon will send a query with tag stuff.

>In the test I just did, I did not include <esql:max-rows>, so its not
> needed. I also tried <esql:max-rows> 3 and I did get 3 rows, not 4 and
> since I have to have skip-rows minimum set to 1, it printed rowid's 2,3
> & 4.  Anyhow, it seems confusing to remember one more rule having to add
> 1 for the count.
That is correct!. The trick to get (MaxRows + 1) records works only
internal to let Cocoon check if there are more rows that meet your
criteria and shot the trigger <esql:more-results>. It will does not affect
the correct approach. If you want 3 rows, you must write
<esql:max-rows>3</esql:max-rows>.

Also if you does not want to skip any row. you dont need to use
<esql:skip-rows> and <esql:max-rows>. Also note that for Oracle the use of
both tags is mandatory. You cannot use just one. If you need to use just 1
tag, you will need to set the second tag too.

I hope it will help you.

Best regards,

Antonio Gallardo.

>
>>
>> This way it will be faster for every database manager because database
>> manager mainly stop when they already have filled the requested amount
>> of rows. And returns after they get the maxrow you requested. As you
>> can see this is the faster method I know to trigger the more-results.
>
>    No comment on this portion. I dont really know the logic behind.
>
>   Just wanted to know, what are the file sizes for your
> OracleEsqlQuery.java,
> JdbcEsqlQuery.java, EsqlHelper.java, and PostgresEsqlQuery.java? just
> for my reference.
>
> Regards,
> aps
>
>>
>> Ragards,
>>
>> Antonio Gallardo.
>>
>>
>> aps olute dijo:
>> >
>> >  Antonio,
>> >      Per your suggestion, I downloaded the latest on 12/24 and it
>> still
>> > does
>> > not work. ESQL having a problem working with Oracle 8i and Tomcat
>> 4.1.12.  Exact xml file is working with Tomcat.4.0.1 but not on
>> 4.1.12. What actually has been changed?
>> >      I tinkered a little bit more, and based on your postings, I
>> kind of
>> > clue-in on this skip-rows and max-rows.  This was not needed before,
>> why make it mandatory? Is this documented somewhere like on a DTD or
>> a Schema for ESQL? Also it does not work with skip-rows set to
>> zero!!!!
>> >
>> >
>> > aps
>> >
>> > __________________________________________________
>> > Do you Yahoo!?
>> > Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
>> > http://mailplus.yahoo.com
>> >
>> > ---------------------------------------------------------------------
>> Please check that your question  has not already been answered in
>> the FAQ before posting.
>> <http://xml.apache.org/cocoon/faq/index.html>
>> >
>> > To unsubscribe, e-mail:
>> <co...@xml.apache.org> For additional commands,
>> e-mail:   <co...@xml.apache.org>
>>
>>
>>
>>
>> ---------------------------------------------------------------------
>> Please check that your question  has not already been answered in the
>> FAQ before posting.     <http://xml.apache.org/cocoon/faq/index.html>
>>
>> To unsubscribe, e-mail:     <co...@xml.apache.org>
>> For additional commands, e-mail:   <co...@xml.apache.org>
>>
>
>
> __________________________________________________
> Do you Yahoo!?
> Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
> http://mailplus.yahoo.com
>
> ---------------------------------------------------------------------
> Please check that your question  has not already been answered in the
> FAQ before posting.     <http://xml.apache.org/cocoon/faq/index.html>
>
> To unsubscribe, e-mail:     <co...@xml.apache.org>
> For additional commands, e-mail:   <co...@xml.apache.org>




---------------------------------------------------------------------
Please check that your question  has not already been answered in the
FAQ before posting.     <http://xml.apache.org/cocoon/faq/index.html>

To unsubscribe, e-mail:     <co...@xml.apache.org>
For additional commands, e-mail:   <co...@xml.apache.org>


Re: esql in Cocoon-2.1-dev not working well with Oracle? due to skip-rows element?

Posted by aps olute <ap...@yahoo.com>.
Responses inserted in between.
--- Antonio Gallardo <ag...@agsoftware.dnsalias.com> wrote:
> Hi:
> 
> 1-The <esql:more-results> is is not a mandatory issue. It is just an
> optional tag that you can use.

  I did not have the need for this, so I will assume its okay, my code works
without this.

> 2-The <esql:skip-rows> and <esql:max-rows> are also optionals that means
> that it will not triggered if you dont request it.

    Apparently one of them is not optional, if it was, I would not brought this
up as an issue.  If you recall my original posting on this:
http://marc.theaimsgroup.com/?l=xml-cocoon-users&m=104069369318391&w=2
I could not run same ESQL code on Tomcat4.1.12 but yet it works fine on Tomcat
4.0.1.
    Can you perhaps verify an ESQL(XSP file) like I had posted without the
<esql:skip-rows> and can you post what the result is? Without this element on
mine, it will not work.

> 
> By the way I dont see a case when you will request 0 rows in the
> <esql:max-rows>. I the worst case you will need to set it just to control
> if the are some rows. Then you will need to request almost 1 additional
> row (0+1) to check for additionals rows in the returned recordset.

  Umm, I was referring to <esql:skip-rows> being zero, not <esql:max-rows>.  In
the test I just did, I did not include <esql:max-rows>, so its not needed. I
also tried <esql:max-rows> 3 and I did get 3 rows, not 4 and since I have to
have skip-rows minimum set to 1, it printed rowid's 2,3 & 4.  Anyhow, it seems
confusing to remember one more rule having to add 1 for the count.

> 
> This way it will be faster for every database manager because database
> manager mainly stop when they already have filled the requested amount of
> rows. And returns after they get the maxrow you requested. As you can see
> this is the faster method I know to trigger the more-results.

   No comment on this portion. I dont really know the logic behind.

  Just wanted to know, what are the file sizes for your OracleEsqlQuery.java,
JdbcEsqlQuery.java, EsqlHelper.java, and PostgresEsqlQuery.java? just for my
reference.

Regards,
aps

> 
> Ragards,
> 
> Antonio Gallardo.
> 
> 
> aps olute dijo:
> >
> >  Antonio,
> >      Per your suggestion, I downloaded the latest on 12/24 and it still
> > does
> > not work. ESQL having a problem working with Oracle 8i and Tomcat
> > 4.1.12.  Exact xml file is working with Tomcat.4.0.1 but not on 4.1.12.
> > What actually has been changed?
> >      I tinkered a little bit more, and based on your postings, I kind of
> > clue-in on this skip-rows and max-rows.  This was not needed before, why
> > make it mandatory? Is this documented somewhere like on a DTD or a
> > Schema for ESQL? Also it does not work with skip-rows set to zero!!!!
> >
> >
> > aps
> >
> > __________________________________________________
> > Do you Yahoo!?
> > Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
> > http://mailplus.yahoo.com
> >
> > ---------------------------------------------------------------------
> > Please check that your question  has not already been answered in the
> > FAQ before posting.     <http://xml.apache.org/cocoon/faq/index.html>
> >
> > To unsubscribe, e-mail:     <co...@xml.apache.org>
> > For additional commands, e-mail:   <co...@xml.apache.org>
> 
> 
> 
> 
> ---------------------------------------------------------------------
> Please check that your question  has not already been answered in the
> FAQ before posting.     <http://xml.apache.org/cocoon/faq/index.html>
> 
> To unsubscribe, e-mail:     <co...@xml.apache.org>
> For additional commands, e-mail:   <co...@xml.apache.org>
> 


__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com

---------------------------------------------------------------------
Please check that your question  has not already been answered in the
FAQ before posting.     <http://xml.apache.org/cocoon/faq/index.html>

To unsubscribe, e-mail:     <co...@xml.apache.org>
For additional commands, e-mail:   <co...@xml.apache.org>


Re: esql in Cocoon-2.1-dev not working well with Oracle? due to skip-rows element?

Posted by Antonio Gallardo <ag...@agsoftware.dnsalias.com>.
Hi:

1-The <esql:more-results> is is not a mandatory issue. It is just an
optional tag that you can use.
2-The <esql:skip-rows> and <esql:max-rows> are also optionals that means
that it will not triggered if you dont request it.

By the way I dont see a case when you will request 0 rows in the
<esql:max-rows>. I the worst case you will need to set it just to control
if the are some rows. Then you will need to request almost 1 additional
row (0+1) to check for additionals rows in the returned recordset.

This way it will be faster for every database manager because database
manager mainly stop when they already have filled the requested amount of
rows. And returns after they get the maxrow you requested. As you can see
this is the faster method I know to trigger the more-results.

Ragards,

Antonio Gallardo.


aps olute dijo:
>
>  Antonio,
>      Per your suggestion, I downloaded the latest on 12/24 and it still
> does
> not work. ESQL having a problem working with Oracle 8i and Tomcat
> 4.1.12.  Exact xml file is working with Tomcat.4.0.1 but not on 4.1.12.
> What actually has been changed?
>      I tinkered a little bit more, and based on your postings, I kind of
> clue-in on this skip-rows and max-rows.  This was not needed before, why
> make it mandatory? Is this documented somewhere like on a DTD or a
> Schema for ESQL? Also it does not work with skip-rows set to zero!!!!
>
>
> aps
>
> __________________________________________________
> Do you Yahoo!?
> Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
> http://mailplus.yahoo.com
>
> ---------------------------------------------------------------------
> Please check that your question  has not already been answered in the
> FAQ before posting.     <http://xml.apache.org/cocoon/faq/index.html>
>
> To unsubscribe, e-mail:     <co...@xml.apache.org>
> For additional commands, e-mail:   <co...@xml.apache.org>




---------------------------------------------------------------------
Please check that your question  has not already been answered in the
FAQ before posting.     <http://xml.apache.org/cocoon/faq/index.html>

To unsubscribe, e-mail:     <co...@xml.apache.org>
For additional commands, e-mail:   <co...@xml.apache.org>