[resolvido] no transaction is currently active

Mais uma vez estou aqui, postando no avançado, pois não consegui um solução para o meu problema.
Seguinte, tenho algumas tabelas no banco de dados que possuem um relacionamento zero-para-muitos em sua estrutura e de acordo com a regra de negócios, porém, ao criar as classes de entidades do JPA com o Netbeans as annotations aparecem @ManyToOne / @OneToMany, sendo que não é exatamente isso que quero explico:

Para que um Procedimento Médico possa ser cadastrado este precisa de:

  • Valor.
  • Porte Básico.
  • Porte Anestésico.
    Para que o Porte Anestésico posse ser cadastrado este pode ou não ter um Porte Básico, assim sendo, um Porte Anestésico pode possuir ou não um Porte Básico, e um Porte Básico pode ter vários Portes Anestésicos.
    A minha dificuldade é fazer com que minha classe de entidade entenda isso, pois quando tendo inserir um Porte Anestésico, via sistema, não consigo pois o Netbeans me envia a seguinte mensagem de erro: NO TRANSACTION IS CURRENTLY ACTIVE

Todas as classes que não possuem relacionamentos estão funcionando perfeitamente usando o JPA, porém as que possuem, não consigo inserir, todas apresentam esta mesma mensagem.

Está aqui uma parte do meu código.

Classe Porte:

    @OneToMany(cascade = CascadeType.REFRESH)
    private List<PorteAnestesico> porteAnestesicoList;

Classe PorteAnestesico:

    @ManyToOne(cascade = CascadeType.REFRESH)
    @JoinColumn(name = "nr_porte")
    private Porte nrPorte;

Não necessito que este relacionamento seja bidirecional, por este motivo não coloquei o ‘mappedBy’. Existe algo errado com este relacionamento?

PS: Estou trabalhando com Java Swing e banco de dados PostgreSQL.

Desde já agradeço a ajuda de todos.

Camarada, esta mensagem "NO TRANSACTION IS CURRENTLY ACTIVE " não tem nada a ver com a questão do relacionamento (aliás, nunca ouvi falar em 0 : N, apenas 1 : 0).
O problema é que você está referenciando uma dependência e, implicitamente, colocando-a para ser carregada “preguiçosamente” (lazy loading).
Quando você faz um select, busca a entidade principal e, apenas o que é dela na tabela mapeada para a mesma. Quando você referencia algum atributo dependente, que fica em outra tabela, o hibernate tentará realizar uma nova consulta. Como você não trata esta situação, acaba tendo um erro, ocasionando a mensagem que você recebe.

drsmachado, não estou usando o Hibernate, porém, vou verificar a questão do fetch, qualquer coisa post aqui novamente, muito obrigado.

Me equivoquei ao citar o hibernate, mas, o fetch é gerenciado pelo JPA, independente de quem seja o provider.

Aí, seguinte, fiz a alteração do FetchType, porém ocorreu um erro que não estava ocorrendo, no momento da pesquisa, informando que o relacionamento não está mapeado, estou retornando o que estava antes, pois não quero que seja bidirecional e o erro que postei estava ocorrendo apenas na inserção de registros.

Galera, ao imprimir a saída do erro no console usando o Log4J descobri que o erro não é este exatamente, o log4j me apresenta um erro de tipo de dados, que estou tentando inserir um dado do tipo double precision em um campo do tipo money. Corrigi o campo e o registro foi inserido com sucesso.
Estou encerrando o Post, fica aqui a dica pra quem tiver o mesmo erro.
Obrigado pela ajuda de todos.