解决方案 »

  1.   

    com.jxdb.action.UserAction.execute
    看看这里有没有没实例化的对象
      

  2.   

    有一个User对象实例化了public class UserAction extends ActionSupport{
       public UserService userService;
    public String username;
    public String password;
    public String password2;@Override
       public String execute() throws Exception{
       User u=new User();
       System.out.println(username+password);
       u.setUsername(username);
       u.setPassword(password);
       userService.add(u);
       return "success";
       }
      
       
    public String getUsername() {
    return username;
    }public void setUsername(String username) {
    this.username = username;
    }public String getPassword() {
    return password;
    }public void setPassword(String password) {
    this.password = password;
    }public String getPassword2() {
    return password2;
    }public void setPassword2(String password2) {
    this.password2 = password2;
    }
    public UserService getUserService() {
    return userService;
    }
    public void setUserService(UserService userService) {
    this.userService = userService;
    }
       
       
       
       
       
    }
      

  3.   

    我建议先集成spring和hibernate,再利用struts2支持spring的插件jar文件集成进去。不要一起全部集成,会很难排查错误的
      

  4.   

    首先你要学会看异常 
    java.lang.NullPointerException
     com.jxdb.action.UserAction.execute(UserAction.java:19)说明在你UserAction.java的19行 报了空指针异常   然后分析你代码,你JAVA类应该没什么问题,所以问题应该出在你Spring的注入上,你的Spring没有吧userService注入到UserAction中,所以:检查你Spring的配置文件中是否注入了userService吧。
      

  5.   

    同意楼上的,可能是你的Spring没注入,会报空指针,以前我也遇到过!
      

  6.   

    com.jxdb.action.UserAction.execute
    看看这里有没有没实例化的对象
      

  7.   

    userService没注入。 或者你需要new出一个UserService
      

  8.   

    同意楼上的,可能是你的Spring没注入,会报空指针,以前我也遇到过!
      

  9.   

    userService没有注入spring管理吧? 加上注解@Autowired   UserAction如果也让spring管理了  加上注解@Component。
      

  10.   

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:aop="http://www.springframework.org/schema/aop"
    xmlns:tx="http://www.springframework.org/schema/tx"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
               http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
               http://www.springframework.org/schema/context
               http://www.springframework.org/schema/context/spring-context-2.5.xsd
               http://www.springframework.org/schema/aop
               http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
               http://www.springframework.org/schema/tx 
               http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">
    <!--  <context:annotation-config />-->
    <!--<context:component-scan base-package="com.bjsxt" />--> <!-- 
    <bean id="dataSource"
    class="org.apache.commons.dbcp.BasicDataSource"
    destroy-method="close">


    <property name="driverClassName" value="com.mysql.jdbc.Driver" />
    <property name="url" value="jdbc:mysql://localhost:3306/spring" />
    <property name="username" value="root" />
    <property name="password" value="bjsxt" />
    </bean>
    --> <bean
    class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
    <property name="locations">
    <value>classpath:properties/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.LocalSessionFactoryBean">
    <property name="dataSource" ref="dataSource" />

    <property name="mappingLocations">
              <list>
                <value>classpath:/com/jxdb/model/hbm/User.hbm.xml</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="txManager"
    class="org.springframework.orm.hibernate3.HibernateTransactionManager">
    <property name="sessionFactory" ref="sessionFactory" />
    </bean> <aop:config>
    <aop:pointcut id="bussinessService"
    expression="execution(public * com.jxdb.service.*.*(..))" />
    <aop:advisor pointcut-ref="bussinessService"
    advice-ref="txAdvice" />
    </aop:config> <tx:advice id="txAdvice" transaction-manager="txManager">
    <tx:attributes>

    <tx:method name="add*" propagation="REQUIRED"/>
    </tx:attributes>
    </tx:advice>

    <bean id="userDao" class="com.jxdb.dao.daoImpl.UserDaoImpl">
    <property name="sessionFactory" ref="sessionFactory"></property>
    </bean>
    <bean id="userService" class="com.jxdb.service.serviceImpl.UserServiceImpl">
    <property name="userDao" ref="userDao"></property>
    </bean>
    <bean id="userAction" class="com.jxdb.action.UserAction">
    <property name="userService" ref="userService"></property>

    </bean></beans>
      

  11.   

    public class UserAction extends ActionSupport{
       public UserService userService;
    public String username;
    public String password;
    public String password2;@Override
       public String execute() throws Exception{
       User u=new User();
       System.out.println(username+password);
       u.setUsername(username);
       u.setPassword(password);
       userService.add(u);
       return "success";
       }
      
       
    public String getUsername() {
    return username;
    }public void setUsername(String username) {
    this.username = username;
    }public String getPassword() {
    return password;
    }public void setPassword(String password) {
    this.password = password;
    }public String getPassword2() {
    return password2;
    }public void setPassword2(String password2) {
    this.password2 = password2;
    }
    public UserService getUserService() {
    return userService;
    }
    public void setUserService(UserService userService) {
    this.userService = userService;
    }
       
       可能是有些地方配置错了吧
      

  12.   

    <?xml version="1.0" encoding="utf-8" ?>
    <!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>

    <package name="user"  extends="struts-default" namespace="">
          
    <action name="user" class="userAction"> <result name="success">/registerSuccess.jsp</result> </action>
    </package>
    </struts>