问题描述:
今天新写了一个小功能,调试的时候提示找不到action
1.adminLogQueryAction
2.Invalid action class configuration that references an unknown class named [adminLogQueryAction]
org/apache/catalina/loader/WebappClassLoader.Java
stacktraces
java.lang.RuntimeException: Invalid action class configuration that references an unknown class named [adminLogQueryAction]
问题分析:
提示里面描述的到是很清晰,找不到该action,初始以为没有在struts.xml文件中配置该action,仔细找了找发现该action已经配置上了
然后仔细找了找,发现action中方法的返回值在action的配置文件中没有给出处理结果
- public String execute() throws Exception{
- return "SUCCESS";
- }
- <action name="aaa" class="adminLogQueryAction" method="execute">
- <result name="success" type="dispatcher">
- <param name="location">/aaa/aaa.jsp</param>
- </result>
- </action>
看来还是不够仔细
但是根据这个错误提示还真不好发现问题
解决方式:
- public String execute() throws Exception{
- return SUCCESS;
- }
备注:
- public interface Action {
- /**
- * The action execution was successful. Show result
- * view to the end user.
- */
- public static final String SUCCESS = "success";
- /**
- * The action execution was successful but do not
- * show a view. This is useful for actions that are
- * handling the view in another fashion like redirect.
- */
- public static final String NONE = "none";
- /**
- * The action execution was a failure.
- * Show an error view, possibly asking the
- * user to retry entering data.
- */
- public static final String ERROR = "error";
- /**
- * The action execution require more input
- * in order to succeed.
- * This result is typically used if a form
- * handling action has been executed so as
- * to provide defaults for a form. The
- * form associated with the handler should be
- * shown to the end user.
- * <p/>
- * This result is also used if the given input
- * params are invalid, meaning the user
- * should try providing input again.
- */
- public static final String INPUT = "input";
- /**
- * The action could not execute, since the
- * user most was not logged in. The login view
- * should be shown.
- */
- public static final String LOGIN = "login";
- /**
- * Where the logic of the action is executed.
- *
- * @return a string representing the logical result of the execution.
- * See constants in this interface for a list of standard result values.
- * @throws Exception thrown if a system level exception occurs.
- * <b>Note:</b> Application level exceptions should be handled by returning
- * an error value, such as <code>Action.ERROR</code>.
- */
- public String execute() throws Exception;
- }