Erro hibernate org.hibernate.AnnotationException: Illegal attempt to map a non collection as a @OneToMany, @ManyToMany

Estou começando a aprender sobre Hibernate e estou tendo problemas para criar as tabelas no banco de dados, pois tem sido exibido erro referente a ligação entre as tabelas “Colaborador” e “Evento”.

mar 08, 2016 9:38:29 PM org.hibernate.annotations.common.Version <clinit> INFO: HCANN000001: Hibernate Commons Annotations {4.0.1.Final} mar 08, 2016 9:38:29 PM org.hibernate.Version logVersion INFO: HHH000412: Hibernate Core {4.1.8.Final} mar 08, 2016 9:38:29 PM org.hibernate.cfg.Environment <clinit> INFO: HHH000206: hibernate.properties not found mar 08, 2016 9:38:29 PM org.hibernate.cfg.Environment buildBytecodeProvider INFO: HHH000021: Bytecode provider name : javassist Exception in thread "main" javax.persistence.PersistenceException: [PersistenceUnit: Associacao] Unable to build EntityManagerFactory at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:915) at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:890) at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:57) at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:63) at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:47) at bd.systems.associacao.jpa.TesteJPA.main(TesteJPA.java:19) Caused by: org.hibernate.AnnotationException: Illegal attempt to map a non collection as a @OneToMany, @ManyToMany or @CollectionOfElements: bd.systems.associacao.model.Colaborador.evento at org.hibernate.cfg.annotations.CollectionBinder.getCollectionBinder(CollectionBinder.java:327) at org.hibernate.cfg.AnnotationBinder.processElementAnnotations(AnnotationBinder.java:1719) at org.hibernate.cfg.AnnotationBinder.processIdPropertiesIfNotAlready(AnnotationBinder.java:766) at org.hibernate.cfg.AnnotationBinder.bindClass(AnnotationBinder.java:685) at org.hibernate.cfg.Configuration$MetadataSourceQueue.processAnnotatedClassesQueue(Configuration.java:3443) at org.hibernate.cfg.Configuration$MetadataSourceQueue.processMetadata(Configuration.java:3397) at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1341) at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1737) at org.hibernate.ejb.EntityManagerFactoryImpl.<init>(EntityManagerFactoryImpl.java:94) at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:905) ... 5 more

Segue o código da minha Entity “Colaborador”, a qual tem sido frisada no erro do Hibernate.

 @ManagedBean
 @SessionScoped
 @Entity
 @Table (name="Colaborador")
 public class Colaborador implements java.io.Serializable        {

  @Id @GeneratedValue(strategy=GenerationType.IDENTITY)
  private Integer id;
  private String nome;
  private String endereco;
  private String bairro;
  private String cidade;
  private String estado;
  private String telRes;
  private String telCel;
  @ManyToMany
  @JoinColumn(name = "funcaoId")
  private Funcao funcao;
  @ManyToMany
  @JoinColumn(name = "eventoId")
  private Evento evento;
  private boolean ativo;
  //Getters and setters

E a Entity “Evento”.

@ManagedBean
@SessionScoped
@Entity
@Table (name="Evento")
public class Evento implements java.io.Serializable {

@Id @GeneratedValue(strategy=GenerationType.IDENTITY)
private Integer id;
private String descricao;
private int diasProgramacao;
@Temporal(TemporalType.DATE)
private LocalDate dataInicioEvento;
@Temporal(TemporalType.DATE)
private LocalDate dataFinalEvento;
private int horario;
private int duracaoEvento;
private int qtdeMaximaParticipantes;
private boolean ativo;
//Getters and setters

Não consegui compreender sobre o que está ocorrendo e como resolver esse problema.
Desde já agradeço por qualquer ajuda dos colegas.

O erro diz tudo. Não podes ter a anotação @ManyToMany num objeto do tipo Evento. Ou tens a anotação errada e deveria ser @ManyToOne ou tens o objeto errado e deveria ser List. O mesmo se aplica para Funcao.

Muito obrigado pmlm.