getResultList()
不会抛出NullPointerException
的方法(它返回如果没有匹配空列表),所以我猜测它应该是下列之一:
- 你没有注入/初始化
EntityManager em
(你忘了 @PersistenceContext
注释?)
- 字符串
username
是空
在EntityManager的空的情况下,检查是否有persistence.xml文件(这是强制性的!)。它应该看起来像:
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
<persistence-unit name="OEMSPU" transaction-type="JTA">
<provider>oracle.toplink.essentials.PersistenceProvider</provider>
<jta-data-source>ADD JNDI NAME OF YOUR DATASOURCE, e.g. jdbc/sample</jta-data-source>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties/>
</persistence-unit>
</persistence>
告诉我们的例外stacktrace! –
我没有收到异常的堆栈跟踪。该网页保持在同一页面中。 – Shilpa
您应该在某处获取堆栈跟踪*,例如在服务器日志中。除非你手动捕获异常,并且不使用'e.printStackTrace()'。在这种情况下,你应该解决这个问题 –