O problema que estou tendo somente e quando tenho uma chave primary key composta sendo ela uma foreign key.
Quando na entidade so tenho a foreign key sem ser composta funciona normal.
/<em>-----------------------Manutencao----------------------</em>/
PesInstituicao pesinstituicao = new PesInstituicao();
List listapesinstituicao = new ArrayList();
pesinstituicao.abrirSessao();
pesinstituicao.iniciarTransacao();
Criteria select = pesinstituicao.getSession().createCriteria(PesInstituicao.class, “a”);
select.createAlias(“a.id.iddefinicao”, “b”)
.add(Restrictions.eq(“b.id”, Integer.parseInt(“300”)));
pesinstituicao.fecharTransacao();
listapesinstituicao = select.list();
for (PesInstituicao j : listapesinstituicao) {
System.out.println(j.getId().getIddefinicao().getRazaosocial() + " - " + j.getId().getIddefinicao().getId());
}
pesinstituicao.fecharSessao();
/*-------------------------FIM MANUTENÇÃO ---------------------------- */
E as minhas entidades sao essas ?
@Embeddable
public class PrkPesInstituicao implements Serializable{
@ManyToOne(cascade={CascadeType.PERSIST, CascadeType.MERGE})
@JoinColumn(name = “iddefinicao”)
@NotNull
private PesDefinicao iddefinicao;
@ManyToOne(cascade={CascadeType.PERSIST, CascadeType.MERGE})
@JoinColumn(name = “id”)
@NotNull
private PesDefinicao id;
//estao gerados os getters e setters }
//----------------- FIM PrkPesInstituicao----------------------------------------------
@Entity
@Table(name=“Pes_Instituicao”)
public class PesInstituicao extends DAOHibernate{
@EmbeddedId
private PrkPesInstituicao id;
@NotNull
private Integer idvinculo;
//Getter e Setters
}
//----------------- FIM - PesInstituicao----------------------------------------------
@Entity
@Table(name = “Pes_Definicao”)
public class PesDefinicao extends DAOHibernate{
@Id
private Integer id;
private Integer re;
//Getter e Setters
}
//----------------- FIM - PesDefinicao----------------------------------------------
Exception in thread “main” org.hibernate.exception.GenericJDBCException:
could not execute query
at
org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:103)
at
org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:91)
at
org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
at org.hibernate.loader.Loader.doList(Loader.java:2223)
at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2104)
at org.hibernate.loader.Loader.list(Loader.java:2099)
at
org.hibernate.loader.criteria.CriteriaLoader.list(CriteriaLoader.java:94)
at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1569)
at org.hibernate.impl.CriteriaImpl.list(CriteriaImpl.java:283)
at
br.inf.atena.hibernate.manutencao.Manutencao.main(Manutencao.java:142)
Caused by: org.firebirdsql.jdbc.FBSQLException: GDS Exception.
335544569. Dynamic SQL Error
SQL error code = -206
Column unknown
B1_.ID
At line 1, column 1135.
at
org.firebirdsql.jdbc.AbstractPreparedStatement.(AbstractPreparedStatement.java:127)
at
org.firebirdsql.jdbc.FBPreparedStatement.(FBPreparedStatement.java:41)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown
Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at
org.firebirdsql.jdbc.FBStatementFactory.createPreparedStatement(FBStatementFactory.java:90)
at
org.firebirdsql.jdbc.AbstractConnection.prepareStatement(AbstractConnection.java:869)
at
org.firebirdsql.jdbc.AbstractConnection.prepareStatement(AbstractConnection.java:824)
at
org.firebirdsql.jdbc.AbstractConnection.prepareStatement(AbstractConnection.java:817)
at
org.firebirdsql.jdbc.AbstractConnection.prepareStatement(AbstractConnection.java:293)
at
org.hibernate.jdbc.AbstractBatcher.getPreparedStatement(AbstractBatcher.java:505)
at
org.hibernate.jdbc.AbstractBatcher.getPreparedStatement(AbstractBatcher.java:423)
at
org.hibernate.jdbc.AbstractBatcher.prepareQueryStatement(AbstractBatcher.java:139)
at org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1547)
at org.hibernate.loader.Loader.doQuery(Loader.java:673)
at
org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236)
at org.hibernate.loader.Loader.doList(Loader.java:2220)
… 6 more