Problema com mapeamento?

Tenho este mapeamento

public class ErroAlertaCampoEncontradoEntity implements Serializable {
    @ManyToOne
    @JoinColumn(name = "eea_id")
    public ErroAlertaEncontradoEntity getErrosAlertasEncontrados() {
    	return erroAlertaEncontrado;
    }

    public void setErrosAlertasEncontrados(ErroAlertaEncontradoEntity erroAlertaEncontrado) {
    	this.erroAlertaEncontrado = erroAlertaEncontrado;
    }

E este

`public class ErroAlertaEncontradoEntity implements Serializable {`

    @OneToMany(mappedBy = "erroAlertaEncontrado", fetch = FetchType.LAZY)
    public List<ErroAlertaEncontradoEntity> getErrosAlertasEncontrados() {
    	return errosAlertasEncontrados;
    }

    public void setErrosAlertasEncontrados(List<ErroAlertaEncontradoEntity> errosAlertasEncontrados) {
    	this.errosAlertasEncontrados = errosAlertasEncontrados;
    }

Problema que no segundo está com erro de compilação, dizendo:
In attribute ‘errosAlertasCamposEncontrados’, the “mapped by” value ‘erroAlertaEncontrado’ cannot be resolved to an attribute on the target entity.

Não estou conseguindo identificar

Simples, o atributo não é erroAlertaEncontrado e sim errosAlertasEncontrados.
Você precisa certificar que a grafia é a mesma.

Ele pega o que está escrito aqui getErrosAlertasEncontrados, tirando o get ?

Sim, no caso ele pega o nome do atributo da classe no mappedBy.

Olha só, vamos falar de conceitos de java, padrões de nomes e etc.
Primeiro, você sabe que o uso de getter e setter é uma das maneiras que o java fornece para encapsulamento de dados, um conceito de orientação a objetos que é muito importante (existem outros além desse, ok?).
É um costume (até mesmo muito errado) dos desenvolvedores saírem criando getters e setters para quase tudo, justificando que é para acessar os atributos privados (mesmo que getters e/ou setters nem sejam precisos).
Bom, o que acontece, com isso, é que nos acostumamos a ver coisas como

private int codigo;

public void setCodigo(int codigo) {
    this.codigo = codigo;
}

public int getCodigo() {
    return this.codigo;
}

Que está correto.
O que muitos esquecem é que podemos ter coisas como

private int codigo;

public void setIdentificador(int identificador) {
    this.codigo = identificador;
}


public int getIdentificador() {
    return this.codigo;
}

Assim sendo, quem vai ler ou definir o valor que representa a identificação ou o código de algo, vai interpretar que o atributo se chama “identificador”, pois o getter e o setter respectivos tem o prefixo (get ou set) e é seguido pela palavra Identificador (com i maiúsculo sim).
Se você utiliza JSF, sabe que precisa ter um getter e um setter para cada objeto do managed bean que será mapeado no xhtml, para definir ou ter seu valor definido a partir de um componente.

No teu caso, o hibernate está seguindo a mesma lógica. Ele pega o método que você mapeou, remove o prefixo (get) e interpreta que ele representa um atributo de nome errosAlertasEncontrados.
Ocorre que, no outro lado da associação, você diz que o atributo que mapeia a relação tem o nome erroAlertaEncontrado

Certo:   errosAlertasEncontrados
Errado:  erroAlertaEncontrado

Entendeu?

Entendi,

Após refazer o código está funcional.

Obrigado