estou recebendo o seguinte erro ao tentar armazenar apenas a hora:
Calendar cannot persist TIME only
Tentei armazenar TIMESTAMP, funcionou, com DATE, também, mas com a hora esta dando esse erro :/
e quando ou por @ManyToMay, estou recebendo esse erro:
OBS: Estou usando MySQL e o Postgres
Illegal attempt to map a non collection as a @OneToMany, @ManyToMany or @CollectionOfElements
Meus códigos segue abaixo.
CLASSE FUNCIONARIO
@Entity
public class Funcionario {
@Id @GeneratedValue(strategy=GenerationType.AUTO)
private Integer id;
private String nome;
@Temporal(TemporalType.DATE)
private Calendar data_nasc;
private String email;
//Gettrs e setters....
CLASSE ORDEM DE SERVIÇO
@Entity
public class OrdemDeServico {
@Id @GeneratedValue(strategy=GenerationType.AUTO)
private int id;
@ManyToOne
private UsuarioComun nome_criador;
@ManyToMany
private Funcionario nome_realizou;
@ManyToMany
private Servico ordem_servico;
@Enumerated(EnumType.STRING)
private tipoStatus status;
@Temporal(TemporalType.TIME)
private Calendar tempo_total_atendimento;
//Getters and Setters
CLASSE SERVIÇO
@Entity
public class Servico {
// Identity para MYSQL AUTO para postgres
@Id @GeneratedValue(strategy=GenerationType.AUTO)
private int id;
@Enumerated(EnumType.STRING)
private tipoServico nome_servico;
private String descricao;
@Temporal(TemporalType.TIME)
private Calendar tempo_resposta;
@Temporal(TemporalType.TIME)
private Calendar tempo_servico;
//Gettrs e setters
CLASSE PRINCIPAL
public class MinhaClassePrincipal {
public static void main(String[] args) {
UsuarioComun user = new UsuarioComun();
user.setNome("Ismael");
user.setEmail("Not null");
user.setData_nasc(Calendar.getInstance());
Funcionario func = new Funcionario();
func.setNome("Ismael");
func.setEmail("Not null");
func.setData_nasc(Calendar.getInstance());
Servico ser = new Servico();
ser.setNome_servico(tipoServico.FORMATAÇÃO_DE_COMPUTADOR);
ser.setDescricao("Estamos formatando o computador");
ser.setTempo_resposta(Calendar.getInstance());
ser.setTempo_servico(Calendar.getInstance());
OrdemDeServico servico = new OrdemDeServico();
servico.setNome_criador(user);
servico.setNome_realizou(func);
servico.setOrdem_servico(ser);
servico.setStatus(tipoStatus.PENDENTE);
servico.setTempo_total_atendimento(Calendar.getInstance());
EntityManager manager = new UTIL().getEntity();
manager.getTransaction().begin();
manager.persist(user);
manager.persist(func);
manager.persist(ser);
manager.persist(servico);
manager.getTransaction().commit();
manager.close();
}
}