Foreign key null utilizando o Gson+JPA

Bom tarde estou pegando um json de uma URL e efetuando a persistência no banco de dados.
Todos os dados estão sendo gravados normalmente no banco de dados com exceção do principal_id na classe Secundária que deveria ser preenchido com o id da classe Principal.

Estou utilizando o Gson para manipular os dados da URL, segue abaixo um exemplo do código que estou utilizando.

Se alguém puder me ajudar ja estou a um tempinho tentando fazer isso

Obrigado.

public class Principal implements Serializable {

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
private String tipo;

@OneToMany(mappedBy = "principal", targetEntity = Secundaria.class, fetch = FetchType.LAZY, cascade = {CascadeType.PERSIST, CascadeType.MERGE, CascadeType.REMOVE, CascadeType.REFRESH}, orphanRemoval = true)
@Fetch(value = FetchMode.JOIN)
private List<Secundaria> dados;

}

public class Secundaria implements Serializable {

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
private String nome;

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "principal_id")
private Principal principal;

}

public static void main(String[] args) {

URL url = new URL("URL");
CookieHandler.setDefault(new CookieManager(null, CookiePolicy.ACCEPT_ALL));
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
connection.connect();
BufferedReader json = new BufferedReader(new InputStreamReader(connection.getInputStream()));
Principal dados = new Gson().fromJson(json, Principal.class);

}