hyr4x  
            
           
           
          
              
                Setembro 1, 2009,  1:02am
               
               
          #1 
           
         
        
          Alguém sabe dizer como utilizar os interceptadores do vraptor3?
Basta implementar a classe Interceptor e anotar com @Intercepts ? Tentei inclusive usar o exemplo da documentação mas não funcionou.
@Intercepts
@RequestScoped
public class Log implements Interceptor {
    private final HttpServletRequest request;
    public Log(HttpServletRequest request) {
        this.request = request;
    }
    public void intercept(InterceptorStack stack, ResourceMethod method,
                        Object resourceInstance) throws InterceptionException {
        System.out.println("Interceptando " + request.getRequestURI());
        stack.next(method, resourceInstance);
    }
    public boolean accepts(ResourceMethod method) {
        return true;
    }
} 
Minha idéia inicial é dar um commit na transação do hibernate e tratar os possíveis erros.
Desde já agradeço!
         
         
           
        
            
            
            
         
         
             
             
          
       
      
        
        
          O jeito de usar interceptors é esse mesmo…
tenta lançar uma exception no interceptor pra ver se ele está sendo chamado…
         
         
        
            
            
            
         
         
             
             
          
       
      
        
        
          deu certo o interceptador?
         
         
        
            
            
            
         
         
             
             
          
       
      
        
          
          
            hyr4x  
            
           
           
          
              
                Setembro 1, 2009,  4:42pm
               
               
          #4 
           
         
        
          Consegui resolver.
Ainda não sei o que de fato impediu o interceptador ser executado, mas depois que adicionei um input  no meu formulário que mapeia a propriedade versao  da minha entidade, tudo voltou a funcionar.
<fieldset id="pessoal">
	<input type="hidden" name="cliente.id" value="${cliente.id}"/>
	<input type="hidden" name="cliente.versao" value="${cliente.versao}"/>
	<label><span>*</span>Nome:<input type="text" name="cliente.nome"  value="${cliente.nome}"/></label>
	<label>Email:<input type="text" name="cliente.email"  value="${cliente.email}"/></label>
</fieldset> 
Acredito que estava sendo lançada uma HibernateException. 
 
Aproveitando a deixa, tem como integrar umas taglibs mais aprimoradas (icefaces, richfaces…) com o vraptor3?
Valeu pessoal!
         
         
        
            
            
            
         
         
             
             
          
       
      
        
        
          TUdo bem?
As taglibs do ice e do rich sao para jsf que é uma maneira de desenvolver (voltada a componentes) diferente da voltada a recursos ou ações (vraptor).
abraço