如何使用JavaScript函数重定向到Struts2中的另一个jsp页面

如何使用JavaScript函数重定向到Struts2中的另一个jsp页面,java,jsp,configuration,struts2,web.xml,Java,Jsp,Configuration,Struts2,Web.xml,我想在登录前打开页面时,使用JavaScript函数将JSP重定向到另一个页面。但我得到下面的错误信息 找不到Struts dispatcher。这通常是由于使用Struts标记而没有关联的过滤器造成的。Struts标记只有在请求通过servlet过滤器时才可用,servlet过滤器会初始化该标记所需的Struts dispatcher 我不知道该怎么办 BeforeLogin.jsp: 函数newpage(){ open(“Login.jsp”); } Login.jsp: .....

我想在登录前打开
页面时,使用JavaScript函数将JSP重定向到另一个页面。但我得到下面的错误信息

找不到Struts dispatcher。这通常是由于使用Struts标记而没有关联的过滤器造成的。Struts标记只有在请求通过servlet过滤器时才可用,servlet过滤器会初始化该标记所需的Struts dispatcher

我不知道该怎么办

BeforeLogin.jsp

函数newpage(){
open(“Login.jsp”);
}
Login.jsp


..... 
web.xml


调度员过滤器
org.apache.struts2.dispatcher.ng.filter.strutspreadexecutefilter
调度员过滤器
/*
struts.xml


Login.jsp

创建此错误是因为您调用的JSP试图使用Struts标记,而没有首先传递操作,因此找不到所需的底层结构

Struts2是一个MVC框架,它的设计意味着新请求必须通过(C)控制器(操作),然后通过(V)视图(JSP)呈现

您必须避免直接调用JSP,而必须调用login操作,该操作执行后将分派login JSP

window.open("login.action");

创建无操作的结果并使用它而不是JSP

struts.xml:


Login.jsp
JS:

函数newpage(){
窗口。打开(“showLogin”);
}
说明:

错误清楚地表明

这通常是由于使用Struts标记而没有关联的过滤器造成的

这意味着您在其中有一个JSP和Struts标记,但是这个JSP不被过滤器使用,因为它可能是一个欢迎文件,即
index.JSP
,错误代码文件,即
404.JSP
,在
web.xml
中配置

在涉及映射到资源的任何筛选器或servlet之前,这些资源由web服务器处理

通常欢迎文件包含一个重定向代码,指向一个有效的操作,然后将该操作分派到一个可以使用Struts标记的JSP不要在应用程序中直接使用JSP,而是使用操作。