Question

I am trying to run a simple Struts example with Dispatcher, but I am getting below error

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)

Below is my JSP page and struts-config code:

stuts-config file:

<?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:

<%@ 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>
Was it helpful?

Solution

The html:link tag attribute page has incorrect value, the link tag implementation couldn't evaluate it to create url. If you use action you want to url to then use the action attribute.

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

and so on for other links

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top