Z twojego opisu w komentarzach, z 2 kolumn składających się na PK 'telefonocliente', tylko jedna jest naprawdę niezależna - 'cod_telefono'. To właśnie wygeneruje Cayenne. W przypadku PosgreSQL, aby to się stało, będziesz potrzebować następującej sekwencji w DB:
CREATE SEQUENCE pk_telefonocliente INCREMENT 20 START 200;
Skąd pochodzi druga PK 'cod_cliente'? Ponieważ jest to również FK do innej tabeli, oznacza to, że jest to "zależne" PK i musi pochodzić z relacji. Więc najpierw musisz zmapować relację wiele do jednego między „telefonoklientem” a „klientem”. Zaznacz pole wyboru „To Dep Pk” po stronie „telefonocliente”. Wygeneruj pasujący ObjRelationship dla swoich obiektów Java. Teraz możesz użyć go w swoim kodzie:
Cliente c = .. // get a hold of this object somehow
TelefonoCliente telefono = context.newObject(TelefonoCliente.class);
telefono.setFijo(4999000);
telefono.setCliente(c); // this line is what will populate 'cod_cliente' PK/FK
To powinno być.