解决方案 »
- Server returned HTTP response code: 500 for URL
- jsp页面被动刷新.
- 关于java中输出HTML代码的问题
- 想请教下window.onload=c 和window.onload=c()的区别?
- 有点混淆${....}和<%=....%>
- [求助]请问如何管理众多的变量(Between Server And Client)
- installshield乱码问题,在线急等!!!!!
- jsp的button onclick事件 如何传带html标签的参数给js
- 在线等待,对文件的操作,高分求救!
- [求助]一个简单的问题,请高手帮忙
- java 遇挫求破
- java bbs
如果是的话,我猜你是没把action交给spring来创建!
在struts配置文件中加上这句看还会报错不<constant name="struts.objectFactory" value="spring" />
我在struts.xml里面加了,没用咧
在配置啦?我把配置文件全部贴出来吧。
在改了set,get方法之后又有这个问题了。我是菜鸟,第一次用ssh,请大家指教哈。loginaction类:
package com.bus.action;import java.util.List;import com.bus.model.TbUser;
import com.bus.service.LoginService;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ActionContext;
import org.apache.struts2.ServletActionContext;public class LoginAction extends ActionSupport {
/**
*
*/
private static final long serialVersionUID = 1L;
private String userName;
private String userPwd;
private LoginService lc;
private TbUser user;
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getUserPwd() {
return userPwd;
}
public void setUserPwd(String userPwd) {
this.userPwd = userPwd;
}
public LoginService getLc() {
return lc;
}
public void setLc(LoginService lc) {
this.lc = lc;
}
public TbUser getUser() {
return user;
}
public void setUser(TbUser user) {
this.user = user;
}
public String execute() throws Exception { System.out.print("对象"+user+"用户名:"+user.getUserName()+"密码:"+user.getUserPwd());
boolean b = lc.isLogin(user);
if (b) {
ActionContext.getContext().getSession().put("login", "true");
return SUCCESS;
} else {
return ERROR;
}
}}
TbUserDAO:函数
public boolean findLogin(TbUser user) {
// TODO Auto-generated method stub
String hql = "from TbUser where userName='" + user.getUserName() + "'and userPwd='" + user.getUserPwd() + "'";
System.out.println(hql);
List userlist = this.getHibernateTemplate().find(hql);
if (userlist.size() > 0)
return true;
else
return false;
}applicationContext配置文件
<?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:p="http://www.springframework.org/schema/p"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<!-- 定义数据源Bean -->
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver">
</property>
<property name="url" value="jdbc:mysql://localhost:3306/heybus">
</property>
<property name="username" value="root"></property>
<property name="password" value="040528"></property>
</bean> <bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <!-- 指定数据源 -->
<property name="dataSource">
<ref bean="dataSource" />
</property> <!-- 指定数据库方言 -->
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.MySQLDialect
</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.format_sql">false</prop>
<prop key="hibernate.hbm2ddl.auto">update</prop>
</props>
</property> <!-- 指定映射文件 -->
<property name="mappingResources">
<list>
<value>com/bus/model/TbUserqueryinfo.hbm.xml</value>
<value>com/bus/model/TbPriceinfo.hbm.xml</value>
<value>com/bus/model/TbTransitline.hbm.xml</value>
<value>com/bus/model/TbTransitinfo.hbm.xml</value>
<value>com/bus/model/TbTransittype.hbm.xml</value>
<value>com/bus/model/TbLinestation.hbm.xml</value>
<value>com/bus/model/TbTransitstation.hbm.xml</value>
<value>com/bus/model/TbPricetype.hbm.xml</value>
<value>com/bus/model/TbUser.hbm.xml</value>
</list>
</property>
</bean>
<!-- 定义hibernateTemplate-->
<bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>
<!-- 配置DAO组件 --> <!--
注入SessionFactory ,不是给类的,而是给继承HibernateDaoSupport类的sessionFactory
-->
<bean id="TbUserqueryinfoDAO" class="com.bus.dao.TbUserqueryinfoDAO">
<property name="hibernateTemplate">
<ref bean="hibernateTemplate" />
</property>
</bean>
<bean id="TbPriceinfoDAO" class="com.bus.dao.TbPriceinfoDAO">
<property name="hibernateTemplate">
<ref bean="hibernateTemplate" />
</property>
</bean>
<bean id="TbTransitlineDAO" class="com.bus.dao.TbTransitlineDAO">
<property name="hibernateTemplate">
<ref bean="hibernateTemplate" />
</property>
</bean>
<bean id="TbTransitinfoDAO" class="com.bus.dao.TbTransitinfoDAO">
<property name="hibernateTemplate">
<ref bean="hibernateTemplate" />
</property>
</bean>
<bean id="TbTransittypeDAO" class="com.bus.dao.TbTransittypeDAO">
<property name="hibernateTemplate">
<ref bean="hibernateTemplate" />
</property>
</bean>
<bean id="TbLinestationDAO" class="com.bus.dao.TbLinestationDAO">
<property name="hibernateTemplate">
<ref bean="hibernateTemplate" />
</property>
</bean>
<bean id="TbTransitstationDAO" class="com.bus.dao.TbTransitstationDAO">
<property name="hibernateTemplate">
<ref bean="hibernateTemplate" />
</property>
</bean>
<bean id="TbPricetypeDAO" class="com.bus.dao.TbPricetypeDAO">
<property name="hibernateTemplate">
<ref bean="hibernateTemplate" />
</property>
</bean>
<bean id="TbUserDAO" class="com.bus.dao.TbUserDAO">
<property name="hibernateTemplate">
<ref bean="hibernateTemplate" />
</property>
</bean> <!-- 配置业务逻辑组件 -->
<bean id="usersService" class="com.bus.serviceimpl.UsersServiceImpl">
<!-- 为业务逻辑组件注入DAO组件 -->
<property name="dao" ref="TbUserDAO"></property>
</bean> <bean id="loginService" class="com.bus.service.LoginService">
<!-- 为业务逻辑组件注入DAO组件 -->
<property name="dao" ref="TbUserDAO"></property>
</bean>
<!-- 创建LoginAction实例 -->
<bean id="loginAction" class="com.bus.action.LoginAction" scope="prototype">
<property name="lc" ref="loginService">
</property>
</bean>
</beans>struts配置文件
<?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>
<!--指定Struts 2默认的ObjectFactory Bean,该属性默认值是spring. -->
<constant name="struts.objectFactory" value="spring" />
<package name="myPackage" extends="struts-default"> <interceptors>
<interceptor name="clearFieldErrorInterceptor"
class="com.bus.util.ClearFieldErrorInterceptor"></interceptor>
<interceptor-stack name="myStack">
<interceptor-ref name="clearFieldErrorInterceptor"></interceptor-ref>
</interceptor-stack>
</interceptors> <action name="login" class="loginAction">
<result name="success">loginOk.jsp</result>
<result name="input">login.jsp</result>
<result name="error">loginFailure.jsp</result>
</action>
</package>
</struts> 出现的异常是:
java.lang.NullPointerException
com.bus.action.LoginAction.execute(LoginAction.java:83)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)