I've got a servlet that serves files. It's mounted on /files/* and has a WicketSessionFilter on that same path so it has access to the wicket session.
When a user accesses /files/?id=1 the servlet checks that the wicket session exists, that the user is logged in and some other logic then serves the file to the user. When a user is not logged in, and say comes to this url from a link in an email, I'd like the servlet to send him to the login page, then after providing credentials I'd like to return to the original url so the file will be served. What is the best way to accomplish this? So far I tried to redirect like this: servlet: response.redirect(contextPath + "/login?destination=files/?id=" + id) login page after login success: if (destination != null) getRequestCycle().setRequestTarget(new RedirectRequestTarget(destination)); but this failed because the request was redirected twice and it is not allowed. I also tried to forward the request but failed. Any help would be appreciated!
