Declaração de mapedSuperClasse

1 resposta
Jackye

Olá.

Quando inseri as classes de acordo com o BD Todas ss classes do projeto java tá aparecendo um 'erro' que diz: [color=blue]As pesquisas nomeadas podem ser definidas apenas em uma classe de entidade ou MappedSuperclass.[/color] Mas não sei o porque desta ocorrencia. veja um exemplo de classe:
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.com.Dominio;

import java.io.Serializable;
import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.OneToOne;
import javax.persistence.PrimaryKeyJoinColumn;
import javax.persistence.Table;

/**
 *
 * @author Jackeline
 */
@Entity
@PrimaryKeyJoinColumn(name="CodUsuario")
@Table(name = "Aluno", catalog = "dbSistemaBibliotecario", schema = "dbo")
@NamedQueries({
    @NamedQuery(name = "Aluno.findAll", query = "SELECT a FROM Aluno a"),
    @NamedQuery(name = "Aluno.findByNuMatricula", query = "SELECT a FROM Aluno a WHERE a.nuMatricula = :nuMatricula"),
    @NamedQuery(name = "Aluno.findByNoPai", query = "SELECT a FROM Aluno a WHERE a.noPai = :noPai"),
    @NamedQuery(name = "Aluno.findByNoMae", query = "SELECT a FROM Aluno a WHERE a.noMae = :noMae"),
    @NamedQuery(name = "Aluno.findByTxModalidadeEnsino", query = "SELECT a FROM Aluno a WHERE a.txModalidadeEnsino = :txModalidadeEnsino"),
    @NamedQuery(name = "Aluno.findByTxSerie", query = "SELECT a FROM Aluno a WHERE a.txSerie = :txSerie"),
    @NamedQuery(name = "Aluno.findByTxTurma", query = "SELECT a FROM Aluno a WHERE a.txTurma = :txTurma"),
    @NamedQuery(name = "Aluno.findByTxTurno", query = "SELECT a FROM Aluno a WHERE a.txTurno = :txTurno"),
    @NamedQuery(name = "Aluno.findByCodUsuario", query = "SELECT a FROM Aluno a WHERE a.codUsuario = :codUsuario")})

public class Aluno extends Usuario implements Serializable {
    private static final long serialVersionUID = 1L;
    @Basic(optional = false)
    @Column(name = "NuMatricula", nullable = false)
    private int nuMatricula;
    @Basic(optional = false)
    @Column(name = "NoPai", nullable = false, length = 100)
    private String noPai;
    @Basic(optional = false)
    @Column(name = "NoMae", nullable = false, length = 100)
    private String noMae;
    @Basic(optional = false)
    @Column(name = "TxModalidadeEnsino", nullable = false, length = 20)
    private String txModalidadeEnsino;
    @Basic(optional = false)
    @Column(name = "TxSerie", nullable = false, length = 20)
    private String txSerie;
    @Basic(optional = false)
    @Column(name = "TxTurma", nullable = false)
    private char txTurma;
    @Basic(optional = false)
    @Column(name = "TxTurno", nullable = false, length = 20)
    private String txTurno;
    
    public Aluno() {
    }

    public Aluno(int nuMatricula, String noPai, String noMae, String txModalidadeEnsino, String txSerie, char txTurma, String txTurno) {
        this.nuMatricula = nuMatricula;
        this.noPai = noPai;
        this.noMae = noMae;
        this.txModalidadeEnsino = txModalidadeEnsino;
        this.txSerie = txSerie;
        this.txTurma = txTurma;
        this.txTurno = txTurno;
    }

    public int getNuMatricula() {
        return nuMatricula;
    }

    public void setNuMatricula(int nuMatricula) {
        this.nuMatricula = nuMatricula;
    }

    public String getNoPai() {
        return noPai;
    }

    public void setNoPai(String noPai) {
        this.noPai = noPai;
    }

    public String getNoMae() {
        return noMae;
    }

    public void setNoMae(String noMae) {
        this.noMae = noMae;
    }

    public String getTxModalidadeEnsino() {
        return txModalidadeEnsino;
    }

    public void setTxModalidadeEnsino(String txModalidadeEnsino) {
        this.txModalidadeEnsino = txModalidadeEnsino;
    }

    public String getTxSerie() {
        return txSerie;
    }

    public void setTxSerie(String txSerie) {
        this.txSerie = txSerie;
    }

    public char getTxTurma() {
        return txTurma;
    }

    public void setTxTurma(char txTurma) {
        this.txTurma = txTurma;
    }

    public String getTxTurno() {
        return txTurno;
    }

    public void setTxTurno(String txTurno) {
        this.txTurno = txTurno;
    }

    @Override
    public String toString() {
        return "br.com.Dominio.Aluno[ codUsuario=" + getCodUsuario() + " ]";
    }
    
}

1 Resposta

Jackye

Olá pessoal.

Pelo que observei, está apresentado esta advertencia porque não tá permitindo as queries nomeadas quando não se trata de superclasse, ou seja,
no projeto não tá podendo criar queries nomeadas para uma classe filha.

Como resolvo isso?

:cry:

Criado 27 de fevereiro de 2012
Ultima resposta 27 de fev. de 2012
Respostas 1
Participantes 1