2009-10-05 3 views
2

SEAM에서 기본 인증 처리기를 수행하려고합니다. 나는 components.xml에 넣고 :SEAM의 기본 인증 코드

또한 web.xml에 필터 넣어 가지고
<web:authentication-filter url-pattern="/test/resource/rest/*" auth-type="basic"/> 

:

<servlet> 
    <servlet-name>Rest Servlet</servlet-name> 
    <servlet-class>test.BasicAuthenticationServlet</servlet-class> 
</servlet> 

<servlet-mapping> 
    <servlet-name>Rest Servlet</servlet-name> 
    <url-pattern>/test/resource/rest/*</url-pattern> 
</servlet-mapping> 

나는 BasicAuthenticationServlet 클래스처럼 만들었습니다

public class BasicAuthenticationServlet extends AuthenticationFilter { 

public void doFilter(final HttpServletRequest request, 
      final HttpServletResponse response, FilterChain chain){ 
//some code here 
} 

chain.doFilter(request, response){ 
//some code here 
} 

} 

그래서 나는를 재정의을 doFilter 방법.

이제 왜 작동하지 않는지 이해할 수 없습니까? 기본 인증에 대한 코드 예제를 찾지 못했습니다. SEAM에서 인터넷을 통해 (필터와 클래스를 포함한 코드를 의미하므로 내 코드에서 뭔가를 놓칠 수 있습니까?)

답변

0

Seam way에 구현하지 않으려는 이유는 무엇입니까? 나는 '

3

<web:authentication-filter url-pattern="*.seam" auth-type="basic"/> 
<security:identity authenticate-method="#{authenticator.authenticate}"/> 

아니라 서블릿을 사용하여 구현했습니다.

그리고 인증 할 방법에

사용자를 가지고 다음과 같이 전달합니다

final String username = identity.getCredentials().getUsername(); 
    final String password = identity.getCredentials().getPassword(); 
+0

Sory을하지만 내 대답을했다 - 당신이 심 방법으로 그것을했다, 내가 sugested exaclty 것. – cetnar