This story outlines two major issues in the session state docs, but I think the docs deserve a fairly comprehensive review to determine if there is any other stale/incorrect information. The two issues are:
- Required jar list is missing some required jars
- Need to indicate that a locator MUST be available for peer-to-peer topology
More details on both issues below:
We should review the session state documentation for completeness/correctness. When attempting to install and configure the Tomcat and AppServer session modules by following the docs, I found that there were missing jars in the [installation section|https://gemfire.docs.pivotal.io/98/geode/tools_modules/http_session_mgmt/tomcat_installing_the_module.html] for Tomcat and [setting up section|https://gemfire.docs.pivotal.io/98/geode/tools_modules/http_session_mgmt/weblogic_setting_up_the_module.html]. Namely, I had to add these missing jars (as of 9.8, maybe earlier).
- micrometer-core jar
- geode-commons jar
- geode-management jar
The first is a new jar added since this documentation was written, and I'm assuming the code was restructured to require the other two jars as dependencies. I'm not sure how we can ensure that this list is up to date. Some of our system level tests for session state have to include the same list. From TomcatInstall.java:
And you can see that this list was updated to make the tests pass when dependencies changed.
The other major issue I found while running through the steps is that you MUST start a locator in the peer-to-peer topology for session state, because multicast UDP discovery is not available/supported in Geode.