Chave estrangeira API Java

Estou querendo pegar o id de uma outra tabela e associar a tabela na qual estou, no caso

So que quando dou o POST para criar um id novo e associar ao id de Equipment Model nao esta funcionando me retorna esse erro e nao consigo achar o motivo


2022-04-22 15:14:25.206 ERROR 3980 — [nio-8080-exec-2] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.dao.DataIntegrityViolationException: could not execute statement; SQL [n/a]; constraint [equipment_model_id" of relation "equipment]; nested exception is org.hibernate.exception.ConstraintViolationException: could not execute statement] with root cause

org.postgresql.util.PSQLException: ERROR: null value in column “equipment_model_id” of relation “equipment” violates not-null constraint
Detalhe: Failing row contains (363841f8-849d-4e0e-aae8-4699f5d19ab5, null, HB-3001).


Alguem poderia me dar alguma ajuda?

Mostra sua lógica de negócio, ou seja, o código em que você faz a persistência. Vc precisa pegar um objeto do tipo Equipment_Model que está sendo gerenciado pelo entity manager, configurar no seu novo Equipment e salvar. Precisamos ver o que vc está fazendo para ver o problema.

Como não detalhou outras partes que seriam importantes para a resposta estar mais assertiva, estou tentando imaginar que seria algo como isso:

Banco

ALTER TABLE Equipment
ADD CONSTRAINT fk_model_id
FOREIGN KEY (model_id)
REFERENCES Equipment_Model(id);

Java (Está mais simples que o seu)

@Entity
@Table(name = "Equipment")
public class Equipment {
    
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
    
    @ManyToOne
    @JoinColumn(name = "model_id")
    private EquipmentModel model;
    
    // outros campos e métodos
    
    // getters e setters
}