Issues with Tomcat and OpenOLAT 9.1

253 views
Skip to first unread message

Hristijan Petreski

unread,
Jan 31, 2014, 5:19:13 AM1/31/14
to open...@googlegroups.com
Dear All,

I'm running OpenOLAT 9.1 on Tomcat 7 through eclipse juno on Ununtu Server 10.04. While I have set the reload to false it seems as the server restarts and different exceptions occur (spring related I think).
Up to the restart there are no Errors shown no exceptions.

...
09:44:31,058  INFO CourseModule:175 - OLAT::INFO ^%^ N1-I148 ^%^ org.olat.course ^%^ n/a ^%^ n/a ^%^ n/a ^%^ n/a ^%^ n/a ^%^ Course 'Demo Kurs' has been previousely deployed. Skipping.
09:44:31,060  INFO CourseModule:175 - OLAT::INFO ^%^ N1-I149 ^%^ org.olat.course ^%^ n/a ^%^ n/a ^%^ n/a ^%^ n/a ^%^ n/a ^%^ Course 'OLAT::help-course_de.zip' has been previousely deployed. Skipping.
Jan 31, 2014 9:44:31 AM com.sun.jersey.server.impl.application.WebApplicationImpl _initiate
INFO: Initiating Jersey application, version 'Jersey: 1.17.1 02/28/2013 12:47 PM'
Jan 31, 2014 9:44:31 AM com.sun.jersey.server.impl.application.DeferredResourceConfig$ApplicationHolder <init>
INFO: Instantiated the Application class org.olat.restapi.support.OlatRestApplication
09:44:32,108  INFO RSSServlet:175 - OLAT::INFO ^%^ N1-I150 ^%^ org.olat.commons.servlets ^%^ n/a ^%^ n/a ^%^ n/a ^%^ n/a ^%^ n/a ^%^ init statics servlet
09:44:32,109  INFO RSSServlet:175 - OLAT::INFO ^%^ N1-I151 ^%^ org.olat.commons.servlets ^%^ n/a ^%^ n/a ^%^ n/a ^%^ n/a ^%^ n/a ^%^ input buffer size: 32768
09:44:32,109  INFO RSSServlet:175 - OLAT::INFO ^%^ N1-I152 ^%^ org.olat.commons.servlets ^%^ n/a ^%^ n/a ^%^ n/a ^%^ n/a ^%^ n/a ^%^ output buffer size: 32768
09:44:32,111  INFO ICalServlet:175 - OLAT::INFO ^%^ N1-I153 ^%^ org.olat.commons.servlets ^%^ n/a ^%^ n/a ^%^ n/a ^%^ n/a ^%^ n/a ^%^ init statics servlet
09:44:32,111  INFO ICalServlet:175 - OLAT::INFO ^%^ N1-I154 ^%^ org.olat.commons.servlets ^%^ n/a ^%^ n/a ^%^ n/a ^%^ n/a ^%^ n/a ^%^ input buffer size: 32768
09:44:32,111  INFO ICalServlet:175 - OLAT::INFO ^%^ N1-I155 ^%^ org.olat.commons.servlets ^%^ n/a ^%^ n/a ^%^ n/a ^%^ n/a ^%^ n/a ^%^ output buffer size: 32768
Jan 31, 2014 9:44:32 AM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory /kwebo/servers/apache-tomcat-7.0.50/webapps/host-manager         <---------------- Here is the restarting
Jan 31, 2014 9:44:32 AM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory /kwebo/servers/apache-tomcat-7.0.50/webapps/olat
Jan 31, 2014 9:44:39 AM org.apache.catalina.core.ApplicationContext log
INFO: No Spring WebApplicationInitializer types detected on classpath
Jan 31, 2014 9:44:39 AM com.sun.xml.ws.transport.http.servlet.WSServletDelegate <init>
INFO: WSSERVLET14: JAX-WS servlet initializing
Jan 31, 2014 9:44:39 AM com.sun.xml.ws.transport.http.servlet.WSServletContextListener contextInitialized
INFO: WSSERVLET12: JAX-WS context listener initializing
log4j:WARN Continuable parsing error 32 and column 23
log4j:WARN The content of element type "log4j:configuration" must match "(renderer*,appender*,(category|logger)*,root?,categoryFactory?)".
Jan 31, 2014 9:44:40 AM org.apache.catalina.core.ApplicationContext log
INFO: Initializing Spring root WebApplicationContext
09:44:40,123  INFO ContextLoader:273 - Root WebApplicationContext: initialization started
09:44:40,228  INFO CoreSpringInitializer:247 - OLAT::INFO ^%^ N0-I1 ^%^ org.olat.core ^%^ n/a ^%^ n/a ^%^ n/a ^%^ n/a ^%^ n/a ^%^ Bootstrapping spring startup
09:44:40,229  INFO XmlWebApplicationContext:510 - Refreshing Root WebApplicationContext: startup date [Fri Jan 31 09:44:40 EET 2014]; root of context hierarchy
09:44:40,284  INFO XmlBeanDefinitionReader:315 - Loading XML bean definitions from class path resource [org/olat/_spring/mainContext.xml]
...

After the restart the following exception is show:
...
09:44:51,054 ERROR BrokerService:506 - Failed to start ActiveMQ JMS Message Broker. Reason: javax.management.InstanceAlreadyExistsException: org.apache.activemq:BrokerName=embedded,Type=Broker
javax.management.InstanceAlreadyExistsException: org.apache.activemq:BrokerName=embedded,Type=Broker
    at com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:437)
    at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerWithRepository(DefaultMBeanServerInterceptor.java:1898)
    at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:966)
    at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:900)
    at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:324)
    at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:522)

which is normal since the JMS was started before the auto-restart of tomcat.
What is more interesting the similar setup (for development purposes) on my MacOS is working just perfect. The only differences between the systems are: MySQL (5.1 on ubuntu, 5.6 on MacOS) and the Eclipse (juno on Ubuntu and kepler on Mac).

Do you have any idea what may be causing the problem?
Thank you so much. Have a great day all.

Hristijan Petreski

unread,
Jan 31, 2014, 5:23:57 AM1/31/14
to open...@googlegroups.com
I forgot to mention that even though the exception occur the openolat instance is working fine for a day or so and after that the tomcat suddenly stops with no exceptions.
The exceptions after the JMS exception are:
....
09:44:51,057  WARN ManagementContext:109 - Failed to start jmx connector: Cannot bind to URL [rmi://localhost:1099/jmxrmi]: javax.naming.NameAlreadyBoundException: jmxrmi [Root exception is java.rmi.AlreadyBoundException: jmxrmi]
09:44:51,058  INFO BrokerService:537 - ActiveMQ Message Broker (embedded, null) is shutting down
09:44:51,068  INFO BrokerService:583 - ActiveMQ JMS Message Broker (embedded, null) stopped
09:44:51,071  INFO DefaultListableBeanFactory:444 - Destroying singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@6ec44fa5: defining beans
...

9:44:51,139  INFO WebappHelper:247 - OLAT::INFO ^%^ N1-I34 ^%^ org.olat.core.util ^%^ n/a ^%^ n/a ^%^ n/a ^%^ n/a ^%^ n/a ^%^
09:44:51,139 ERROR ContextLoader:319 - Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'requestBasedListener' defined in class path resource [org/olat/core/util/threadlog/_spring/threadlogCorecontext.xml]: Cannot resolve reference to bean 'requestBasedLogLevelManager' while setting bean property 'manager'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'requestBasedLogLevelManager' defined in class path resource [org/olat/core/util/threadlog/_spring/threadlogCorecontext.xml]: Cannot create inner bean 'org.olat.core.configuration.PersistedProperties#80bbefc' of type [org.olat.core.configuration.PersistedProperties] while setting bean property 'persistentProperties'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ...

Stéphane Rossé

unread,
Jan 31, 2014, 2:39:53 PM1/31/14
to open...@googlegroups.com
Hi

To prevent a reload from the webapp I setup the following options in the server configuration:

- Deselect the "Modules auto reload by default" in Server Options
- Deselect "Never publish automatically" in Publishing

But Eclipse is only good for debugging purpose, don't use it to drive a production instance. I think some exceptions can restart the applications. Make a war file with maven and drop it in tomcat. OpenOLAT cannot be restarted without restarting Tomcat too. There are some classloader leaks which will trigger OutOfMemoryException.

Best Regards
Stéphane Rossé

Hristijan Petreski

unread,
Feb 1, 2014, 7:55:50 AM2/1/14
to open...@googlegroups.com
Dear Stephane,

Thank you for your answer. Actually I've done the steps you suggest, before without luck whatsoever. I have to run it through eclipse cause I want to change some things and have the debugging before it goes public and in production.
the weirdest thing is that on my Mac it works and on the Server (Ubuntu) it doesn't. Well, it does but just for day or two when as you said some memory leakage stops the tomcat.
Will try to install the eclipse kepler cause somewhere i read that when eclipse handles the tomcat instance it causes it to reload even though in the context it says false.

Thank you a lot. Will keep you updated on the issue. Have a great weekend.

Florian Gnägi

unread,
Feb 1, 2014, 8:27:44 AM2/1/14
to open...@googlegroups.com
Hi 

There are no known memory leaks in OpenOLAT. We run instances for weeks or month without restarting, also under heavy load. The problem must be due to your setup. 

Cheers
Florian

--
--
Sie erhalten diese Nachricht, weil Sie Mitglied sind von Google
Groups-Gruppe "OpenOLAT".
Für das Erstellen von Beiträgen in dieser Gruppe senden Sie eine E-Mail
an open...@googlegroups.com
Um sich von dieser Gruppe abzumelden, senden Sie eine E-Mail an
openolat+u...@googlegroups.com
Weitere Optionen finden Sie in dieser Gruppe unter
http://groups.google.com/group/openolat?hl=de
-------------------------------------------------------------------------------------------------------------------
OpenOLAT - infinite learning - http://www.openolat.org
 
---
You received this message because you are subscribed to the Google Groups "OpenOLAT" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openolat+u...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

--------------------------------------------------------------------
professional services for the e-learning system OpenOLAT and OLATpro
 hosting - operating - support - development - mobile - consulting
--------------------------------------------------------------------

frentix  GmbH
Florian Gnägi, Geschäftsführer
Hardturmstrasse 76
CH-8005 Zürich, Switzerland

skype:gnaegi  twitter:gnaegi  xing:Florian_Gnaegi 
--------------------------------------------------------------------















Hristijan Petreski

unread,
Feb 1, 2014, 8:41:44 AM2/1/14
to open...@googlegroups.com
Yes I am aware of that cause it's been running for long on my MAC. I was just asking maybe you have a clue what's wrong with the setup.

Thanks anyway.

Hristijan Petreski

unread,
Feb 2, 2014, 8:07:06 AM2/2/14
to open...@googlegroups.com
Dear Florian, Stephane,

Do you know if this warnings are normal:

Warning:  org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser: Property 'http://www.oracle.com/xml/jaxp/properties/entityExpansionLimit' is not recognized.
Compiler warnings:
  WARNING:  'org.apache.xerces.jaxp.SAXParserImpl: Property 'http://javax.xml.XMLConstants/property/accessExternalDTD' is not recognized.'
Warning:  org.apache.xerces.parsers.SAXParser: Feature 'http://javax.xml.XMLConstants/feature/secure-processing' is not recognized.
Warning:  org.apache.xerces.parsers.SAXParser: Property 'http://javax.xml.XMLConstants/property/accessExternalDTD' is not recognized.
Warning:  org.apache.xerces.parsers.SAXParser: Property 'http://www.oracle.com/xml/jaxp/properties/entityExpansionLimit' is not recognized.

It is the only difference between the instance running on my mac and on the ubuntu server. Thank you.
Reply all
Reply to author
Forward
0 new messages