União de tabelas com chave composta

0 respostas
V

Olá pessoal,

Estou com um problema, preciso pegar todas os campos dessa duas tabelas:

@Entity

@Table(name = requisitos_erp)

@NamedQueries({@NamedQuery(name = RequisitosErp.findAll, query = SELECT r FROM RequisitosErp r),

@NamedQuery(name = RequisitosErp.findByIdBts, query = SELECT r FROM RequisitosErp r WHERE r.requisitosErpPK.idBts = :idBts),

@NamedQuery(name = RequisitosErp.findByIdCap, query = SELECT r FROM RequisitosErp r WHERE r.requisitosErpPK.idCap = :idCap),

@NamedQuery(name = RequisitosErp.findByIdSubcap, query = SELECT r FROM RequisitosErp r WHERE r.requisitosErpPK.idSubcap = :idSubcap),

@NamedQuery(name = obterRequisitoPelaChave,query = SELECT r FROM RequisitosErp r WHERE r.requisitosErpPK.idBts = :idBts and r.requisitosErpPK.idCap = :idCap and r.requisitosErpPK.idSubcap = :idSubcap and r.requisitosErpPK.doc = :doc),

@NamedQuery(name = RequisitosErp.RequisitoERP,query = SELECT r FROM RequisitosErp r WHERE r.requisitosErpPK.idBts = :idBts and r.requisitosErpPK.idCap = :idCap and r.requisitosErpPK.idSubcap = :idSubcap),

@NamedQuery(name = RequisitosErp.findByDoc, query = SELECT r FROM RequisitosErp r WHERE r.requisitosErpPK.doc = :doc)})

public class RequisitosErp implements Serializable {

private static final long serialVersionUID = 1L;

@EmbeddedId

protected RequisitosErpPK requisitosErpPK;

<a class="mention" href="/u/basic">@Basic</a>(optional = false)

<a class="mention" href="/u/lob">@Lob</a>

@Column(name = “requisito”)

private String requisito;

E essa tabela:

@Embeddable

public class RequisitosErpPK implements Serializable {

<a class="mention" href="/u/basic">@Basic</a>(optional = false)

@Column(name = “id_bts”)

private long idBts;

<a class="mention" href="/u/basic">@Basic</a>(optional = false)

@Column(name = “id_cap”)

private int idCap;

<a class="mention" href="/u/basic">@Basic</a>(optional = false)

@Column(name = “id_subcap”)

private int idSubcap;

<a class="mention" href="/u/basic">@Basic</a>(optional = false)

@Column(name = “doc”)

private String doc;

Preciso fazer uma função que retorna todos os campos dessas duas tabelas para conseguir linkar essa função numa table.

Abaixo o código que havia criado:

public RequisitosErp[] getErpCasoTeste(long id_btsERP,int id_capERP,int sub_cap_idERP){
RequisitosERPDAO reqERPDAO = new RequisitosERPDAO();

List reqERPList = reqERPDAO.ListaReqERP(id_btsERP,id_capERP,sub_cap_idERP);

   Iterator it = reqERPList.iterator();

   RequisitosErp[] ReqERP = new RequisitosErp[reqERPList.size()];

    int i = 0;
    while (it.hasNext()) {
        ReqERP[i] = (RequisitosErp) it.next();
        i++;
    }

    getSessionBean1().setReqERP(ReqERP);
    return ReqERP;

   return null;
}

porém quando linko essa função em uma table, ela apenas me retorna o campo “requisito” que ta na tabela requisitos_erp

Mas eu queria todos os campos, tanto da tabela “requisitos_erp” tanto da “requisitos_erpPK”

Obrigada.

Criado 3 de junho de 2009
Respostas 0
Participantes 1