My application does not authenticate user ,some external application
authenticates and redirects to my application passing a parameter to
identify the user, using this parameter I have to create a session and
userdetails.

I am using SimplePageAuthrizationStrategy


        getSecuritySettings().setAuthorizationStrategy(new
SimplePageAuthorizationStrategy(BasePage.class,getSignInPageClass()){
            @Override
            protected boolean isAuthorized() {
                return ((AuditWebSession)Session.get()).isSignedIn();
                //return true;
            }
        });


here my SignInPage

public class SSIIntegrationLogin extends WebPage {

    private String sessionId;

    public SSIIntegrationLogin(PageParameters  pageParameters) {

sessionId=getRequestCycle().getRequest().getParameter(Parameters.PARAM_SSI_SESSION_ID);
        if (signIn(sessionId)){
            onSignInSucceeded();
        }else{
            onSignInFailed();
        }
    }

    protected void onSignInFailed()
    {
        setRedirect(true);
        setResponsePage(SingInFailedPage.class);
    }


    public boolean signIn(String sessionId)
    {
        return AuthenticatedWebSession.get().signIn(sessionId,"");
    }

    protected void onSignInSucceeded()
    {
        // If login has been called because the user was not yet
        // logged in, than continue to the original destination,
        // otherwise to the Home page
        if (!continueToOriginalDestination())
        {
            setRedirect(true);

setResponsePage(getApplication().getSessionSettings().getPageFactory().newPage(
                    getApplication().getHomePage(), (PageParameters)null));
        }
    }

}

the problem is getting the    parameter   PARAM_SSI_SESSION_ID  the external
application will  redirect to a link like
http://hostname/myapp?PARAM_SSI_SESSION_ID=tert


any request to my application will be first cheked by authorization and
becasue the user is not signed in he will be redirected to SingInpage  in my
case SSIIntegrationLogin   , here I need the parameter
PARAM_SSI_SESSION_Id
now I was expecting the above code  to work but I never get the parameter
PARAM_SSI_SESSION_Id , please tell me how can I get this parameter ?   or is
there any beter way to handle this ?

Reply via email to