2012-06-07 8 views
1

로그인 인증에 데이터 영역을 사용하고 있습니다. 그것은 잘 작동합니다. 나는 또한 내 응용 프로그램에서 primefaces 3.2 구성 요소를 사용하고 있지만, 그들은 잘 작동하지만 문제는 로그인 전에 홈페이지에서 발생합니다. primefaces 구성 요소가 올바르게 렌더링되지 않았습니다 (예 : 탭 메뉴가 단순한 링크로 표시되고 버튼이 간단한 jsf 단추처럼 표시됨). 브라우저에서 인터넷 사용 기록을 지울 때 로그인이 제대로 작동합니다. , primefaces는 올바르게 렌더링되지만 영역은 작동하지 않습니다. 오류 페이지로 리디렉션됩니다. 왜 이런 일이 발생합니까? 어떻게 해결합니까? 이 때문에 내 앱의 홈페이지가 망가졌습니다.primefaces 구성 요소가 데이터 영역에 올바르게 렌더링되지 않습니다.

+0

CSS 파일을 보호하고 있습니까? – mprabhat

답변

2

Primefaces 리소스가 제한된 폴더에있는 것 같습니다. 보안 제한 조건 정의에서 자원 폴더를 제외하십시오.

이것은 내 프로젝트 중 하나의 구성 예입니다.

<security-constraint> 
    <display-name>Exceptions</display-name> 
    <web-resource-collection> 
     <web-resource-name>Exceptions</web-resource-name> 
     <description/> 
     <url-pattern>/resources/*</url-pattern> 
     <url-pattern>/faces/resources/*</url-pattern> 
     <url-pattern>/faces/javax.faces.resource/*</url-pattern> 
    </web-resource-collection> 
</security-constraint> 

당신이 필요합니다 :

<security-constraint> 
     <display-name>Secured project</display-name> 
     <web-resource-collection> 
      <web-resource-name>Secured project</web-resource-name> 
      <description/> 
      <url-pattern>/*</url-pattern> 
     </web-resource-collection> 
     <auth-constraint> 
      <description/> 
      <role-name>user</role-name> 
      <role-name>admin</role-name> 
     </auth-constraint> 
    </security-constraint> 

가 그럼 난 모든 사용자가 액세스 할 수있는 폴더에 대한 예외를 추가

: 우선은 (액세스 특정 역할 수) 전체 프로젝트에 대한 액세스를 제한 이를 보안 정책 및 폴더 구조에 맞게 수정하십시오.

+0

나는 내 오류가있어, 그냥 환영 파일을 index.xhtml에서 홈 페이지 xhtml로 변경했다. 그것은 지금 작동하지만 나는 이유를 모른다! – z22

관련 문제