您的位置:首页 > 编程语言 > Java开发

struts2整合json要注意的问题

2016-04-06 23:57 375 查看
昨天struts2整合json,一直出错:

There is no Action mapped for namespace / and action name ...

HTTP Status 404 - There is no Action mapped for action name...

发现我已经在struts.xml中继承了json-default了啊,后来发现原来是因为没有引入相应的包,在此做下总结。

1、添加相应的包

导入

commons-beanutils-1.7.0.jar、ezmorph-1.0.3.jar、json-lib-2.1-jdk15.jar、struts2-json-plugin-2.2.3.jar

四个包,这些包在Struts的lib目录下都可以找到。

2、要继承json-default

<package name="struts2" extends="json-default" namespace="/">

json-default其实也是最终继承struts-default的 json-plugn中struts-plugn.xml源码如下

<struts>

    <package name="json-default" extends="struts-default">

        <result-types>

            <result-type name="json" class="org.apache.struts2.json.JSONResult"/>

        </result-types>

        <interceptors>

            <interceptor name="json" class="org.apache.struts2.json.JSONInterceptor"/>

        </interceptors>

    </package>

</struts>

这里你可以看到这个json-default是干了什么事情,无非就是:

加了个名为json的result类型

加了一层名为json的拦截器

配置完后,就可以使用Struts+json啦!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: