本人刚学spring+hibernate框架,遇到问题:在调用this.getHibernateTemplate().save(obj)老是报空指针异常!
配置文件
<beans>
<bean id="dataSourceOracle" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driver" value="oracle.jdbc.driver.OracleDriver" />
<property name="driverUrl" value="jdbc:oracle:thin:@127.0.0.1:1521:PROMANDB" />
<property name="password" value="123" />
<property name="user" value="root" />
</bean>
<bean id="sessionFactoryOracle" name="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="dataSourceOracle" />
</property>
<property name="mappingLocations">
<list>
<value>classpath:com/gocom/beans/*.hbm.xml</value>
</list>
</property> <property name="hibernateProperties">
<props>
<prop key="hibernate.connection.isolation">2</prop>
<prop key="hibernate.format_sql">false</prop>
<prop key="hibernate.use_sql_comments">false</prop>
<prop key="hibernate.dialect">base.MyOracleDialect</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.jdbc.batch_size">25</prop>
<prop key="hibernate.generate_statistics">false</prop>
<prop key="hibernate.connection.release_mode">auto</prop>
</props>
</property>
</bean> <!-- 以下为spring提供的hibernate事务管理类 -->
<bean id="hibernateTransactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory">
<ref bean="sessionFactoryOracle" />
</property>
</bean>
配置文件
<beans>
<bean id="dataSourceOracle" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driver" value="oracle.jdbc.driver.OracleDriver" />
<property name="driverUrl" value="jdbc:oracle:thin:@127.0.0.1:1521:PROMANDB" />
<property name="password" value="123" />
<property name="user" value="root" />
</bean>
<bean id="sessionFactoryOracle" name="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="dataSourceOracle" />
</property>
<property name="mappingLocations">
<list>
<value>classpath:com/gocom/beans/*.hbm.xml</value>
</list>
</property> <property name="hibernateProperties">
<props>
<prop key="hibernate.connection.isolation">2</prop>
<prop key="hibernate.format_sql">false</prop>
<prop key="hibernate.use_sql_comments">false</prop>
<prop key="hibernate.dialect">base.MyOracleDialect</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.jdbc.batch_size">25</prop>
<prop key="hibernate.generate_statistics">false</prop>
<prop key="hibernate.connection.release_mode">auto</prop>
</props>
</property>
</bean> <!-- 以下为spring提供的hibernate事务管理类 -->
<bean id="hibernateTransactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory">
<ref bean="sessionFactoryOracle" />
</property>
</bean>
解决方案 »
- 一个java.lang.NullPointerException错误
- HttpURLConnection发送post请求上传文件,文件为空?
- FCKeditor 上传图片调用的方法在哪
- Struts默认语言总去找***_en.properties?
- jsp的教程哪里有???
- dtree树复选框添加半选状态
- Java 主要用于什么开发,J2EE,J2SE各用于什么开发?Java和.NET谁更有优势
- 为什么String类型变量不能转变为Long类型?
- 请大家讨论一下 JSP && JavaBean && Servlet 的调试解决方案
- 启动Tomcat是报错了,求大神指点
- 有什么样式表能控制实现textarea透明,但是内容不透明吗?谢谢
- flex 子组件的初始化
不知道是this.getHibernateTemplate()为空,还是obj为空。
如果前面为空,那么可能是配置文件的问题。
<bean id="dataSourceOracle" class="org.logicalcobwebs.proxool.ProxoolDataSource">
<property name="alias" value="pb" />
<property name="driver" value="oracle.jdbc.driver.OracleDriver" />
<property name="driverUrl" value="jdbc:oracle:thin:@127.0.0.1:1521:PROMANDB" />
<property name="password" value="123" />
<property name="user" value="root" />
</bean>
<!-- 以下为spring 管理下的oracle hibernate sessinoFactory配置 其中mappingResources为开发时需添加的映射文件相对路径名称-->
<bean id="sessionFactoryOracle" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="mappingLocations">
<list>
<value>classpath:com/gocom/beans/*.hbm.xml</value>
</list>
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.show_sql">true</prop>
</props>
</property>
<!--
<property name="dataSource">
<ref bean="dataSourceOracle" />
</property>
-->
</bean>
<!-- 以下为spring提供的hibernate事务管理类 -->
<bean id="hibernateTransactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory">
<ref bean="sessionFactoryOracle" />
</property>
<property name="dataSource">
<ref bean="dataSourceOracle" />
</property> </bean>
可是还是一样,都是抛空指针异常!
java.lang.NullPointerException
at com.gocom.dao.TbProjectInfoDao.saveProjectInfo(TbProjectInfoDao.java:16)
at com.gocom.controller.CheckInFileController.handleRequest(CheckInFileController.java:74)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:874)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:808)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:476)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:441)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:667)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)