Daniela,
Thank you for your response - it has explained why we sometimes see the
'Horrible Exception' when logging into Jetspeed. We were able to replicate
the 'Horrible Exception' with a piece of code that runs as a cron job and
logs into Jetspeed every few minutes...when the connection limit is reached,
Jetspeed crashes.
We are using Jetspeed 1.4b3 with Tomcat 4.1.24 on Solaris. The psml database
is the default HypersonicSQL database that comes with Jetspeed. I have
followed the examples on the Tomcat site for configuring DBCP, but we are
still seeing the 'Horrible Exception' when we run our login program and hit
the site every few minutes. I'm not sure if I've configured Tomcat correctly
to enable DBCP for Jetspeed/HypersonicSQL. My files look like:
server.xml
....
<Context path="" docBase="jetspeed" debug="0"
reloadable="true" crossContext="true">
<Resource name="jdbc/jetspeed" auth="Container"
type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/jetspeed">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>removeAbandoned</name>
<value>true</value>
</parameter>
<parameter>
<name>removeAbandonedTimeout</name>
<value>60</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>100</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>50</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>10000000</value>
</parameter>
<parameter><name>username</name><value>sa</value></parameter>
<parameter><name>password</name><value></value></parameter>
<parameter><name>driverClassName</name><value>org.hsql.jdbcDriver</value></p
arameter>
<parameter><name>url</name><value>jdbc:HypersonicSQL:database</value></param
eter>
</ResourceParams>
</Context>
...
web.xml for Jetspeed
....
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
"http://java.sun.com/j2ee/dtds/web-app_2.2.dtd">
<web-app>
<display-name>Jetspeed Enterprise Information Portal</display-name>
<servlet>
<servlet-name>
jetspeed
</servlet-name>
<servlet-class>
org.apache.turbine.Turbine
</servlet-class>
<init-param>
<param-name>properties</param-name>
<param-value>
WEB-INF/conf/TurbineResources.properties
</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>
jetspeed
</servlet-name>
<url-pattern>
/portal/*
</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>
jetspeed
</servlet-name>
<url-pattern>
/jetspeed/*
</url-pattern>
</servlet-mapping>
<mime-mapping>
<extension>wbmp</extension>
<mime-type>image/vnd.wap.wbmp</mime-type>
</mime-mapping>
<mime-mapping>
<extension>wml</extension>
<mime-type>text/vnd.wap.wml</mime-type>
</mime-mapping>
<mime-mapping>
<extension>wmls</extension>
<mime-type>text/vnd.wap.wmlscript</mime-type>
</mime-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
<welcome-file>index.wml</welcome-file>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/jetspeed</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
....
What am I doing wrong?
Peter
-----Original Message-----
From: Daniela Mercadante [mailto:[EMAIL PROTECTED]
Sent: Monday, August 25, 2003 3:02 AM
To: Jetspeed Users List
Subject: Re: Monitoring Jetspeed
Hi Peter,
I have not so much experience in Jetspeed, but I know that this error can be
generated in different ways. I can share with you one of the causes: I have
jetspeed 1.4 b3, MySQL on Windows 2000.
Our website has different services that use DB connection, so not managing
properly these connections after sometimes the system reached the maximum of
connection, jetspeed crashed and it gave the mentioned error at each login.
So the problem was the incorrect handling of DB connection and the only
solution was to stop Tomcat and to restart it in order to release
connections.
The solution that works perfectly is to enable in Tomcat the DBCP for each
services implemented and the connection number doesn't grow anymore.
You can find details at the following address:
http://jakarta.apache.org/tomcat/tomcat-4.1-doc/jndi-datasource-examples-how
to.html
Hope this will help you.
Daniela
----- Original Message -----
From: "Peter Kapakos" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Wednesday, August 13, 2003 5:27 PM
Subject: Monitoring Jetspeed
> Does anyone know of a way to monitor Jetspeed to ensure that it is
running?
> Users of our jetspeed portal are sometimes confronted with the following
> java error:
>
> Horrible Exception: org.apache.jetspeed.om.profile.ProfileException:
> java.lang.NullPointerException at
>
org.apache.jetspeed.services.profiler.JetspeedProfilerService.fallbackProfil
> e (JetspeedProfilerService.java:414) at
>
org.apache.jetspeed.services.profiler.JetspeedProfilerService.getProfile(Jet
> speedProfilerService.java:287) at
>
org.apache.jetspeed.services.profiler.JetspeedProfilerService.getProfile(Jet
> speedProfilerService.java:440) at
> org.apache.jetspeed.services.Profiler.getProfile(Profiler.java:123) at
>
org.apache.jetspeed.modules.actions.JetspeedAccessController.doPerform(Jetsp
> eedAccessController.java:99) at
> org.apache.turbine.modules.Action.perform(Action.java:87) at
> org.apache.turbine.modules.ActionLoader.exec(ActionLoader.java:122) at
> org.apache.turbine.Turbine.doGet(Turbine.java:476) at
> org.apache.turbine.Turbine.doPost(Turbine.java:616) at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:760) 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:260) 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:2396)
> 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:170) 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.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:
> 1040) at
>
org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1151
> ) at java.lang.Thread.run(Thread.java:536)
>
> We are not entirely sure what causes this error, but we need a way to know
> that it has occured before a user logs on and sees it. Currently we only
> know about it when a user encounters it upon logging in and then notifies
> us...at which point we restart Tomcat and the error goes away.
>
> If anyone can shed any light on:
>
> 1) the cause of this error
> 2) how it can be avoided
> 3) monitoring jetspeed for availability
>
> Thanks in advance everyone.
>
> Peter Kapakos
> Web Developer
> Teleias Inc.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]