Tratar erro de chave estrangeira

Boa tarde,

Como eu faço para tratar um erro de persistência, quando eu tenho um código da chave estrangeira da tabela A que não existe na tabela B como chave primaria.
Obrigado

Você deve validar essa informação antes de tentar persistir, consulte o ID em questão informado pelo usuário, caso exista faz a persistência, caso contrário informe o usuário com uma mensagem dizendo que o registro informado é inválido, pois não existe na base de dados.

Jonathan Primeiramente obrigado pela atenção.

O meu problema está no relacionamento quando faço o relacionamento das tabelas, estava acostumado com o php puro, que quando o filho não existia ele não listava, agora estou migrando para JAVA e não consigo fazer a mesma coisa.

Segue abaixo meu relacionamento JAVA e em seguida meu comando no SQL.

@OneToOne(orphanRemoval = true, optional = true)
@JoinColumn(name = “id_largura”, referencedColumnName = “id”)
private MaterialEstruturaDados idAltura;

select * from mat_cadastro_material m left join mat_estrutura_dados ed ON ed.id = m.id_comprimento
where m.id_comprimento = 14287;

Entendi, é que como você não havia descrevido um pouco mais sobre o problema a dúvida ficou bem vaga para o entendimento, no caso você está utilizando JPA ? (Nesse contexto sou iniciante ainda, tenho uma experiência maior com JDBC).
Está tratando os relacionamentos como unidirecional ou bidirecional ?

JPA, unidirecional

Qual o erro que ele te apresenta no log ?

11:35:14,839 ERROR [org.jboss.as.ejb3.invocation] (default task-94) WFLYEJB0034: EJB Invocation failed on component MaterialDaoImpl for method public abstract java.util.List br.com.clamom.sig.dao.MaterialDao.ListDescAutoComplete(java.lang.String): javax.ejb.EJBTransactionRolledbackException: Unable to find br.com.clamom.sig.model.MaterialEstruturaDados with id 14288