Yup. Reproduced with:

Random 1.0.1
TC 4.1.29-LE
Sun JDK 1.4.2_01
WinXP

It looks like a tag pooling issue. If you disable tag pooling, it seems to work
okay. You can disable pooling by editing $CATALINA_HOME/conf/web.xml:

<servlet>
  <servlet-name>jsp</servlet-name>
  <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
  ...
  <init-param>
    <param-name>enablePooling</param-name>
    <param-value>false</param-value>
  </init-param>
  ...
</servlet>

Quoting [EMAIL PROTECTED]:

> Hi Martin
> 
> As I said, I just downloaded the binary distribution and tried the
> random-examples.war file with the JSP that's in there.
> 
> Best regards,
> Eric
> 
> -----Original Message-----
> From: Martin van Dijken [mailto:[EMAIL PROTECTED]
> Sent: Dienstag, 18. November 2003 15:28
> To: Tag Libraries Users List
> Subject: Re: Random Taglib crashes every fourth time?
> 
> 
> Hey Eric,
> 
> Sounds like something is not reset after use. Can you post your code and 
> in particular the usage of Random?
> 
> Martin
> 
> [EMAIL PROTECTED] wrote:
> 
> > Hi
> > 
> > I just downloaded the Random taglib, and when I try the example
> application,
> > it crashes exactly every fourth time when I hit the browser's refresh
> > button. Here's the stack trace:
> > 
> > java.lang.ArrayIndexOutOfBoundsException: 30
> >     at
> >
> org.apache.taglibs.random.RandomStrgTag.setCharset(RandomStrgTag.java:336)
> >     at
> > org.apache.jsp.random_jsp._jspx_meth_rand_string_5(random_jsp.java:302)
> >     at org.apache.jsp.random_jsp._jspService(random_jsp.java:187)
> >     at
> > org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)
> >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> >     at
> >
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:2
> > 10)
> >     at
> > org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
> >     at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
> >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> >     at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
> > FilterChain.java:247)
> >     at
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
> > ain.java:193)
> >     at
> >
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
> > va:256)
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> > eNext(StandardPipeline.java:643)
> >     at
> >
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
> >     at
> > org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> >     at
> >
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
> > va:191)
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> > eNext(StandardPipeline.java:643)
> >     at
> >
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
> >     at
> > org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> >     at
> >
> org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
> >     at
> >
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180
> > )
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> > eNext(StandardPipeline.java:643)
> >     at
> >
> org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.
> > java:171)
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> > eNext(StandardPipeline.java:641)
> >     at
> >
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172
> > )
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> > eNext(StandardPipeline.java:641)
> >     at
> >
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
> >     at
> > org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> >     at
> >
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
> > :174)
> >     at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> > eNext(StandardPipeline.java:643)
> >     at
> >
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
> >     at
> > org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> >     at
> > org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
> >     at
> >
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:594)
> >     at
> >
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConne
> > ction(Http11Protocol.java:392)
> >     at
> >
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565)
> >     at
> >
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav
> > a:619)
> >     at java.lang.Thread.run(Thread.java:536)
> > 
> > 
> > Best regards,
> > Eric
> > 
> > P.S. I use Tomcat 4.1.24

-- 
Kris Schneider <mailto:[EMAIL PROTECTED]>
D.O.Tech       <http://www.dotech.com/>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to