2014-10-30 47 views
0

我遇到了Java和Apache的问题。在我使用JDBC并现在转换为JPA之前,我正在开发一个小项目来研究它。我有一个显示人员的页面,您也可以使用搜索栏过滤列表。Apache与Java显示旧错误

问题是,当我运行Apache并尝试使用搜索栏过滤列表时,它显示一个旧错误,我已多次更改该错误。

public static List<Person> search(String search) { 
     EntityManager em = null; 
     try { 
      em = JpaUtil.getFactory().createEntityManager(); 

      TypedQuery<Person> query = em.createQuery("select p from Person p where upper(p.first_name) like upper('%" + search + "%')", Person.class); 

      return query.getResultList(); 
     } finally { 
      JpaUtil.closeQuietly(em); 
     } 
    } 

,但我得到了Apache的错误,上面写着:

org.hibernate.QueryException: expecting ''', found '<EOF>' [select * from customer where upper(first_name) like upper('%%') or upper(surname) like upper('%%'')] 

这是我的旧代码,我缺少什么?我已经检查了我的所有代码,但似乎无法找到旧部分不断显示为错误的原因。

+1

这是一个JPA错误,不是“Apache错误”。没有看到Apache与整体问题有什么关系。你的JPA查询是问题 – 2014-10-30 13:31:40

+0

好的,谢谢你指出,我会进一步研究JPA,至少我知道问题出在哪里。尽管我有一个显示People和Works的方法,但是当我将该方法复制到Bug时,我仍然得到相同的旧QueryException消息 – Renet 2014-10-30 14:35:39

回答

1

我发现了什么问题,我删除了我的常春藤.jar并重新放回。这解决了我的问题。祝你有个这个问题的人!