大家好,请高手们指点
我的servlet文件是:
package com.ljc.rank.ajax;import java.io.IOException;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import com.ljc.rank.vo.RankList;
import com.rank.service.AddUniversityMgr;public class ModifyServlet extends HttpServlet { private static final long serialVersionUID = 1L;
private AddUniversityMgr addUniversityMgr; public AddUniversityMgr getAddUniversityMgr() {
return addUniversityMgr;
} public void setAddUniversityMgr(AddUniversityMgr addUniversityMgr) {
this.addUniversityMgr = addUniversityMgr;
} protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
this.doPost(req, resp);
} protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setCharacterEncoding("utf8");
String uid = request.getParameter("uid").trim() ;
String uname = request.getParameter("uname") ;
String ulocation = request.getParameter("ulocation") ;
String utop = request.getParameter("utop").trim() ;
System.out.println(uid+"---"+uname+"---"+ulocation);
// RankListDAO rankListDAO = new RankListDAO();
RankList rankList = addUniversityMgr.findById(Integer.valueOf(Integer.parseInt(uid))) ;
rankList.setName(uname) ;
rankList.setLocation(ulocation);
rankList.setTop(Integer.valueOf(Integer.parseInt(utop)));
addUniversityMgr.attachDirty(rankList) ;
response.getWriter().write("success") ;
}}web.xml 内容为
<servlet-name>Modify</servlet-name>
<servlet-class>com.ljc.rank.ajax.ModifyServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Modify</servlet-name>
<url-pattern>/Modify</url-pattern>
</servlet-mapping>我的spring配置为
<bean name="/Modify" class="com.ljc.rank.ajax.ModifyServlet">
<property name="addUniversityMgr"><ref bean="AddUniversityMgr"/> </property>
</bean>当我运行程序的时候,为什么addUniversityMgr 始终为空呢?
当运行到 RankList rankList = addUniversityMgr.findById(Integer.valueOf(Integer.parseInt(uid))) ;这儿的时候出错了 Source not found for ApplicationFilterChain.internalDoFilter(ServletRequest, ServletResponse ,报这个错误!
请你们帮我解答一下,小弟在线等哦。谢谢!
我的servlet文件是:
package com.ljc.rank.ajax;import java.io.IOException;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import com.ljc.rank.vo.RankList;
import com.rank.service.AddUniversityMgr;public class ModifyServlet extends HttpServlet { private static final long serialVersionUID = 1L;
private AddUniversityMgr addUniversityMgr; public AddUniversityMgr getAddUniversityMgr() {
return addUniversityMgr;
} public void setAddUniversityMgr(AddUniversityMgr addUniversityMgr) {
this.addUniversityMgr = addUniversityMgr;
} protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
this.doPost(req, resp);
} protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setCharacterEncoding("utf8");
String uid = request.getParameter("uid").trim() ;
String uname = request.getParameter("uname") ;
String ulocation = request.getParameter("ulocation") ;
String utop = request.getParameter("utop").trim() ;
System.out.println(uid+"---"+uname+"---"+ulocation);
// RankListDAO rankListDAO = new RankListDAO();
RankList rankList = addUniversityMgr.findById(Integer.valueOf(Integer.parseInt(uid))) ;
rankList.setName(uname) ;
rankList.setLocation(ulocation);
rankList.setTop(Integer.valueOf(Integer.parseInt(utop)));
addUniversityMgr.attachDirty(rankList) ;
response.getWriter().write("success") ;
}}web.xml 内容为
<servlet-name>Modify</servlet-name>
<servlet-class>com.ljc.rank.ajax.ModifyServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Modify</servlet-name>
<url-pattern>/Modify</url-pattern>
</servlet-mapping>我的spring配置为
<bean name="/Modify" class="com.ljc.rank.ajax.ModifyServlet">
<property name="addUniversityMgr"><ref bean="AddUniversityMgr"/> </property>
</bean>当我运行程序的时候,为什么addUniversityMgr 始终为空呢?
当运行到 RankList rankList = addUniversityMgr.findById(Integer.valueOf(Integer.parseInt(uid))) ;这儿的时候出错了 Source not found for ApplicationFilterChain.internalDoFilter(ServletRequest, ServletResponse ,报这个错误!
请你们帮我解答一下,小弟在线等哦。谢谢!
解决方案 »
- Could not open Hibernate Session for transaction; nested exception is java.lang.
- jsp页面里如和实现图片上传的预览?
- 求助:如何让 JFreeChart 刻度 加权 显示
- asp调用java 写的webservice接口怎么用啊!(在线等)
- 北大青鸟一学员的感慨之一
- 关于JSP时间的问题!
- 上传文件遇到的问题,很急,大家帮忙啊!!
- jsp连接数据库总是出问题 空指针异常
- 高手们!这里有谁做过"网站开发建议书"的啊,在线等待..!
- 请问在JSP中怎么得到有多少条记录,象asp中的rs.recordcount()那样?
- 如何在同时安装两个IE?
- struts-2.1.6集成spring问题,struts2-spring-plugin-2.1.6.jar到底依赖了多少包?
这个配来当servlet的instance来用?
你是怎么让访问
时,用的是spring管理的servlet bean?
楼主的spring配置文件都没有配到web.xml里去,
如果你的这个配置文件的bean就定义了这么一个按理容器一启动就该报错, 如一楼所说
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import com.ljc.rank.vo.RankList;
import com.rank.service.AddUniversityMgr; public class ModifyServlet extends HttpServlet { private static final long serialVersionUID = 1L;
private AddUniversityMgr addUniversityMgr; public AddUniversityMgr getAddUniversityMgr() {
return addUniversityMgr;
} public void setAddUniversityMgr(AddUniversityMgr addUniversityMgr) {
this.addUniversityMgr = addUniversityMgr;
} protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
this.doPost(req, resp);
} protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setCharacterEncoding("utf8");
String uid = request.getParameter("uid").trim() ;
String uname = request.getParameter("uname") ;
String ulocation = request.getParameter("ulocation") ;
String utop = request.getParameter("utop").trim() ;
System.out.println(uid+"---"+uname+"---"+ulocation);
// RankListDAO rankListDAO = new RankListDAO();
RankList rankList = addUniversityMgr.findById(Integer.valueOf(Integer.parseInt(uid))) ;
rankList.setName(uname) ;
rankList.setLocation(ulocation);
rankList.setTop(Integer.valueOf(Integer.parseInt(utop)));
addUniversityMgr.attachDirty(rankList) ;
response.getWriter().write("success") ;
} } web.xml 内容为
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>3</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>3</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.action</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring/applicationContext*.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<filter>
<filter-name>Spring character encoding filter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>utf8</param-value>
</init-param>
</filter> <filter-mapping>
<filter-name>Spring character encoding filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter>
<filter-name>hibernateFilter</filter-name>
<filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>hibernateFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<servlet>
<servlet-name>Modify</servlet-name>
<servlet-class>com.ljc.rank.ajax.ModifyServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Modify</servlet-name>
<url-pattern>/Modify</url-pattern>
</servlet-mapping>
</web-app>
我的spring配置为
<bean id="RankListDAO" class="com.rank.dao.RankListDAO">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>
<bean id="AddUniversityMgr" class="com.rank.service.AddUniversityMgr" >
<property name="rankListDAO"><ref bean="RankListDAO"/></property>
</bean>
<bean name="/usermaint" class="com.rank.action.AddUniversityAction" scope="prototype">
<property name="addUniversityMgr"><ref bean="AddUniversityMgr"/>
</property>
</bean>
<bean name="/Modify" class="com.ljc.rank.ajax.ModifyServlet">
<property name="addUniversityMgr"><ref bean="AddUniversityMgr"/> </property>
</bean>当我运行程序的时候,为什么addUniversityMgr 始终为空呢?
当运行到 RankList rankList = addUniversityMgr.findById(Integer.valueOf(Integer.parseInt(uid))) ;这儿的时候出错了 Source not found for ApplicationFilterChain.internalDoFilter(ServletRequest, ServletResponse
管理了的啊。<bean name="/Modify" class="com.ljc.rank.ajax.ModifyServlet">
这不是吗
楼主,你怎么知道servlet是从spring容器里拿的?
你只是往容器里加了这么一个bean而已
假如没有用到spring,你没有配置任何的bean,你访问/Modify时会怎么样?说白了就是, /Modify, 用的tomcat(或者别的)维护的一个servlet instance,假设为A
你的spring配置只是往spring容器加了这么一个bean,假设为B,本来系统call的就是A, 你在其他地方加了一个B为啥就要call B了呢?
<plug-in className="org.springframework.web.struts.ContextLoaderPlugIn">
<set-property property="contextConfigLocation" value="classpath:applicationContext.xml"/>
</plug-in>