struts2通配符的问题

问题描述

首先,我这样配置一个页面<packagename="basePackage"extends="struts-default"namespace="/admin"><actionname="*"><result>/WEB-INF/admin/{1}.jsp</result></action></package>

那么我访问http://localhost:8080/Demo/admin/admin是可以访问到/WEB-INF/admin/admin.jsp页面的但现在我要访问的页面不单单放在WEB/INF的admin文件夹下面,还有WEB-INF的user文件夹,system文件夹等等的页面开始我以为可以这样配<actionname="*/*"><result>/WEB-INF/{1}/{2}.jsp</result></action>

接着访问http://localhost:8080/Demo/admin/admin提示找不到http://localhost:8080/Demo/admin/.jsp问题一:那么现在,我应该怎么写呢?接上面的例子,一开始的action配置我可以通过http://localhost:8080/Demo/admin/admin访问admin.jsp但我发现也可以用http://localhost:8080/Demo/admin/admin/admin或者http://localhost:8080/Demo/admin/admin/admin...反正命名空间跟通配符能匹配都能进入admin.jsp页面,但是,admin.jsp页面的css,js也就引入不进来了,因为我都是用相对路径来引用的问题二:在struts2中,能不能设置访问如http://localhost:8080/Demo/admin/admin/admin/admin...的时候,会自动转向会http://localhost:8080/Demo/admin/admin,或者其他统一的提示页面?

时间: 2024-10-23 21:50:38

struts2通配符的问题的相关文章

Struts2.1.6--想用通配符,不容易

初次使用Struts2,老老实实为每个action method配置url mapping文件. 时间长了,难为觉得繁琐,为何不使用COC的方式呢?终于,想到了使用通配符. 查看Struts2 Docs,找到相关配置方法: <package name="alliance" namespace="/alliance" extends="struts- default"> <action name="*/*" c

actionmapper-我在读取Struts2源码的时候,不了解ActionMapper怎样读取通配符的?

问题描述 我在读取Struts2源码的时候,不了解ActionMapper怎样读取通配符的? 在读取Struts2源码的时候~ public ActionMapping getMapping(HttpServletRequest request, ConfigurationManager configManager) { ActionMapping mapping = new ActionMapping(); String uri = RequestUtils.getUri(request);

Struts2学习笔记(4)-通配符的使用_java

通配符是在struts2配置中非常常用的一种配置方式,在程序开发过程中要遵循"约定优于配置"的原则,在这种原则下,约定的结果如果比较合适的话,就会大大减少配置的数量,使得配置变得非常简单,方便. 下面以例子来做下说明: 1.由如此的一个struts.xml配置文件: 复制代码 代码如下: <?xml version="1.0" encoding="UTF-8" ?>  <!DOCTYPE struts PUBLIC      &

Struts2中Action的通配符使用方法

在这篇<Struts2学习之配置单个Action多控制处理逻辑>文章中,讲到指定method属性时,列举了以下的配置代码:  代码如下 复制代码 <struts>     <constant name="struts.enable.DynamicMethodInvocation" value="true" />     <package name="lee" extends="struts-de

Struts2.5使用通配符的方式实现动态方法调用报错

在Struts2.5使用通配符的方式实现动态方法调用时报错,困扰了好久... 代码如下 <package name="default" extends="struts-default" namespace="/">     </package>     <package name="users" namespace="/users" extends="default&

Struts2 ActionWildcard(通配符配置)约定优于配置

新建web project:struts2_0500_actionwildcard Build Path 项目图: src:                   StudentAction.java TeacherAction.java struts.xml WebRoot: index.jsp Student_add.jsp Student_delete.jsp Student_edit.jsp Student_find.jsp Teacher_add.jsp Teacher_delete.j

struts2 使用*_* 通配符配置,如何交给spring管理

问题描述 按照以往的开发方式.struts的映射都是在xml中写出配置,然后class写别名交给spring管理,现在项目使用*_*的配置,无法写别名了,这样的写法怎么才能把struts2交给spring管理? 解决方案 1.struts2 <action name="*/*" class="/front/{1}Action" method="{2}">2.spring <bean name="/front/exper

Struts2 配置多个业务处理Action的通配符

1.Action  代码如下 复制代码 package org.Rudiment.action; import javax.servlet.ServletRequest; import javax.servlet.http.HttpServletRequest; import org.apache.struts2.ServletActionContext; import org.apache.struts2.interceptor.ServletRequestAware; import com.

Struts2配置web.xml

  任何MVC框架都需要与Web应用整合,这就不得不借助于web.xml文件,只有配置在web.xml文件中Servlet才会被应用加载. 所有的MVC框架都需要Web应用加载一个核心控制器,对于Struts2框架而言,需要加载FilterDispatcher   只要Web应用负责加载FilterDispatcher,FilterDispatcher将会加载应用的Struts2框架.   因为Struts 2将核心控制器设计成Filter,而不是一个普通Servlet.故为了让Web应用加载F