Tenho as seguintes NamedQueries (entre outras) na minha classe Usuario.
@NamedQueries({
@NamedQuery(name = "Usuario.findAll", query = "SELECT u FROM Usuario u"),
@NamedQuery(name = "Usuario.findByLoginUsu", query = "SELECT u FROM Usuario u WHERE u.loginUsu = :loginUsu"),
@NamedQuery(name = "Usuario.findBySenhaUsu", query = "SELECT u FROM Usuario u WHERE u.senhaUsu = :senhaUsu"),
})
Gostaria de inserir mais uma que fizesse a validação via MD5 da senha do usuario. Em minha concepção seria ficaria assim:
@NamedQueries({
@NamedQuery(name = "Usuario.loginESenhaMD5", query = "SELECT u FROM Usuario u WHERE u.loginUsu = :loginUsu AND u.senhaUsu = MD5(':senhaUsu')"),
@NamedQuery(name = "Usuario.findAll", query = "SELECT u FROM Usuario u"),
@NamedQuery(name = "Usuario.findByLoginUsu", query = "SELECT u FROM Usuario u WHERE u.loginUsu = :loginUsu"),
@NamedQuery(name = "Usuario.findBySenhaUsu", query = "SELECT u FROM Usuario u WHERE u.senhaUsu = :senhaUsu"),
})
Mas ao modificar qualquer dado dentro das Aspas ele retorna erro e a entidade da erro ao ser criada. Dentro da classe ele da erro de MD5:
Usuario.loginESenhaMD5[70;73]: The identification variable 'MD5' is not defined in the FROM clause.
se eu deixar assim: ele funciona normalmente
@NamedQueries({
@NamedQuery(name = "Usuario.loginESenhaMD5", query = "SELECT u FROM Usuario u WHERE u.loginUsu = :loginUsu"),
@NamedQuery(name = "Usuario.findAll", query = "SELECT u FROM Usuario u"),
@NamedQuery(name = "Usuario.findByLoginUsu", query = "SELECT u FROM Usuario u WHERE u.loginUsu = :loginUsu"),
@NamedQuery(name = "Usuario.findBySenhaUsu", query = "SELECT u FROM Usuario u WHERE u.senhaUsu = :senhaUsu"),
})
Alguém pode me indicar como criar novas NamedQueries?