| Summary: | Session failover does not work on Jetty/OSGi | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | [RT] Jetty | Reporter: | Rüdiger Herrmann <ruediger.herrmann> | ||||||||
| Component: | osgi | Assignee: | Jan Bartel <janb> | ||||||||
| Status: | CLOSED WORKSFORME | QA Contact: | |||||||||
| Severity: | normal | ||||||||||
| Priority: | P3 | CC: | d_a_carver, janb, jetty-inbox, ruediger.herrmann | ||||||||
| Version: | unspecified | ||||||||||
| Target Milestone: | --- | ||||||||||
| Hardware: | All | ||||||||||
| OS: | All | ||||||||||
| Whiteboard: | |||||||||||
| Bug Depends on: | |||||||||||
| Bug Blocks: | 353117 | ||||||||||
| Attachments: |
|
||||||||||
|
Description
Rüdiger Herrmann
Created attachment 205639 [details] Projects to reproduce the bug For the projectsto compile and run, the following target components are necessary: * Equinox OSGi 3.7.1 (only bundle org.eclipse.osgi and org.eclipse.osgi.services) * H2 1.1 (available from Orbit) * Jetty 8.x * Servlet API 3.0 (either comes with Jetty or available from Orbit) * RAP 1.5 > 2011-10-19 (only bundle org.eclipse.rap.rwt) available from http://eclipse.org/rap/downloads (RAP Runtime -> nightly build) Please don't hesitate to email me and I will send you a zip of the above. Can you include the stack trace as well. Created attachment 205643 [details]
Stacktrace
It looks like the subsequent JdbcSQLException is an aftereffect of the ClassNotFoundException
Created attachment 205649 [details] Projects to reproduce the bug One of the launch configs of the first attachment had a wrong auto-start setting for o.e.jetty.osgi.boot. Everything else remains the same. Please see the first attachment (attachment 205639 [details]) for the list of necessary target components. Rüdiger, If you create a session with node1, then stop and then restart it, and then hit it again from the browser, do you get the same ClassNotFoundException? In theory, this should be exactly the same situation as the node migration ... Also please note that the latest jetty release is 8.1.3, so it may be worthwhile retesting with that. (In reply to comment #5) Also, I don't see an Import-Package statement for org.eclipse.rwt.internal.service in the manifest... Jan > Rüdiger, > > If you create a session with node1, then stop and then restart it, and then hit > it again from the browser, do you get the same ClassNotFoundException? In > theory, this should be exactly the same situation as the node migration ... > > Also please note that the latest jetty release is 8.1.3, so it may be > worthwhile retesting with that. Rüdiger, I've tried using the HashSessionManager and persisting sessions across restarts. That is working fine (tested in virgo). This uses very similar mechanisms to the JDBC session persistence in terms of serializing and deserializing objects. In this case, the object was a simple one, and part of the webapp. I can't seem to use the projects you attached to the issue. Also there was no explanatory file as you indicated in your post. I think to get any further with this, you are going to need to turn up the debugging level for jetty, particularly for the org.eclipse.jetty.server.session.* package. Also, please try a much simpler case of using just the HashSessionManager with persistence (with a simple servlet that merely creates a session - you might like to use the test webapp that comes with jetty), and stopping and restarting - this will trigger the class reload. thanks Jan Rüdiger, Is there a status update on this bug? Do you have any comments in response to my last post (#7)? Have you made progress on using session reloading with/without osgi? Jan Rüdiger, Its been a long time since I've heard from you with info about this bug. As I said a while ago, I wasn't able to reproduce the problem. So, I'm going to close this issue. If this is still a problem for you, please reopen with updated stack traces, test harness (and instructions on how to use the test harness), and instructions on how to reproduce the bug. Please do any testing against a recent jetty release, preferably jetty-9.1.x. regards Jan |