Save em um domain que o id e composite
18/03/2015 18:18
0
Tem alguma diferença em fazer em chamar o save de um Domain que seu id e composto?
Meu Domain:
package pf

import org.apache.commons.lang.builder.HashCodeBuilder

import compartilhado.Empresa
import compartilhado.Pessoa

class Acionista{

Long quotas;
BigDecimal valor;
Integer percentual;
Integer sequencial;

static belongsTo = [empresa: Empresa, pessoa: Pessoa]

static mapping = {
table 'com_empresa_pessoa';
version false;
id composite: ['empresa', 'pessoa'];
quotas column: 'ep_quotas';
valor column: 'ep_valor', sqlType: 'decimal';
percentual column: 'ep_percentual', sqlType: 'smallint';
sequencial column: 'ep_sequencial', sqlType: 'smallint';
empresa column: 'ep_empresa_id';
pessoa column: 'ep_pessoa_id';
}

static constraints = {
quotas(nullable: true, max: 9999999999L);
valor(nullable: true, max: new BigDecimal("9999999999.99"));
percentual(nullable: true, max: 100);
sequencial(nullable: false, max: 999);
empresa(nullable: false);
pessoa(nullable: false);
}

boolean equals(other) {
if (!(other instanceof Acionista)) {
return false;
}

other?.empresa?.id == empresa?.id && other?.pessoa?.id == pessoa?.id;
}

int hashCode() {
def builder = new HashCodeBuilder();
builder.append(empresa?.id);
builder.append(pessoa?.id);
builder.toHashCode();
}
}
Tags: domain, save


0
Edu, você está recebendo algum erro no save? Poderia postar aqui...

Na sua definição da classe percebi que não a definiu como serializable. Será que não pode ser este o problema?

class Acionista implements Serializable {
21/03/2015 08:37



Ainda não faz parte da comunidade???

Para se registrar, clique aqui.


Aprenda Groovy e Grails com a Formação itexto!

Newsletter Semana Groovy

Assinar

Envie seu link!


Livro de Grails


/dev/All

Os melhores blogs de TI (e em português) em um único lugar!

 
Creative Commons
RSS Grails Brasil é mantido por itexto Consultoria.
Em caso de problemas contacte Henrique Lobo Weissmann (Kico) por e-mail: kico@itexto.com.br
Todo o conteúdo presente neste site adota o Creative Commons como licença padrão.
Ver: 4.14.0
itexto