• New Feature
  • Status: Open
  • 2 Major
  • Resolution:
  • Sessions
  • eng group
  • Reporter: suveern
  • May 30, 2008
  • 0
  • Watchers: 1
  • June 02, 2008

Description

When terracotta is used for Session Persistence it checks the version of the servlet container and fails to start up if the version is an unknown version. For instance when I tried to use terracotta with a non-Tomcat container, Terracotta failed to startup throwing

java.lang.AssertionError: Cannot determine tomcat version from NonStop(tm) Servlets For JavaServer Pages(tm) v6.0 at com.tc.tomcat.session.VersionHelper.(VersionHelper.java:31) at org.apache.catalina.core.ContainerBase.(ContainerBase.java:230) at org.apache.catalina.core.StandardEngine.(StandardEngine.java:66)

it would be nice if this check can be controlled either through the tc-config.xml file or through a command line argument.

Comments

Tim Eck 2008-05-30

Tbe main reason for that version check is to make a decision about which terracotta session implementation classes to load. Unfortunately the interfaces in tomcat are not constant between versions so querying ServerInfo is used to pick the impl.

I suppose the check could be based on inspecting the interfaces we depend on instead of using that version string. That remove dependence on the string (which seems to be cutomized by tomcat deriatives like NonStop, glassfish, etc)

If we add some sort of way to disable the check, that might effectively mean disabling session support (given the current implementation).

Fiona OShea 2008-06-02

Add another jira to throw a real error.