|
|
Realmente se colocar o managedBean para implementar o validator, a
injeção vai funcionar, mas imagine se você tiver uma validação comum a
várias telas, você iria copiar o código da validação em cada tela ?
Era por isso que tentei injetar o repositório no validator.
Desculpa colocar mais uma pergunta, mas caso eu precise utilizar um
valor de um atributo do meu managedBean no validator ( Considerando
que meu managedBean implemente o validador ), já que a validação e a
configuração dos atributos do managedBean são feitos em fases
diferentes, tem como utilizar ?
On 8 nov, 00:46, Bruno Maomeh <brunomao...@xxxxxxxxx> wrote:
> sinceramente eu nunca tentei algo parecido..
> mas você pode criar um validator dentro do seu managedBean e injetar essa
> sua dependencia nele..
> isso se for um caso unico claro..
>
> 2010/11/7 Torquato Neto <torquat...@xxxxxxxxx>
>
>
>
>
>
>
>
>
>
> > Pessoal,
>
> > Estou usando spring para injeção de dependência e não consegui injetar
> > um repository em um validator.
>
> > ex:
>
> > @FacesValidator(value = "userExistValidator")
> > public class UserExistValidator implements Validator {
>
> > @ManagedProperty(value = "#{userRepository}")
> > private UserRepository userRepository;
>
> > @Override
> > public void validate(FacesContext arg0, UIComponent uiComponent,
> > Object value) throws ValidatorException {
> > String username = String.valueOf(value).trim();
>
> > List<String> userNames = userRepository.getUserNames();
>
> > if (userNames.contains(username)) {
> > FacesMessage message = new FacesMessage();
> > message.setSeverity(FacesMessage.SEVERITY_ERROR);
>
> > message.setSummary(ResourceBundle.getBundle("messages").getString(
> > "userCodeExistErro"));
> > throw new ValidatorException(message);
> > }
> > }
>
> > public void setUserRepository(UserRepository userRepository)
> > {
> > this.userRepository = userRepository;
> > }
>
> > public UserRepository getUserRepository() {
> > return userRepository;
> > }
>
> > }
>
> > Só consegui passando o repository como atributo no componente de
> > interface e recuperando no validator. Não tem como injetar nada em
> > validators e conveters ???
>
> > --
> > Você recebeu esta mensagem por que é membro do Javasf
> >http://groups.google.com/group/javasf
>
> > Conheça também o Java Brazil:http://groups.google.com/group/thejavabrazil
>
> --
> Bruno Maomeh
> http://brunomaomeh.wordpress.com
--
Você recebeu esta mensagem por que é membro do Javasf
http://groups.google.com/group/javasf
Conheça também o Java Brazil: http://groups.google.com/group/thejavabrazil
|
|