Description
During abort exception handling, RequestCycle.steps() calls getSession() to check if the session is invalidated (part of the solution to WICKET-2013). Unfortunately, this has the side-effect of creating a new session if none exists. Ideally, this should first call Session.exists() to see if a session is even bound to the current thread. If not, no action needs to be taken to still meet the needs of 2013.
The ultimate goal is to be able to abort an initial request (e.g. via exception thrown from RequestCycle.onBeginRequest()) without incurring the overhead of a useless session.