- 浏览: 161587 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
semmy:
赞一个
displaytag的Excel导出实践 -
李君寻:
...
displaytag的Excel导出实践 -
xiaoz170:
不太明白为嘛包这一层 class ,反而使代码更复杂。难道是为 ...
试读《基于MVC的JavaScript Web富应用开发》— 不一样的JavaScript -
lingceng:
<mirror> <id>U ...
maven usage guide
Here is not basic use of struts2 json plugin but how to hack the code to set includeProperty dynamically, in othter words, set with action field not in xml file.
Train of thought:
I have a demand of changing includeParameter values when different ip request, I wonder whether I could set like this:
But failed.As we know, we can set filename like this when download file
do the hack:
I try to find out the different between json plugin and download plugin and find the way out to copy the ability.
Extend the json result class, add conditionalParse function, and filter in execute function.
last set the result class
Train of thought:
I have a demand of changing includeParameter values when different ip request, I wonder whether I could set like this:
<result type="json"> <param name="includeParameter">${allowedFields}</param> </result>
But failed.As we know, we can set filename like this when download file
<action name="download" class="action.DownloadAction"> <result name="success" type="stream"> <param name="contentType">application/octet-stream</param> <param name="contentDisposition">attachment;filename="${filename}"</param> <param name="bufferSize">1024</param> </result> </action>
do the hack:
I try to find out the different between json plugin and download plugin and find the way out to copy the ability.
Extend the json result class, add conditionalParse function, and filter in execute function.
public class JSONDynamicResult extends JSONResult { protected String conditionalParse(String param, ActionInvocation invocation) { return TextParseUtil.translateVariables(param, invocation.getStack(), new TextParseUtil.ParsedValueEvaluator() { public Object evaluate(Object parsedValue) { return parsedValue; } }); } public void execute(ActionInvocation invocation) throws Exception { ActionContext actionContext = invocation.getInvocationContext(); HttpServletRequest request = (HttpServletRequest)actionContext.get("com.opensymphony.xwork2.dispatcher.HttpServletRequest"); HttpServletResponse response = (HttpServletResponse)actionContext.get("com.opensymphony.xwork2.dispatcher.HttpServletResponse"); // fake code here, you shoud use a field to get "${allowedFields}" and test empty to compatible to origin use setIncludeProperty(conditionalParse("${allowedFields}",invocation)); try { Object rootObject = readRootObject(invocation); writeToResponse(response, createJSONString(request, rootObject), enableGzip(request)); } catch(IOException exception) { LOG.error(exception.getMessage(), exception, new String[0]); throw exception; } } }
last set the result class
<result-types> <result-type name="json" class="your.parckage.JSONDynamicResult "/> </result-types>
发表评论
-
Calender to Date snip
2013-05-30 10:25 948The format is not stored in the ... -
Gson切面日志实践
2013-02-26 17:47 2405背景 应用切面做日志记录,记录操作实体详情时可以使用JSO ... -
读《深入分析Java Web技术内幕》
2013-01-16 21:37 3353这里这本书的预读章节,看完预读部分,解答了一些疑惑 ... -
Java泛型
2012-11-08 23:57 1629Java的泛型是5.0的特性,自己的业务代码中或许较少使用 ... -
lucene全文索引
2012-11-08 01:45 1535总听说lucene,总听到“全文检索”,一直不大明白什么意 ... -
displaytag的汇总功能
2012-11-07 10:39 1090displaytag 有列汇总功能,以前不知道step1:需要 ... -
native2ascii使用
2012-10-29 13:56 1226native2ascii -[options] [inputf ... -
有效使用Java异常
2012-10-26 15:58 938Java的异常机制是一大优点,可以快速定位错误。但在实际开 ... -
从springside看到的
2012-10-26 00:27 1177springside是一个JAVAEE的开发框架,作者运用 ... -
JSTL小结
2012-10-12 12:00 1116网上有很多内容讲解, ... -
memcache simple practice in Java
2012-09-24 17:58 1671Memcache is C/S structure, serv ... -
displaytag中使用struts的国际化资源
2012-07-30 19:09 1413使用displaytag打印表格的时候,表头有时需要使 ... -
newInstance() and new
2012-07-11 14:00 1055相同点 newInstance() and new can ... -
Java Decompile
2012-07-05 15:58 1002较早的eclipse的Java反编译是jad.exe ... -
Use JUnit
2012-07-05 13:20 937Junit A programmer-oriented te ... -
Use JUnit (2)
2012-07-05 13:04 910Junit3 diff Junit4 包命名从 ... -
《Java语言精粹》读书笔记(3)
2012-04-27 15:13 949集合 数据结构中的关于大型结构在java.util中提 ... -
《Java语言精粹》读书笔记(2)
2012-04-27 14:37 1040Package Like most objec ... -
《Java语言精粹》读书笔记(1)
2012-04-14 16:30 940这是一本只讲Java优点的书。 Jim Wal ... -
JavaServer Pages Standard Tag Library
2012-03-29 14:45 961The JavaServer Pages Standa ...
相关推荐
赠送jar包:struts2-json-plugin-2.3.24.jar; 赠送原API文档:struts2-json-plugin-2.3.24-javadoc.jar; 赠送源代码:struts2-json-plugin-2.3.24-sources.jar; 赠送Maven依赖信息文件:struts2-json-plugin-...
struts2 json plugin jar包
`struts2-json-plugin-2.1.8.1.jar` 则是Struts 2框架的一个插件,主要用于增强Struts 2对JSON的支持。Struts 2是一款非常流行的MVC(Model-View-Controller)框架,用于构建企业级的Java Web应用程序。这个插件允许...
struts2-json-plugin,Struts JSON插件
Struts2 JSON Plugin是针对Apache Struts2框架的一个重要组件,版本为2.3.8。这个插件主要的功能是让Struts2应用程序能够轻松地处理JSON(JavaScript Object Notation)数据格式,使得Web应用可以方便地进行JSON序列...
`struts2-json-plugin`是Struts2的一个插件,它使得Struts2能够处理JSON请求和响应,无需额外的配置或库。这个插件不仅包含了源码,还包含了必要的配置文件和类,使得开发者可以深入理解其工作原理并进行自定义扩展...
Struts2 JSON Plugin是Apache Struts框架的一个扩展插件,主要功能是支持Struts2应用程序与JSON(JavaScript Object Notation)格式的数据进行交互。JSON是一种轻量级的数据交换格式,广泛用于Web服务和AJAX...
Struts2 JSON Plugin是Apache Struts框架的一个扩展插件,主要功能是为Struts2提供JSON(JavaScript Object Notation)支持。JSON是一种轻量级的数据交换格式,它使得客户端(通常为JavaScript)与服务器端之间进行...
在Struts2中集成JSON支持,首先需要添加相应的依赖,比如struts2-json-plugin,这个插件提供了JSON结果类型。当Action执行完毕后,可以返回一个JSON结果类型,Struts2会自动将Action的属性转换为JSON格式并返回给...
struts2-spring-plugin-2.3.15.2.jar ; struts2-json-plugin-2.3.16.3.jarstruts2-spring-plugin-2.3.15.2.jar ; struts2-json-plugin-2.3.16.3.jar
首先,你需要将struts2-json-plugin相关的JAR文件添加到项目的类路径中。然后,在Struts2的配置文件struts.xml中启用JSON插件,通常通过以下配置实现: ```xml <constant name="struts.enable.SlashesInActionNames...
struts2-json-plugin-2.2.3.1能用的包
-- Struts2 JSON Plugin --> <groupId>org.apache.struts <artifactId>struts2-json-plugin <version>2.x.x ``` 替换`2.x.x`为当前Struts2的版本号。Maven会自动下载这些依赖并管理它们,使得开发者可以...
首先,我们来看`struts-json-plugin-2.1.8.jar`,这是Struts2的JSON插件,它允许Struts2的动作类直接返回JSON格式的数据,方便前端进行Ajax请求处理。该插件在2.1.8版本中修复了若干bug,并提供了对JSON输出的支持。...
总结来说,"struts-2.5.20-all"压缩包提供了完整的Struts 2框架,包括Action、Interceptor、ValueStack等核心组件,而`struts2-json-plugin.jar`则增强了Struts 2对JSON数据的支持,使得开发基于JSON的Web应用更加...
struts2自带的json转换 倒入jar文件 struts.xml中 <package ......extends="json-default" <result type="json"/>
2. **Struts2 JSON插件**:Struts2提供了一个JSON插件(`struts2-json-plugin.jar`),它允许我们将Action的返回值直接转换为JSON格式,便于前后端数据交换。这个插件简化了原本需要手动序列化对象到JSON字符串的...
这个压缩包包含了两个关键的组件:json-lib-2.1.jar和struts2-json-plugin-2.1.8.1.jar,它们是Struts2支持JSON(JavaScript Object Notation)序列化和反序列化的关键。 1. **json-lib-2.1.jar**: JSON是一种轻...
在探讨“Struts2与JSON整合”的主题时,我们深入分析了如何在Struts2框架中集成JSON技术,实现前后端数据的高效交互。Struts2作为一款流行的Java Web开发框架,提供了丰富的功能来简化Web应用程序的开发过程。而JSON...