0

我正在尝试使用 Dispatcher 运行一个简单的 Struts 示例,但出现以下错误

SEVERE: Servlet.service() for servlet [jsp] in context with path [/StrutsDispatcher] threw 
exception [java.lang.NullPointerException: Module 'null' not found.] with root cause
java.lang.NullPointerException: Module 'null' not found.
at org.apache.struts.taglib.TagUtils.getModuleConfig(TagUtils.java:755)
at org.apache.struts.taglib.TagUtils.computeURLWithCharEncoding(TagUtils.java:364)
at org.apache.struts.taglib.TagUtils.computeURLWithCharEncoding(TagUtils.java:285)
at org.apache.struts.taglib.html.LinkTag.calculateURL(LinkTag.java:445)

下面是我的 JSP 页面和struts-config代码:

stuts-config文件:

<?xml version="1.0" encoding="UTF-8"?>    
    <!DOCTYPE struts-config PUBLIC    
          "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN"   
          "http://struts.apache.org/dtds/struts-config_1_2.dtd">
<struts-config>    
    <display-name> Dispatcher demo</display-name>    
    <description>Dispatcher beginning </description>

    <form-beans>    
        <form-bean name="DispatchActionForm" type="org.strutsDispatcher.DispatcherActionForm"></form-bean>    
    </form-beans>

    <action-mappings>    
        <action path="/test" type="org.strutsDispatcher.DispatchActionTest"    
            parameter="parameter" input="/dispatchAction.jsp"  name="DispatchActionForm"    
            scope="request" validate="false">    
            <forward name="add" path="/dispathcerActionAdd.jsp"></forward>    
            <forward name="save" path="/dispathcerActionSave.jsp"></forward>    
            <forward name="edit" path="/dispathcerActionEdit.jsp"></forward>    
        </action>    
    </action-mappings>

</struts-config>

JSP页面:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
 "http://www.w3.org/TR/html4/loose.dtd">
  <%@taglib uri="http://struts.apache.org/tags-html" prefix="html"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Insert title here</title>
</head>
<body>
 <h3>Dispatcher Action Example</h3>
 <p><html:link page="test.do&#63;parameter=add">Call Add section</html:link>  
 <p><html:link page="test.do&#63;parameter=edit">Call Edit Section</html:link></p>
 <p><html:link page="test.do&#63;parameter=save">Call Save Section</html:link></p> 
</body>
</html>
4

1 回答 1

1

html:linktag 属性的page值不正确,link 标记实现无法评估它来创建 url。如果你使用你想要 url 的操作,那么使用 action 属性。

<html:link action="/test"><html:param name="parameter" value="save"/></html:link>

等等其他链接

于 2013-06-27T17:30:17.177 回答