JBossを使用してFlexベースのRIAに一連のRESTfulサービスを提供しています。とにかく、(フォームベースのログインを使用して)ログインを実現するためにいくつかの痛みを経験しましたが、私はユーザーをログアウトするためのRESTfulな方法を提供することに苦労しています。私はRESTfulなサービスを実装するステートレスセッションBeanを使用したJBoss、RESTEasyのでこれを行うことができますどのようにRESTfulな呼び出しでユーザーをログアウトする(セッションを無効にする)
session.invalidate()
: はJSPでは、私のようなものを簡単に呼び出すことができますか?
これは私のRESTfulなサービスBeanのローカル・インタフェースです:
@Local
@Path("/Rest")
public interface SessionController {
...
@GET
@Path("/logout/")
@Produces("text/xml")
String logout(@Context HttpServletRequest req);
}
をそして、これが実装される:かなり
@RolesAllowed({ "TheBoss", "SomeUser", ... })
@SecurityDomain("mysqlLogin")
@Stateless
public class SessionControllerBean implements SessionController {
...
public String logout(@Context HttpServletRequest req) {
...
req.getSession().invalidate();
return "SUCCESS";
}
}
googelingのビットは、私が解決策を作成した後
セッション中にデータを保持していますか? –
私はセッション中にデータを保持していません。認証のためだけに必要です。 – Christoph
どのセキュリティサービスを使用していますか?あなたはSpring Securityを使っていますか?あなた自身のログインサービスを起動しましたか?言い換えれば、アプリケーションが直接セッションにアクセスしたり、別のサービスを通じて間接的にセッションにアクセスしたりしますか? – Pace