我正在尝试学习 Apache Struts 框架,并且我编写了一个用于进行课程注册的小应用程序,但每当我尝试加载我的应用程序时,它只会抛出以下异常:
javax.servlet.ServletException:
org.apache.jasper.JasperException:
javax.servlet.ServletException:
javax.servlet.jsp.JspException: Cannot create rewrite URL:
java.net.MalformedURLException: Cannot retrieve ActionForward named adminLogin
我的
index.jsp
页面看起来像:
<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic"%>
<logic:redirect forward="showLogin"/>
我的
struts-config.xml
的相关部分:
<global-forwards>
<forward name="showLogin" path="/showLogin.do" />
</global-forwards>
<action-mappings>
<action path="/showLogin" forward="/pages/choose.jsp" />
<action path="/adminLogin" forward="/pages/adminLogin.jsp" />
</action-mappings>
最后是
choose.jsp
文件:
<%@ page import="javax.sql.*"%>
<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%>
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html"%>
<h1>Who are you?</h1>
<ul>
<li><html:link forward="adminLogin">Administrator</html:link></li>
<li><html:link forward="instructorLogin">Instructor</html:link></li>
<li><html:link forward="studentLogin">Student</html:link></li>
</ul>
我不使用 Struts,所以不要将我固定在它上面,但该错误似乎表明它在配置中的某个位置期待
<forward name="adminLogin" />
。您可能希望其他两名前锋也有同样的情况。