想用注解返回json数据,注解如下
[java] view plain copy
1. @Action(value="Login",results={
2. @Result(name="success",location="/jsp/index.jsp"),
3. @Result(name="testjson",type="json",params={"username","password"}),
4. @Result(name="error",location="/jsp/error.jsp")
5. })
结果用tomcat启动时报错了:
The Result type [json] which is defined in the Result annotation on the class
后来发现没有加入struts的json依赖包,所以在maven中加入:
[html] view plain copy
1. <dependency>
2. <groupId>org.apache.struts</groupId>
3. <artifactId>struts2-json-plugin</artifactId>
4. <version>2.3.15</version>
5. </dependency>
注意这个包的版本一定要与struts2-core包版本一致,然后重新启动发现还是出现这个错误信息,经过检查代码后发现,需要加入这个注解
[java] view plain copy
1. @ParentPackage("json-default")
重新启动后,成功运行。
总结:The Result type [json] which is defined in the Result annotation on the class这个错误目前发现了三个原因:
1.没有加入 struts2-json-plugin包
2. struts2-json-plugin与struts2-core
3.没有加这个注解@ParentPackage("json-default")