求教一个关于struts2的问题 StrutsTomcat 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你的配置文件名称是struts.xml吗,还有它的位置在src吗 使用的是struts2+ 文件名就是struts.xml 放在src目录下的。 ajax提交的路径不对呀,少了namespace 如果我加上category/cat.action 就404了直接 你先单独访问!cat.action看能访问到么? 直接抛上面那个500异常,后台没有异常信息。基本上是struts.xml的问题了 "cat.action"换成"category/cat.action"试试 估计还是struts.xml文件的问题!修改简单点试试 路径什么的别搞乱了! 你配的struts的url为 <url-pattern>/*</url-pattern> 所以就应该把cat.action改为cat <struts> <include file="struts-authorize.xml"/> <include file="struts-category.xml"/> <include file="struts-cart.xml"/> <include file="struts-order.xml"/> <package name="dang-default" extends="json-default"> </package> </struts>在package内配置你在AJAX中调用的Action:CategoryActionresult为<result type="json"/> 空指针异常,肯定是某个实例为null,你确定excute()没执行,估计cats为null,所以报错了,在cats=dao.findByid(1, true);之前随便输出一点内容看看有没有执行到。 嗯 我知道的 这时候.action加不加都无所谓的,这个不是造成问题的原因啊~~真是不知道咋回事了,反编译下StrutsActionProxy.java:69 代码如下: String contextPath = ServletActionContext.getRequest().getContextPath(); 在execute方法第一行debug断点的,都没走断点。 试着按你说的把struts-category.xml改成这样了: <action name="cat" class="dangdang.actions.category.CategoryAction"> <result type="json" /> <result name="success">/category/category.jsp</result> </action> 重写ActionSupport类的addActionError、addActionMessage、addFieldError方法,打个断点,看看错误信息是啥你就明白了。 问题解决了,自己经过尝试,最后解决了,我把解决的步骤贴出来,以便希望对以后遇到这个问题的后来人有所帮助,步骤如下:将使用的xwork-core-2.3.1.2.jar包替换为xwork-core-2.1.6.jar,同时添加struts2-convention-plugin-2.1.8.1.jar 、struts2-embeddedjsp-plugin-2.1.8.1.jar、struts2-json-plugin-2.1.8.1.jar,为了缩小范围这几个报我挨个试了下,必须是这四个包的组合,我也很奇怪。2.更改web.xml文件struts配置如下<filter> <filter-name>StrutsFilter</filter-name> <!-- <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class> --> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> </filter>3.此时访问不再报500,而是404,然后更改main.jsp的ajax请求如下:$(function(){ $.get( //发json请求 "category/cat.action", function(data){ $("#left").html(data); } );});访问,然后OK,效果出来,断点正常走,数据读取成功。 taglib指令问题 jsp--csdn等登陆效果 怎么弹出对话框,在线等 怎么把word文件导入页面编辑器 OpenSessionInView的配置问题 servlet里我已有byte[]内容,要生成文件并出现保存文件对话框让用户下载,如何实现? 求助:怎样取得上传图片的尺寸 Http的请求方式Get和Post问题!!! 中文插库的问题!!! 急求关于Java语法、函数的电子书 Cookie设置超时问题 如何在jsp页面用javascript创建一个html object对象
<include file="struts-authorize.xml"/>
<include file="struts-category.xml"/>
<include file="struts-cart.xml"/>
<include file="struts-order.xml"/>
<package name="dang-default" extends="json-default">
</package>
</struts>在package内配置你在AJAX中调用的Action:CategoryAction
result为
<result type="json"/>
<result type="json" />
<result name="success">/category/category.jsp</result>
</action>
将使用的xwork-core-2.3.1.2.jar包替换为xwork-core-2.1.6.jar,同时添加struts2-convention-plugin-2.1.8.1.jar 、struts2-embeddedjsp-plugin-2.1.8.1.jar、struts2-json-plugin-2.1.8.1.jar,为了缩小范围这几个报我挨个试了下,必须是这四个包的组合,我也很奇怪。
2.更改web.xml文件struts配置如下<filter>
<filter-name>StrutsFilter</filter-name>
<!--
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
-->
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>3.此时访问不再报500,而是404,然后更改main.jsp的ajax请求如下:$(function(){
$.get( //发json请求
"category/cat.action",
function(data){
$("#left").html(data);
}
);
});访问,然后OK,效果出来,断点正常走,数据读取成功。