Hallo Werner, that was what I was looking for! Thanks for your fast and excellent help!
Cheers Georg 2009/8/20 Werner Punz <werner.p...@gmail.com>: > via getParameter, just the usual servlet way, have in mind that you have > to use the clientId, the in html displayed id of the input field. JSF > does an internal id mapping so the id loginType might be mapped to a > value along the lines of <viewId>:<formId>:loginType > > > > Georg Füchsle schrieb: >> Hallo Werner, >> >> I have got the request as a variable. >> Now I want to read from it the state of the hidden input-field, that >> was on the jsf-Page. >> >> This is the input-field: >> >> >> <t:inputText value="#{mbUser.loginType}" >> id="loginType" >> immediate="true" >> style="display:none;visibility:hidden;"/> >> >> >> How can I read its value from the request? >> >> Thanks, >> >> Georg >> >> 2009/8/20 Werner Punz <werner.p...@gmail.com>: >>> FacesContext.getExternalContext().getRequest should point you towards >>> the servlet request. >>> >>> Werner >>> >>> >>> Georg Füchsle schrieb: >>>> Hallo all, >>>> >>>> when a session of an user timed out I display a Website telling 'Your >>>> Session expired; please login again!". >>>> Now I have to distinguish some 'loginType' of the user. >>>> If the user initially logged on by ldap i have to redirect him to >>>> another site as if he logged in by internal mechanisms. >>>> >>>> So I have to access the user's logintype data after the session timed out. >>>> >>>> I was thinking on a solution without using cookies: >>>> To do so, I put the loginType data to a hidden input field on the >>>> website. I thought that this data is not lost doing a request after >>>> session timeout. >>>> >>>> Unfortunately at the restoreview-Phase the data was not already >>>> written to the bean. >>>> >>>> But I think: in the request there will be sent also the information >>>> from the old (session timed out) page. So I also should be able to >>>> read the value of this input-field 'loginType'. Is there any >>>> possibility to read from the request? >>>> >>>> Can anybody tell me if I am right, and tell me how to read this data? >>>> >>>> I use JSF Tomahawk and Facelets. >>>> >>>> >>>> Thanks! >>>> >>>> >>>> >>>> Here my input-text: >>>> >>>> >>>> >>>> <t:inputText value="#{mbUser.loginType}" >>>> id="loginType" >>>> immediate="true" >>>> style="display:none;visibility:hidden;"/> >>>> >>>> >>>> >>>> >>>> >>>> here my PhaseListener: >>>> >>>> >>>> class PhaseListener >>>> { >>>> >>>> public void beforePhase(PhaseEvent event) >>>> { >>>> if(event.getPhaseId() == PhaseId.RESTORE_VIEW) >>>> { >>>> /* >>>> before processing any request, I control if the User >>>> is logged in >>>> to the application: >>>> */ >>>> UserBean user = JsfUtils.getUserBean(); >>>> >>>> if(!user.loggedIn()) >>>> { >>>> /* >>>> User is not logged in! >>>> */ >>>> ExternalContext extCtx = >>>> event.getFacesContext().getExternalContext(); >>>> HttpServletRequest request = >>>> (HttpServletRequest) extCtx.getRequest(); >>>> String reqUri = request.getRequestURI(); >>>> >>>> if(startOrErrorPageIsCalled(reqUri)) >>>> { >>>> /* >>>> Users that are not logged in are >>>> only allowed to see the >>>> login-page or the error pages... >>>> */ >>>> return; >>>> } >>>> else >>>> { >>>> /* >>>> Users that is not logged in tried to >>>> request the application. >>>> I want to redirect him to a page >>>> 'sessionExpired' depending on >>>> his former loginType; this loginType I want to save on the website; >>>> */ >>>> >>>> // HERE THE LOGINTYPE WAS NOT reset >>>> to the Bean. is there any >>>> other possibility to read this value from the request? >>>> if(user.getLoginType() == 1) >>>> { >>>> >>>> event.getFacesContext().getExternalContext().redirect(JsfUtils.getKontextRoot() >>>> + "sessionExpired.jsf"); >>>> } >>>> else >>>> { >>>> // redirect him to another >>>> website >>>> } >>>> } >>>> } >>>> >>>> } >>>> } >>>> >>>> >>>> } >>>> >>> >> > >