读书人

lt;gt;java.lang.NullPointerException

发布时间: 2012-04-30 22:33:26 作者: rapoo

<求助>java.lang.NullPointerException
错误页面:

Struts Problem Report
Struts has detected an unhandled exception:

Messages:
File: willow/business/code/action/CodeAction.java
Line number: 28


--------------------------------------------

Stacktraces
java.lang.NullPointerException
willow.business.code.action.CodeAction.execute(CodeAction.java:28)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
java.lang.reflect.Method.invoke(Unknown Source)
com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:453)
com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:292)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:255)
org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:256)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)
com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:176)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)
com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:265)
org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)
com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:138)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:211)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:211)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)
com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept
。。。。省略
相关代码:

Java code
package willow.business.code.action;import java.util.List;import org.apache.log4j.Logger;import org.springframework.beans.factory.BeanFactory;import willow.business.code.CodeForm;import willow.data.code.ICodeData;import willow.entity.code.Code;/** * Filename: CodeAction.java */public class CodeAction extends CodeForm {    private static final long serialVersionUID = 5371213145339553692L;    static Logger logger = Logger.getLogger(CodeAction.class);        public String execute() throws Exception {        String input = INPUT;        CodeForm cf = new CodeForm();        cf.setCode(getCode());        cf.setUpid(getUpid());        BeanFactory bf = (BeanFactory)getBeanFactory();        ICodeData cd = (ICodeData)bf.getBean("codedata");        List<Code> list = cd.getCodes(bf,null,cf);        logger.info(list.size());        getRequest().setAttribute("list", list);        input = SUCCESS;        return input;    }} 


applicationContext.xml 配置
Java code
<?xml version="1.0" encoding="UTF-8"?><!-- Filename: applicationContext.xml --><beans  xmlns="http://www.springframework.org/schema/beans"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xmlns:p="http://www.springframework.org/schema/p"  xsi:schemaLocation="http://www.springframework.org/schema/beans   http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">  <bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">    <property name="configLocation" value="classpath:hibernate.cfg.xml"></property>    <property name="hibernateProperties">      <props>        <prop key="hibernate.connection.autocommit">true</prop>      </props>    </property>  </bean>  <bean id="codedao" class="willow.dao.hibernate.code.CodeDao">    <property name="sessionFactory">      <ref bean="sessionFactory" />    </property>  </bean>  <bean id="codedata" class="willow.data.hibernate.code.CodeData"></bean>  <bean id="appraisedao" class="willow.dao.hibernate.science.AppraiseDao">    <property name="sessionFactory">      <ref bean="sessionFactory" />    </property>  </bean>  <bean id="appraisedata" class="willow.data.hibernate.science.AppraiseData"></bean>  <!-- Define IoC beans   <bean id="dao" class="willow.dao.c3p0.C3p0Dao"></bean>-->  <!-- Define AOP advice   <bean id="daoInterceptor" class="willow.data.advice.DaoInterceptor"></bean>-->  <!-- Define AOP target   <bean id="studentdata-target" class="willow.data.mysql.StudentData"></bean>-->  <!-- Define AOP proxy factory bean, invocation bean   <bean id="studentdata" class="org.springframework.aop.framework.ProxyFactoryBean">    <property name="proxyInterfaces">      <value>willow.data.mysql.IStudentData</value>    </property>    <property name="interceptorNames">      <list>        <value>daoInterceptor</value>        </list>    </property>    <property name="target">      <ref bean="studentdata-target"/>    </property>  </bean>-->  <!--                     Hibernate                 --></beans>


[解决办法]
ICodeData cd = (ICodeData)bf.getBean("codedata");

没有从spring中获取到 、

读书人网 >J2EE开发

热点推荐