struts2.1.6 : 以下 是我的 jar 包(图片是从 javaeye 引用过来的,不确定能正常显示) 就只有 5 个基本的包,加上两个 2.1 加上来的两个必须的包 fileupload/io , 页面代码:<script src="<s:url value="/jquery.js" />"></script> <script>
$(document).ready(function(){
$("#userName").blur( function(){
var url = "checkName.action";
var param = {userName:$("#userName").attr("value")};
$.post(url , param , rend , 'json');
});
function rend(request){
alert(request.msg);
}
});
</script>
<form action="#" method="get">
<input type="text" id="userName" name="userName" /><br />
<input id="text2" name="text2" />
</form>
struts.xml :<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="main" extends="json-default">
<action name="checkName" class="dao.OperaName" method="check">
<result type="json" />
</action>
</package>
</struts>
java 代码 : public String check(){
System.out.println("abcde");
return "success";
}
让人郁闷 的是 , extends 引用 json 后,根本就不能被引进来.网上都没有这一相关的问题存在. 搞到现在
有遇到过同样问题的朋友,帮帮忙.以前用 struts 2.0 的时候都好好的,一点问题都没有(很少来发言,所以分也就不多.还请见谅)
警告: Could not find action or result
There is no Action mapped for namespace / and action name checkName. - [unknown location]
at com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:177)
at org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:61)
at org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39)
at com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:47)
at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:458)
at org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:395)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)如果把 json-default 换成 struts-default ,abcde 是可以打印出来的.可跟我的问题不相干
一旦引用了 json-default ,action 就怎么都找不到了郁闷,是不是包的问题,如果有遇到同样问题的朋友,请帮忙告诉是哪几个包,如果建议把所有的包全加载进来一个个试的,就算了