Я изо всех сил пытаюсь добраться до сути исключения нулевого указателя, которое происходит, когда я пытаюсь выполнить запрос HQL с createQuery ().
Код для выполнения запроса довольно прост.Первоначально у меня был именованный запрос, который я вызывал, но для упрощения и устранения любых сложностей, которые я делаю (Springwildlife - это пакет, а Species - это класс / сущность):
Query q = session.createQuery("SELECT s FROM springwildlife.Species s");
(Кстати: я также попробовал это с именем пакета и без него. И я также попытался выполнить более простой запрос «FROM springwildlife.Species»)
Я создал отображение XML (виды.hbm.xml) примерно так:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="springwildlife.Species" table="species">
<id name="id" type="java.lang.Long" column="id" >
<generator class="native">
<param name="sequence">species_id_seq</param>
</generator>
</id>
<!-- in the actual file I have one these for each item I want to be mapped -->
<property name="propertyFromClass" type="java.lang.String">
<column name="sql_table_column_name" />
</property>
</hibernate-mapping>
В моем файле hibernate.cfg.xml я отображаю отображение следующим образом:
Мой класс / сущность выглядитвот так:
package springwildlife;
public class Species
{
// properties here
public Species()
{
}
// sets, gets, etc.
}
Кто-нибудь имеет представление о том, что происходит?Я потратил много времени, пытаясь отследить его, и я в тупике.
(Я не уверен, что это актуально, но на всякий случай я использую Resin в качестве сервера и IntelliJкак моя IDE)
Это трассировка стека (строка 68 в SpeciesFactory.java - это вызов createQuery):
[11-06-02 11:19:26.726] {http://*:8080-2} org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.lang.NullPointerException
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:656)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:549)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:119)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:96)
at com.caucho.server.dispatch.ServletFilterChain.doFilter(ServletFilterChain.java:109)
at com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:156)
at com.caucho.server.webapp.AccessLogFilterChain.doFilter(AccessLogFilterChain.java:95)
at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:287)
at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:792)
at com.caucho.network.listen.TcpSocketLink.dispatchRequest(TcpSocketLink.java:730)
at com.caucho.network.listen.TcpSocketLink.handleRequest(TcpSocketLink.java:689)
at com.caucho.network.listen.TcpSocketLink.handleRequestsImpl(TcpSocketLink.java:669)
at com.caucho.network.listen.TcpSocketLink.handleRequests(TcpSocketLink.java:617)
at com.caucho.network.listen.AcceptTask.doTask(AcceptTask.java:104)
at com.caucho.network.listen.ConnectionReadTask.runThread(ConnectionReadTask.java:98)
at com.caucho.network.listen.ConnectionReadTask.run(ConnectionReadTask.java:81)
at com.caucho.network.listen.AcceptTask.run(AcceptTask.java:67)
at com.caucho.env.thread.ResinThread.runTasks(ResinThread.java:164)
at com.caucho.env.thread.ResinThread.run(ResinThread.java:130)
Caused by: java.lang.NullPointerException
at springwildlife.SpeciesFactory.getSpeciesLister(SpeciesFactory.java:68)
at springwildlife.LifelistController.handleRequestInternal(LifelistController.java:26)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:790)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:719)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644)
... 18 more