问题是这样的,我的action里面有一个业务逻辑层的一个属性,然后,如果我在struts.xml里面给action指定方法的话,
然后就是正常,如果是动态的方法的话,他就会报空指针异常的错误,谁知道这个是什么原因啊?如果要我贴代码的话,看到有人回复,我会贴出来的
然后就是正常,如果是动态的方法的话,他就会报空指针异常的错误,谁知道这个是什么原因啊?如果要我贴代码的话,看到有人回复,我会贴出来的
解决方案 »
- 急!!!莫名其妙的问题
- servlet小问题,求解!
- 首页左栏显示不出来
- java如何获得当前java程序所产生的进程号
- struts+Hibernate事务奇怪现象
- 请教一下各位高手,关于struts2的标签datetimepicker,急~~~
- 用jdbcTemplatez作insert操作的疑问
- 请问 项目组中 流程分析 是做什么?谢谢
- 读"企业应用架构模式"书,思考struts之mvc所处层,求教
- servlet调用local接口sessionbean weblogic服务,出现异常,急
- 在线等,hibernate的问题!!!!!!!!!!
- java写工程遇到数据库表缺少一个表,中途添加可以吗?
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<value>classpath:jdbc.properties</value>
</property>
</bean> <bean id="dataSource" destroy-method="close"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName"
value="${jdbc.driverClassName}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
</bean> <bean id="sessionFactory"
class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<!--
<property name="annotatedClasses">
<list>
<value>com.bjsxt.model.User</value>
<value>com.bjsxt.model.Log</value>
</list>
</property>
-->
<property name="packagesToScan">
<list>
<value>sh.java.entity</value>
</list>
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.MySQLDialect
</prop>
<prop key="hibernate.show_sql">true</prop>
</props>
</property>
</bean> <bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
<bean id="userdao" class="sh.java.dao.UserDAOImpl">
<property name="hibernateTemplate" ref="hibernateTemplate">
</property>
</bean>
<bean id="userserv" class="sh.java.services.UserServicesImpl">
<property name="userDao" ref="userdao"></property>
</bean>
<bean id="index" class="sh.java.web.UserAction" scope="prototype">
<property name="userServices" ref="userserv"></property>
</bean>
</beans>
这个是applicationContext的xml
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.1//EN"
"http://struts.apache.org/dtds/struts-2.1.dtd"><struts><constant name="struts.objectFactory" value="spring"/>
<constant name="struts.enable.DynamicMethodInvocation" value="true" />
<package name="registration" extends="struts-default">
<action name="index" class="sh.java.web.UserAction" method="add">
<result name="success">/success.jsp</result>
<result name="fail">/fail.jsp</result>
</action>
</package>
</struts>
这个是struts的xml
private Map<String,Object> request;
private User1 user;
private IuserServices userServices;
public void setUserServices(IuserServices userServices) {
System.err.println("set UserServices");
this.userServices = userServices;
}
public String add() throws Exception {
System.out.println("execute");
userServices.addUser(user);
return "success";
} public String doLogin() throws Exception {
System.out.println("userservices:"+userServices);
if(userServices.findByLogin(getUser()))
{
return SUCCESS;
}
return INPUT;
}
public User1 getUser() {
return user;
}
public void setUser(User1 user) {
System.out.println("setUser");
this.user = user;
}
public String findAllUser()
{
System.out.println("findAllUser");
System.out.println(userServices);
System.out.println(userServices.findAllUser().size());
request.put("lists", userServices.findAllUser());
return "list";
}
public void setRequest(Map<String, Object> request) {
this.request=request;
}
public Map<String, Object> getRequest() {
return request;
}}
这个就是我的action
然后在调用这个action的某个方法的时候,会报我那个userServices是空的
我都快郁闷死了
你的struts.xml中配置错误
<bean id="index" class="sh.java.web.UserAction" scope="prototype">
<property name="userServices" ref="userserv"></property>
</bean><!--class指向上面的 id-->
<action name="index" class="index" method="add">
...
把<bean id="xxx">
</bean>
这些都删除掉.和spring的配置重复了。