Morgan Delagrange wrote:
> Craig, is there a message here?
>
No, sorry ... I have to moderate messages onto TAGLIBS-USER (because of the idiot who
was broadcasting all the
spam on it a while back), and I accidentally did a reply on an actual message rather
than the moderation
request.
Craig
>
> On Mon, 23 Apr 2001, Craig R. McClanahan wrote:
>
> >
> >
> > Nick Christopher wrote:
> >
> > > Newer sybase's are case sensitive with regards to object names (i.e.
>tables/cols/indexes).
> > >
> > > Morgan Delagrange wrote:
> > >
> > > > Good catch, I believe you are correct. I'll patch it up today.
> > > >
> > > > - Morgan
> > > >
> > > > On Thu, 19 Apr 2001, Dave Dribin wrote:
> > > >
> > > > > Hello,
> > > > >
> > > > > I was just playing around with the 04/19 version of the JDBC tag
> > > > > library and trying to run the example pages. I am using Oracle as a
> > > > > back-end database and using a JNDI named datasource under Resin 1.2.3.
> > > > > I am getting the following exception while running the jndijdbc.jsp
> > > > > page:
> > > > >
> > > > > javax.servlet.jsp.JspTagException: Could not find column named id
> > > > > at
>org.apache.taglibs.jdbc.resultset.BaseGetterTag.getColumnNumber(BaseGetterTag.java:245)
> > > > > at
>org.apache.taglibs.jdbc.resultset.BaseGetterTag.getPosition(BaseGetterTag.java:111)
> > > > > at
>org.apache.taglibs.jdbc.resultset.GetNumberTag.doStartTag(GetNumberTag.java:149)
> > > > >
> > > > > I tracked down the problem to this line in the JSP:
> > > > >
> > > > > <td><sql:getNumber colName="id" format="CURRENCY" locale="en_GB"/></td>
> > > > >
> > > > > Now, it turns out that if I use all caps for the column name like "ID"
> > > > > rather than "id" it works. I think this is due to the fact that I am
> > > > > running Oracle and it is probably passing back the column names in all
> > > > > caps regardless of how the table was created. However, colName should
> > > > > probably be doing a case insensitive compare. I narrowed it down to
> > > > > this bit of code in BaseGetterTag.java:
> > > > >
> > > > > 236 for (int i = 1; i <= cntColumn; i++) {
> > > > > 237 if (strName.equals (meta.getColumnName (i))) {
> > > > > 238 return i;
> > > > > 239 }
> > > > > 240 }
> > > > >
> > > > > Changing line 237 to use String.equalsIgnoreCase() should fix it. SQL
> > > > > is not case sensitive, right?
> > > > >
> > > > > -Dave
> > > > >
> >
> >