Spring Security Plugin e modelos ja existentes
14/07/2012 12:38
class Cliente{
SecUser user
String nomeCliente
String foneCliente
class SecUser {
...
static belongsTo = [cliente: Cliente]
...
URI
/udoctor/cadastro/cadastroInicialCliente
Class
java.sql.BatchUpdateException
Message
Entrada em lote 0 insert into usuario_regra (regra_id, usuario_id) values ('1', '3') foi abortada. Chame getNextException para ver a causa.
2012-07-16 19:01:02,712 [http-bio-7070-exec-3] ERROR StackTrace - Full Stack Trace:
org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
at br.com.udoctor.seguranca.UsuarioRegra.create(UsuarioRegra.groovy:32)
at br.com.udoctor.cadastro.CadastroController.cadastroInicialCliente(CadastroController.groovy:40)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:680)
Caused by: java.sql.BatchUpdateException: Entrada em lote 0 insert into usuario_regra (regra_id, usuario_id) values ('1', '2') foi abortada. Chame getNextException para ver a causa.
at org.postgresql.jdbc2.AbstractJdbc2Statement$BatchResultHandler.handleError(AbstractJdbc2Statement.java:2619)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1835)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:405)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeBatch(AbstractJdbc2Statement.java:2752)
at org.apache.commons.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297)
at org.apache.commons.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297)
... 5 more
2012-07-16 19:01:02,712 [http-bio-7070-exec-3] ERROR StackTrace - Full Stack Trace:
org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
at br.com.udoctor.seguranca.UsuarioRegra.create(UsuarioRegra.groovy:32)
at br.com.udoctor.cadastro.CadastroController.cadastroInicialCliente(CadastroController.groovy:40)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:680)
Caused by: java.sql.BatchUpdateException: Entrada em lote 0 insert into usuario_regra (regra_id, usuario_id) values ('1', '2') foi abortada. Chame getNextException para ver a causa.
at org.postgresql.jdbc2.AbstractJdbc2Statement$BatchResultHandler.handleError(AbstractJdbc2Statement.java:2619)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1835)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:405)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeBatch(AbstractJdbc2Statement.java:2752)
at org.apache.commons.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297)
at org.apache.commons.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297)
... 5 more
username blank: false, unique: true// email: true, size: 7..128
//password blank: false ---> FUNCIONA
password validator: { String password, user ->
if (user.username && user.username.equals(password)) {
return 'user.password.error.username'
}
if (password && password.length() >= 8 && password.length() <= 64 &&
(!password.matches('^.*\p{Alpha}.*$') ||
!password.matches('^.*\p{Digit}.*$') ||
!password.matches('^.*[!@#$%^&].*$'))) {
return 'user.password.error.username'
}
}
if(cliente.save(flush: true, failOnError: true)){
UsuarioRegra.create (cliente, regra, true)
chain(action:"formularioCliente", model:[cliente: cliente])
Para se registrar, clique aqui.