Struts2拦截器问题

我现在的项目中没有在struts.xml中配置任何的拦截器,是否会自动隐藏一个默认的拦截器呢?现在项目前台是用的Ext,设计到上传图片,加了属性fileUpload:true,每个属性的name都是bena.XXX,可是每次到后台都报bean为空,出现空指针异常。是不是因为我没有在struts.xml中配置拦截器呢?可是第一次会出现空指针,刷新后,重新再保存就没有空指针了。很是奇怪,希望能有人帮忙解答一下。

3个回答

默认是继承 struts-default空间, 上传文件需要commons-fileupload-1.2.1.jar 包。

你可能是哪里写的有问题。

struts.xml 是继承struts-default 包。 struts-default 包声明有默认拦截器,其中文件拦截器就是FileUploadInterceptor 类处理

根据你struts2不同版本换吧。最终原因应该不是这个问题。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
struts2拦截器问题
package com.itcast.Interceptor;rnrnimport javax.script.Invocable;rnimport com.opensymphony.xwork2.ActionContext;rnimport com.opensymphony.xwork2.ActionInvocation;rnimport com.opensymphony.xwork2.interceptor.Interceptor;rnrnpublic class PermissionInterceptor implements Interceptor rnrn public void destroy() rn rnrn public void init() rn rnrn public String intercept(ActionInvocation arg0) throws Exception rn Object user = ActionContext.getContext().getSession().get("user");rn if (user != null)rn return invocation.invoke(); rn rn ActionContext.getContext().put("message", "权限不足");rn return "success";rn rnrnrn--------------------------------------------------------rn为何invocation.invoke(); 识别不出来啊?报错,请高手指点
STRUTS2拦截器问题
rnrnrnrn rn rn rn rn rn rn rn rn rn rn /jsp/login.jsprn rn rnrn rnrnrn rn rn listrn rn rn rn rn /jsp/listProject.jsprn /jsp/error.jsprn rn rn rn rn listrn /jsp/updateProject.jsprn /jsp/error.jsprn rnrn rnrnrn配置有什么错误?为什么不拦截呢?
struts2拦截器的问题
拦截器获得不到我这个action提交到context的参数,得到的是nullrnrnAction:rnpublic class LoginAction extends ActionSupport rn private String username;rn private String password; rn public String execute() throws Exception rnrn try rn HttpServletRequest req = ServletActionContext.getRequest(); rn String name = req.getParameter("name"); rn ActionContext context = ActionContext.getContext(); rn Map session = context.getSession();rn session.put("user", "user");rn 。。。。。。代码rn return ...;rn catch (Exception e) rn e.printStackTrace();rn return "fail";rn rn rnrn拦截器:rnrnimport java.util.Map;rnrnimport com.opensymphony.xwork2.Action;rnimport com.opensymphony.xwork2.ActionContext;rnimport com.opensymphony.xwork2.ActionInvocation;rnimport com.opensymphony.xwork2.interceptor.AbstractInterceptor;rnrnpublic class LoginInterceptor extends AbstractInterceptor rn public final static String USER_SESSION_KEY = "username";rn @Overridern public String intercept(ActionInvocation invocation) throws Exception rn rn System.out.println("浸入拦截器了");rn ActionContext ctx = invocation.getInvocationContext();rn Map session = ctx.getSession();rn String user = (String)session.get("user");rn System.out.println(user + "="); //////这里获得参数并输出rn if (user != null) rn return invocation.invoke();rn rn ctx.put("tip", "还没登陆");rn return Action.LOGIN;rn rnrnrnrn输出 null=rn请问这个是怎么回事啊?
struts2拦截器问题?
继承了MethodFilterInterceptor的拦截器中,和可以设置该拦截器拦截和不被拦截的方法;但我通过配置发现,该拦截器只能拦截execute方法和不拦截execute方法,对于其他的方法如果进行配制则没有任何效果?
Struts2拦截器的问题...
一个SSH2的小项目..准备是配上拦截器的。rn发现配上拦截器以后...进入Action就会报空指针错。rnrn我以为是Spring的问题,但是是可以到达Action的,但是Service类会报空指针错。rnrn[img=http://img.my.csdn.net/uploads/201302/08/1360322904_7215.jpg][/img]rnrn下面是Struts2配置文件的代码:rn[code=java]rnrn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn /index.jsprn rn rn rn writern rn rn /WEB-INF/ftl/manage.ftlrn rn /WEB-INF/ftl/write.ftlrn rn rn[/code]rnrn拦截器代码:rn[code=java]@Component("LoginInterceptor")rnpublic class LoginInterceptor extends AbstractInterceptor rn private static final long serialVersionUID = 1L;rn @Overridern public String intercept(ActionInvocation invocation) throws Exception rn Map session = invocation.getInvocationContext().getSession();rn String LoginSign = (String) session.get("LoginSign");rn if (null != LoginSign && LoginSign.equals("Logined")) rn System.out.println("拦截器:合法用户登录---");rn String result = invocation.invoke();rn return result;rn else rn System.out.println("拦截器:用户未登录---");rn return Action.LOGIN;rn rn rn[/code]rnrn登录的代码:rn[code=java]@Controller("UserAction")rn@Scope("prototype")rnpublic class UserAction extends BaseActionrn private static final long serialVersionUID = 1L;rn private UserService userService;rn public String LoginCheck()rn Author author = new Author();rn author.setName(request.getParameter("username"));rn author.setPassword(request.getParameter("password"));rn if(userService.login(author))rn session.put("LoginSign", "Logined");rn return SUCCESS;rn elsern return LOGIN;rn rn rn[/code]rnrn登陆后的访问页面代码:rnrn[code=java]@Controller("ArticleAction")rn@Scope("prototype")rnpublic class ArticleAction extends BaseActionrn private static final long serialVersionUID = 1L;rn private ArticleService articleService;rn private CategoryService categoryService;rn private String result;rn rn public String ArticleWrite() throws Exception rn List list = categoryService.findAll();rn request.setAttribute("clist", list);rn return SUCCESS;rn rnrn @Resource(name="articleService")rn public void setArticleService(ArticleService articleService) rn this.articleService = articleService;rn rn rn @Resource(name="categoryService")rn public void setCategoryService(CategoryService categoryService) rn this.categoryService = categoryService;rn rnrn public String getResult() rn return result;rn rnrn public void setResult(String result) rn this.result = result;rn rn[/code]
struts2拦截器
<package name="mySturtsInterceptor" extends="struts-default"> <interceptors> <interceptor name="MyInterceptor" class="com.cn.system.interceptor.MyInterceptor"></interceptor> <interceptor-stack name="myInterceptorStack"> <interceptor-ref name="MyInterceptor"/> <interceptor-ref name="defaultStack"/> </interceptor-stack> </interceptors> </package> <package name="person" namespace="/person" extends="mySturtsInterceptor"> <global-results> <result name="message">/WEB-INF/page/message.jsp</result> <result name="login" type="redirect">/index.jsp</result> </global-results> <action name="action_*" class="personAction" method="{1}"> <interceptor-ref name="myInterceptorStack"></interceptor-ref> </action> </package> /* 需要继承Interceptor接口以及实现接口里边的方法 */ public class MyInterceptor implements Interceptor{ public void destroy() { } public void init() { } public String intercept(ActionInvocation invocation) throws Exception { } }
Struts2拦截器
拦截器(interceptor)是Struts2最强大的特性之一,拦截器可以让你在Action和result被执行之前或之后进行一些处理。同时,拦截器也可以让你将通用的代码模块化并作为可重用的类。Struts2中的很多特性都是由拦截器来完成的。例如params拦截器将HTTP请求中的参数解析出来,并设置为Action的属性。servlet-config拦截器直接将HTTP请求中的HttpServl
Struts2自定义拦截器实例—登陆权限验证
Struts2自定义拦截器实例—登陆权限验证 版本:struts2.1.6 此实例实现功能:用户需要指定用户名登陆,登陆成功进入相应页面执行操作,否则返回到登陆页面进行登陆,当直接访问操作页面(登陆后才能访问的页面)时则不允许,须返回登陆页面。 代码如下: 一、页面 login.jsp [xhtml] view plaincopy %@ page la
相关热词 c# xml的遍历循环 c# 取 查看源码没有的 c#解决高并发 委托 c#日期转化为字符串 c# 显示问号 c# 字典对象池 c#5.0 安装程序 c# 分页算法 c# gmail 发邮件 c# 多层文件