java.lang.RuntimeException: Invalid action class configuration that references an unknown class named [xxxAction]。
在使用SSH进行项目开发时,一不小心就可能出现以上的错误提示。现总结论坛高人的开发经验针对本错误产生的原因做具体分析,希望能帮到出同样问题的各位童鞋们:
这样的问题可以简单理解为未找到名字为XXX的action
最近在用extjs进行开发,有一个组合框,confidenceType。显示的值是中文也就是string类型,在action当中写的是int类型。当递交的时候会默认的递交显示的值也就是string。导致错误。
1)xxxAction没有在Struts.xml中配置相应的action;
大小写很关键,这里要仔细检查页面提交的action名方法名有没有错,struts.xml里的名字有没有错误。
2)如果使用了spring去管理action,则有可能未在spring的配置文件中配置相应的bean;
spring注入检查
3)如果以上都排除,可能在Struts.xml中的action配置中没有配置result结果,此时检查是否有result项,或者result的type类型是否正确,检查action的返回string拼写是否正确;
Action如果返回的是大写“SUCCESS”或者“INPUT”,在Struts.xml中的result的name属性一定是大写的。如果小写 就配置小写。如果不匹配也会导致上面的错误发生。
4)如果以上都排除,可能是action中取表单页面的数据时,数据类型不兼容,比如取字符串装进int类型变量;
你的表单提交或者超链接跳转是参数的传递出错了:
1、action中是否有接收这个参数的相关set和get方法
2、action中接收参数的类型和页面的是否匹配
5)如果以上都排除,你可能写了表单验证的validate()方法,需仔细检查逻辑