java .lang.IllegalArgumentException: org.hibernate.hql.internal.ast.QuerySyntaxException: evento не отображается [выберите c from evento] - PullRequest
0 голосов
/ 23 апреля 2020

Я пытаюсь выбрать все элементы в таблице под названием «Evento» (база данных была создана с помощью кода, и таблицы имеют одинаковые имена моделей). С другими моделями, использующими подобный код, у меня не было никаких проблем. Когда я пытаюсь с этой таблицей мы получаем эту ошибку в консоли:

[WARNING] /EventiController
java.lang.IllegalArgumentException: org.hibernate.hql.internal.ast.QuerySyntaxException: evento is not mapped [select c from evento]
    at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:138)
    at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:181)
    at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:188)
    at org.hibernate.internal.AbstractSharedSessionContract.createQuery(AbstractSharedSessionContract.java:718)
    at org.hibernate.internal.AbstractSharedSessionContract.createQuery(AbstractSharedSessionContract.java:809)
    at org.hibernate.internal.AbstractSessionImpl.createQuery(AbstractSessionImpl.java:23)
    at business.UtenteAppManager.visualizzaTuttiEventi(UtenteAppManager.java:47)
    at controller.EventiController.doGet(EventiController.java:48)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:687)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
    at org.eclipse.jetty.servlet.ServletHolder$NotAsyncServlet.service(ServletHolder.java:1386)
    at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:755)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1617)

Это модель:

 @NamedQueries(  
            {  
                @NamedQuery(  
                name = "cercaEventiPerOrganizzatore",  
                query = "select c from Evento c where c.organizzatore= :username"  

                ),
                @NamedQuery(
                name = "cercaEventiPerPartecipante",
                query = "select c from Evento c where c.partecipanti= :username"
                ),

                @NamedQuery(
                        name = "cercaEventi",
                        query = "SELECT c FROM Evento c "
                        )
            }  
        )  

    @Entity
    public class Evento {

        @Id
        @GeneratedValue(strategy = GenerationType.IDENTITY)
        private int id_evento;
        @OneToOne
        private UtenteApp organizzatore;
        private String nomeEvento;
        @Temporal(TemporalType.DATE)
        private Date dataEvento;

    }

Это метод в бизнес-классе

 public List<Evento> visualizzaTuttiEventi(){
        List<Evento> _return= new ArrayList<Evento>();

        EntityManager em = JPAUtil.getInstance().getEmf().createEntityManager();

        _return=em.createQuery("select c from evento",Evento.class).getResultList();
        em.close();
        return _return;

    }
...