2013-03-14 4 views
1

나는 봄 보안을 구현하기 전에 로그인했던 것과 같은 방법으로 자바에서 내 accout 오브젝트로부터 사용자 정보를 얻는 JSP 페이지를 가지고있다. 내 단추가 사용자가 로그인했을 때 내 div에 무엇을 보여주고 싶습니다. 이전에 세션을 사용하고 있었지만 지금은 스프링 보안을 사용하고 있습니다. 로그인하지 않았다고 생각합니다. Google과 Stack을 검색하여 찾으려고했습니다. 내 질문에 대한 대답이지만 나는 공백으로 계속 나오고있다. 여기 내 JSP에서 무엇을 가지고 있습니다.스프링 보안 로그인 값을 얻는다

<div id="topRightMenu" class="f-right"> 
       <% if( session.getAttribute("auth") == null 
         || session.getAttribute("auth").toString() == "false" 
         || session.getAttribute("Account") == null) { %> 


        <div id="login-form"> 
         <form action="/<c:url value='j_spring_security_check' />" method="post" id="loginForm"> 
          Username: <input class="text small" type="text" name="j_username" value="" /><br/> 
          Password: <input class="text small" type="password" name="j_password" value="" /><br/> 
          <label class="uiButton uiButtonLarge btnLogin"> 
           <input type="submit" name="btnLogin" value="login" /> 
          </label> 
         </form> 
        </div> 

        <button class="f-right" id="loginButton">Sign In</button> 

       <% } else { %> 
        <ul class="noMarkers grid"> 
         <li><a href="/account/edit/" title="Click to View Account Information">Account</a></li> 
         <li><a href="/profile/<%= Acc.getAccountID() %>" title="Click to View Your Profile">Profile</a></li> 
         <li><a href="/help" title="Click to Get Help">Help</a></li> 
         <li><a href="/account/logout" title="Log Out">Log Out</a></li> 
        </ul> 
       <% } %> 

로그인 버튼은 링크로 변경되어야하지만 변경되지 않아야합니다.
미리 감사드립니다.

답변

1

taglib provided by Spring Security을 사용해보세요. 해당 설명서에서

<sec:authorize access="isAuthenticated()"> 
    .... 
</sec:authorize> 

: 특히, 당신은 <sec:authorize> 태그를 사용할 수

구성된 액세스 표현식은 현재 인증 주체에 대해 true로 평가되면 태그의 몸을 출력하는 태그를. 당신이 위의 access 표현에서 사용하는 참조 문서의 this section을 확인 할 수있는 기능의 개요를

.

+0

나는 아직도 이것을 실제로 어떻게하는지 혼란 스럽다. 나는 지금 페이지에 lib라는 태그를 추가했는데, 이것이 제대로 작동하도록하는 방법에 대해서는 여전히 불분명하다. – welfle18

+0

원래'<% if %>'의 두 브랜치를 별도의''태그로 묶어보십시오. 첫 번째는'access = "isAnonymous()"'는'access = "isAuthenticated()"로 두 번째 태그입니다. 그래도 문제가 해결되지 않으면 새로운 버전의 JSP와 문제의 정확한 설명으로 질문을 업데이트하십시오. 그렇지 않으면 쉽게 도움이되지 않습니다. – zagyi

+0

고맙습니다. 지금은 잘 작동합니다! 도와 주셔서 감사합니다. – welfle18

관련 문제