java设置web首页访问action

来源:互联网 发布:网络自由与秩序申论 编辑:程序博客网 时间:2024/06/11 01:08


<welcome-file>index.jsp</welcome-file>
一般首页进的是静态页面

如果需要首页是动态的页面 就需要先进action访问数据 再回到首页显示 

因为 welcome-file 必须是实际存在的文件,不能是action或者servlet路径

如果直接把index.jsp改成action  会出现404

<welcome-file>index.action</welcome-file>直接设置action,404和struts2中的解决方案


解决方法有三种 我最经常用第一种

第一种

因为web.xml中 默认是

<welcome-file>index.jsp</welcome-file>在空白的index.jsp中使用META重定向。

操作:<META HTTP-EQUIV="Refresh" CONTENT="0;URL=max/HelloWorld.action">

其中,
content="1 是时间控制,表示1秒后自动跳转到要跳转的页面. 
content="0 表示打开该页后立即跳转到你要跳转的页面. 
url 是要跳转的路径

完整例子

index.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><%@ include file="/include/header.jsp"%></head><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html>  <head>    <base href="<%=basePath%>">        <title>My JSP 'index.jsp' starting page</title>    <meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0">    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page"><META HTTP-EQUIV="Refresh" CONTENT="0;URL=query/gseList"><!--<link rel="stylesheet" type="text/css" href="styles.css">-->  </head>    <body>    </body></html>

struts文件 配置action

<?xml version="1.0" encoding="utf-8"?><!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN""http://struts.apache.org/dtds/struts-2.1.7.dtd"><struts><package name="query" extends="json-default" namespace="/query"><action name="gseList" class="GseListAction"><result name="success">/list.jsp</result></action></package></struts>





第二种

web.xml中改成

<welcome-file>index.action</welcome-file>

在WebRoot下新建一个index.action空文件




第三种

因为 welcome-file 必须是实际存在的文件,不能是action或者servlet路径你可以设置一个 比如 <welcome-file>goindex.jsp</welcome-file>,然后 goindex.jsp 写 <jsp:forward page="index.action" /> 就行了。意思就是借助一个jsp页面来转发请求进入action。

因为struts2采用过滤器的方式处理请求,默认情况时监控url地址的变化
必须如下操作:
第一步:
web.xml中修改
<filter-mapping>
  <filter-name>struts2</filter-name>
  <url-pattern >/*</url-pattern>
  <dispatcher>REQUEST</dispatcher> 
  <dispatcher>FORWARD</dispatcher>   
</filter-mapping>
第二步:
web.xml中添加
<welcome-file-list>
  <welcome-file>index.jsp</welcome-file>
</welcome-file-list>
第三步:
首页跳转语句
index.jsp内容如下:
<jsp:forward page="HelloWorld.action"></jsp:forward>



0 0