problem in LookupDispatchAction of Struts

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • kisc71117
    New Member
    • Oct 2006
    • 1

    #1

    problem in LookupDispatchAction of Struts

    [HTML]

    When accessing my JSP I get the following error:
    org.apache.jasp er.JasperExcept ion: Missing message for key "button.add "
    my error message
    Code:
    javax.servlet.ServletException: Missing message for key "button.add"
      org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:825)
      org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:758)
      org.apache.jsp.test1_jsp._jspService(test1_jsp.java:103)
      org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
      javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
      org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
      org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
      org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
      javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    my test1.jsp
    Code:
     
    <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
    <%@ page import="java.util.Calendar" %>
    <%@ page import="java.util.*" %>
    <%@ page import="java.lang.*" %>
    <%@ page import="java.text.DecimalFormat" %>
    <%@ page import="java.sql.*" %>
    <%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
    <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
    <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
    <html>
    <body>
    <html:form action="/test1" method="get">
        <input type="submit" name="ha1" value="add"/> 
        <input type="submit" name="ha1" value="delete"/>
    </html:form>
    </body>
    </html>
    my messages.proper ties
    Code:
     
    button.add=Add
    button.delete=Delete
    my Action
    Code:
     
    .....
    public class EditAction extends LookupDispatchAction {
     
      private Map map = new HashMap();
      private int addCount;
      private int deleteCount;
      /**
       * Constructor - populate the key method map.
       */
      public EditAction() {
     
        System.out.println("start at Constructor");
        map.put("button.add", "add");
        map.put("button.delete", "delete");
        System.out.println("end at Constructor");
      }
      protected Map getKeyMethodMap() {
        System.out.println("start at getKeyMethodMap");
     
        System.out.println("end at getKeyMethodMap");
        return map;
      }
     
      public ActionForward add(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
        throws Exception { 
          // do something here......   
          
          return mapping.findForward("ha"); 
      }
      public ActionForward delete(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
        throws Exception { // ......   
          // do something here......  
          return mapping.findForward("ha"); 
      }
    }
    my Struts-config.xml
    Code:
     
    <struts-config>
      <data-sources />  
          <form-bean name="userForm" type="org.apache.struts.action.DynaActionForm">
               <form-property name="testString" type="java.lang.String" />
            </form-bean>
      </form-beans>
      <action-mappings >
       <action path="/test1"  type="test.EditAction" 
               parameter="ha1"
               name="userForm" 
              input="/test1.jsp"
               scope="request" > 
               <!--<exception key="dispatch.ServletException"
                           type="javax.servlet.ServletException"
                           path="/test1.jsp"/> -->        
        <forward  name="ha" path="/test1.jsp" />
      </action>
      </action-mappings>
      <message-resources parameter="MessageResources" />
    </struts-config>
    [/HTML]
Working...