/** Handles DesktopRecyle. */
/*package*/ static Desktop beforeService(
DesktopRecycle dtrc, ServletContext ctx, Session sess,
HttpServletRequest request, HttpServletResponse response, String path) {
if (dtrc != null) {
final Execution olde = Executions.getCurrent();
final Object olds = SessionsCtrl.getRawCurrent();
final Execution exec = new TemporaryExecution(ctx, request, response, null);
SessionsCtrl.setCurrent(sess);
ExecutionsCtrl.setCurrent(exec);
try {
return dtrc.beforeService(exec, getURI(path, request.getQueryString()));
} catch (Throwable ex) {