数据专栏

智能大数据搬运工,你想要的我们都有

科技资讯:

科技学院:

科技百科:

科技书籍:

网站大全:

软件大全:

认真想了一下,你这个程序要连续运行几个月以上,而且又是多线程操作,所以经常会出现这样的情况:在你修改索引的时候(即addDocument,deleteDocument,updateDocument,optimize),同时也在使用IndexSearcher读取了索引,提供搜索。 下面是Lucene API doc 的optimize()方法的一段注释: If readers/searchers are using the index, then free space required is up to 2X the size of the starting index. This is because in addition to the 1X used by optimize, the original 1X of the starting index is still consuming space in the Directory as the readers are holding the segments files open. Even on Unix, where it will appear as if the files are gone ("ls" won't list them), they still consume storage due to "delete on last close" semantics. 从中可以分析出,如果在optimize索引的时候,也同时使用Searcher。索引空间的使用情况如下: 1. 原始索引 2. 由IndexWriter使用的索引,用于optimize 3. 由IndexSearcher使用的索引,用于搜索。 当你optimize完索引后,应该只剩下optimize后的新索引和由IndexSearcher使用的临时索引。 根据你的描述:
fool_leave 写道
仔细检查目录,发现里面有很多文件,几十个。有些都有几十兆大。而用时间排序,发现有些甚至是一个月前的。我手动把修改时间是昨天前的文件删除后,运行lucene,一切正常。似乎这些文件都是无效的旧文件。 你发现的很多文件应该是IndexSearcher正在使用的临时索引,而不是索引的段文件,但这些文件应该是在IndexSearcher关闭时或下次optimize时就删除掉的。 那是什么原因使得这些文件不能删除呢? 下面是小弟的几个猜测: 1. 没有正确使用IndexSearcher,即打开了没有关闭。 2. 打开了多个IndexSearcher,一直没有关闭。导致临时文件增多。 3. 没有权限删除这些临时文件(不知道在linux下会不会出现这种情况),不过这个可能性比较小 4. Lucene不稳定,出现重大Bug了。(不过这个可能性也较小) 说得好乱 以上只是个人的猜测,未经实践证实, 仅供参考。
编程百科
2020-08-27 12:35:40
shaucle 写道

# while (countingSumScorer.next()) {
# hc.collect(countingSumScorer.doc(), score());
# }
前后打印个时间差
其它的地方也一样,不就都能看出来了? 呵呵,hc在后续处理过程中还要排序,hc的大小也相当影响性能,性能瓶颈并非单在这一处,不过在这里限制hc的大小就可以使后续排序过程的时间永远小于某一常量。 还有多线程耗尽内存引发的JVM频繁GC也是重要因素,减小hc可以减少内存的耗用,减少GC次数。 这些貌似无法简单通过打印时间差来测量。
编程百科
2020-08-27 12:35:28
相关推荐: 发布IK Analyzer 3.0 中文分词器 把Linux安装到移动硬盘 发布 IK Analyzer 3.2.5 稳定版 for Lucene3.0 Lucene全文检索框架+Solr搜索引擎(2018版.Java) 利用lucene实现文档关键字检索 Lucene全文搜索 分组,精确查找,模糊查找 Lucene教学视频从入门到精通(备Java基础,JavaSE,JavaEE) Lucene5学习之Suggest关键字提示
推荐群组: lucene爱好者
更多相关推荐
Lucene 比如搜索关键字“U盘”,搜索不出来,但是搜索“U”,却能看到包含“U盘”的一些记录,搜索中文关键字是一切正常。到底是哪里出问题了?谢谢
编程百科
2020-08-27 12:35:01
哈哈,估计你的索引字段名都是大写的,但是查询的时候用查询词是要进过StandardAnalyzer的,这样QueryPaser出来的Query字段全都成了小写的,当然什么都查不出来。你可以在Query query = mQueryPaser.parse(queryString); 后面把query打印出来看看
编程百科
2020-08-27 12:34:43
相关推荐: 分享一个通用数据库分页方案 漫谈应用缓存的命中率问题 搜索篇:lucene的简单实例<一> lucene查询结果集分页代码 Lucene全文检索框架+Solr+ElasticSearch搜索引擎(Java高级必备.ES) 使用Lucene4.7实现搜索功能,分页+高亮 Lucene5学习之分页查询 Lucene之分页查询的三种方式-yellowcong
推荐群组: lucene爱好者
更多相关推荐
Lucene 最近在用lucene.突然发现上一页,下一页.这种分页方式太不人性话.想做成百度那种样子的.但是不知道如何下手....大家
编程百科
2020-08-27 12:34:25
grantbb 写道
你的问题应该不在于Lucene参数的调整,可能是因为你的数据太大了吧。 这个也有可能,但是多大的数据能算上数据大?
编程百科
2020-08-27 12:34:14
java写搜索引擎,好多抄袭现有的设计,太委屈它了!还是直接C++写的比较实际!
编程百科
2020-08-27 12:34:03
相关推荐: java heap space 讨论一下:一位大牛说java'内存溢出' 和 'java.lang.OutOfMemoryError' 不是一回事 tomcat 内存溢出问题 Lucene.Net-内存溢出问题解决 lucene使用内存索引时一些问题OutOfMemoryError: Java heap space Lucene入门之索引的建立和优化 关于lucene索引数据内存加载问题 【C#】解决lucene.net在建立索引的时候,出现“算数运算导致溢出”stackoverflow exception的错误
推荐群组: lucene爱好者
更多相关推荐
企业应用 Lucene 我就想不明白建立索引时候为什么会出错... 数据量又不大的 老是内存溢出 搜索了下.. 说是要改的 jvm的内存设置, 我也照着改了 可是没用啊 我急啊 最后我在 jboss bin 下开启服务, 发现没有这个错误了!!!! 很奇怪啊, 为什么在eclipse 下会出这个错捏 哦 这下 明白了 这个调的参数是要下eclipse下设置滴.... 具体设置如下: open eclipse-->windows--> preference-->myeclispse -->applicatein-->jboss下点jdk 有个Optional java vm argument 输入-server -Xms128m -Xmx128m 解决了 汗 都是自己不仔细啊
编程百科
2020-08-27 12:32:51
估计是你的jvm内存设置太小,je分词器在第一次分词的时候载入词典,需要占用一定的内存,建议-Xms128M -Xmx256M
编程百科
2020-08-27 12:32:39
相关推荐: Struts2源码分析--请求处理 阿里巴巴电面整理 webwork2.1.7源代码分析之--初始化及创建action过程(草稿) android安卓源码海量项目合集打包-1 关于Struts2的碎碎念 github上优秀的源码 内核调试 Struts1.x 学习笔记
推荐群组: struts2
更多相关推荐
Struts debug到某个createAction的方法里时,看到一个某些条件下抛出的异常信息if (proxy == null) { gripe = "Whoa! No ActionProxy instance found in current ActionInvocation. This is bad ... very bad"; } else if (proxy.getConfig() == null) { gripe = "Sheesh. Where'd that ActionProxy get to? I can't find it in the current ActionInvocation!?"; } else if (proxy.getConfig().getClassName() == null) { gripe = "No Action defined for '" + proxy.getActionName() + "' in namespace '" + proxy.getNamespace() + "'"; } else { gripe = "Unable to instantiate Action, " + proxy.getConfig().getClassName() + ", defined for '" + proxy.getActionName() + "' in namespace '" + proxy.getNamespace() + "'"; } 看到This is bad ... very bad和Sheesh. 的时候,感觉写xwork的程序员好有爱……
编程百科
2020-08-27 12:32:25
所谓整合也就用spring管理action和hibernatespring bean创建action实例 struts2的beanFactory配成spring 用spring的类创建sessionFactory 就行了 jar struts的基础包+spring插件+spring包+hibernate
编程百科
2020-08-27 12:32:10
在web.xml文件中加<taglib> <taglib-urihttp://java.sun.com/jstl/core</taglib-uri> <taglib-location>tld文件地址</taglib-location> </taglib> 看这样行不行。
编程百科
2020-08-27 12:31:37
我个人觉得,WW的配置文件,从本质上讲,并没有和Struts有什么区别,可能package和namespace的确带来了些清新的感觉,但页面与页面、action与action、action与页面之间复杂的导航关系并没有改变。当action与页面的数量和关系越来越多时,写这个配置文件(无论WW或Struts)或读这个配置文件都像是一场噩梦。要使中途接手来改这个文件更无疑是跳入了一个巨大的焦油坑。不知道又没有什么好的概念或逻辑能够解决这个问题。
编程百科
2020-08-27 12:31:27
downpour 写道
页面上现在有三个checkbox是一组的:
<input type="checkbox" name="nation" value="1">china</input>
<input type="checkbox" name="nation" value="2">english</input>
<input type="checkbox" name="nation" value="3">france</input>
提交给某个action处理,在struts1.1中,推荐使用在struts-config.xml中动态创建formbean,因此,无需写一个java文件,只需要在struts-config.xml声明就行了。
我现在的问题是如何构建这个formbean?我理解下,formbean里面应该有一个property,name=nation,类型是数组的。type到底应该定为什么呢? 试一下,定义为 int[] 应该可以。
编程百科
2020-08-27 12:31:14
相关推荐: open session and Hibernate事务处理机制 用 OpenSessionInViewInterceptor 的思路解决 Hibernate Laz... 动态切换多数据源 struts2+hibernate3 open session in view 在junit中使用open session in view [原创] Hibernate Open Session In View 的完整配置信息 跑通无误! OPEN SESSION IN VIEW配置 提前关闭open session in view 模式下的数据库连接
推荐群组: Hibernate
更多相关推荐
Struts 在一些较简单的应用中,可以不用DTO而直接将PO传到view中,对于仅仅提供read的view操作,很多需求需要PO的集合。这种情况下,需要在curent thread保存一个open的session。所以就有了open session in view 模式。但是在MVC中,这种引入session的逻辑到view中,确实不大好看。随着velocity freemarker等模板技术的到来使得view还是很独立的,open session在这种情况下,确实很不适合!作为替代,应该可以在DAO中对所有的延迟装载的集合进行初始装载,然后回传到view,当然在这种情况下,会有较多副作用,但是不考虑这些副作用,他所带来的代码的简洁,层次的清晰,开发的独立等等好处就是很吸引人的拉!不知道,你们在PO传递到View层的时候,是怎么处理这种延迟装载的问题。如果大家有讨论的兴趣,我可以继续贴上我差不多开发好的的代码,更详细的讨论这个话题。 当然,对于绝对反对PO传递到View的人来说,这个帖子就不是他们来讨论的地方了。
编程百科
2020-08-27 12:31:00
相关推荐: 讨论:多层架构中是不是绝对不能把PO传递到表现层? 结合struts和hibernate谈J2EE架构的数据表示 VO(DTO)模式在分层架构设计中是否需要的扯淡 关于Struts1、Struts2和Webwork的理解 webwork转struts webwork项目转换到struts项目 struts webwork区别 Webwork-2.2.4迁移至struts-2.3.16涉及的相关修改
推荐群组: JBoss SEAM
更多相关推荐
Struts 很好的一个回复,我转录如下:作者:动物园的猪 PO ,persistence object, VO,value object dto,data transfer object bo,business object 好多的名词啊,晕! 我们开始也是这样做的,拿到hibernate的po,就一股脑的扔给view(jsp)显示去 了,不好,俺知道,确实不好。 后来,俺们这样做了:用beanutil把po的各个属性值拷贝给了FormBean,让formb ean去跟view打交道。 再后来,俺们觉得,action不应该直接就调用dao,俺们加了一个BusinessFacade action---->facade--->dao action把formbean的值转到po,然后交给facade,facade再调用dao 再后来,俺们觉得,还是martinFlower的domain model更酷一些,俺们就把buinessFacade重构成了一个Biz对象,他是一个业务实 体,他有着和po差不多该有的属性,用来存放业务值,但是他也有着同样的各种 业务方法,他已经不再是一个facade了,而是一个facade+PO了,我们叫他真正的 业务对象。他有几个职责:接受web层数据;加工数据;持续化数据(不是自己做 ,是调用dao). 你们看,多么曲折的系统重构历程啊,可是,就是这样,俺们仍然感到很多很多 的不足,因为,这个Biz对象,还是只能代表一个对象,而不太好表现一个对象图 (就是他和别的对象的关系),太抽象,是吧? 举个例子吧: 俺们有一个账户业务对象:AccountBiz 他有一些属性: 代码: String guid; String name; String password; 他还有一些方法: 代码: findHisRoles(); load(); 我在action中,这样调用他 代码: biz = new AccountBiz("guid"); biz.load(); List roles = biz.findHisRoles(); 你看,他找到了他的所拥有的所有角色,可是,你想想,roles里面是什么?理想的是:RoleBiz,你知道的,业务层,应该看到的都是业务层的对象,可是呢,实际上,这个方法的实现是: 代码: public List findHisRoles(){ return dao.findHisRoles(this.getGuid()); } 看看,实际上,返回的是一堆AccountPO的实例,我是不是应该把这些PO,一个个的都转化成Biz呢,我们现在没有做,看来是应该做的。 但是,如此做的话,实际上,你的业务层的对象看来就真的变成了,hibernate还原出来的对象图+这个业务实体的业务方法。 嗯,这就是俺们的结论,这样实现固然很好,看上去很美,但是,对于中小项目而言,使用po直接的贯穿始终,俺们觉得也挺好的。 嗯,跟贴吧,拍砖吧
编程百科
2020-08-27 12:30:43
相关推荐: 傻瓜数码相机拍摄技巧 如何选择非日系单反数码相机,最好能够把十年前购买的海鸥135长焦广角镜头也用上? 大幅面扫描仪 vs 高级数码摄影设备 struts集成kindeditor上传图片的时候出现上传错误 初学者求解,一对多中的实体信息如果通过struts2页面中录入 struts2实现头像上传 struts2 赋值方法 jquery+ajax+struts实现文件上传
推荐群组: 电脑DIY
更多相关推荐
Struts 现在想做一个个人信息管理的东西,不知道如何将数码相机的照片及时显示在页面上,呵呵,我在想如果用jsp 可能根本无法实现,哪位有这样的经验给提供点参考.(实在没办法可能就得是先拍好图片存放到硬盘里然后从文件夹里打开加载进去)
编程百科
2020-08-27 12:30:31
evonne 写道
很早之前从sharepoint中抽取出来的! 你这个东东很有意思,我所期望的是类似的工具,用户可以创建容器和调整占位符的位置 不过这个东东功能简单了点,有没有更复杂的,如创建布局,拖动容器和调整容器宽高度等
编程百科
2020-08-27 12:30:22
相关推荐: AJAX中文乱码解决 form表单提交数据编码方式和tomcat接受数据解码方式的思考 通过HttpServletRequestWrapper(装饰模式的应用)增强HttpServletRequest的功能 提交多行数据到Struts的ActionForm的List属性中 struts2获取表单提交数据的三种方法 struts 获取form表单中的数据 struts2获取表单提交的数据 struts2中form提交到action中的中文参数乱码问题解决办法
推荐群组: struts2
更多相关推荐
Struts 在JSP中,表单提交的中文总是显示为问号,我在页面中放入:<% request.setCharacterEncoding("GB2312");; %> 可以解决post方式时的问题,但无法解决get方式的问题。 通过这种方式: <%= new String(request.getParameter("name");.getBytes("ISO-8859-1");); %> 则可以解决post和get的问题。 我不知道两者的其它好处与坏处,除了这两种方式,还有没有更好的处理方式?
编程百科
2020-08-27 12:30:08
我和buaawhl的相同之处在于,都同意ValueSet可以被多次处理。但是我和他的区别在于,ValueSet的后续的处理,由谁来调用,而我认为应该是由template层调用的。至于buaawhl,则没有明确的表述过这个问题。
编程百科
2020-08-27 12:29:41
兄弟,这个问题被讨论过无数遍,好像没什么结果。现实一点的问题是在已经有n多系统的情况下,如何整合他们的权限系统。比如统一认证之类的方案。
编程百科
2020-08-27 12:29:28
给我的感觉是Struts发展到后面,越来越象大杂烩。所以有很多人开始放弃Struts,更多的人还在用Struts最基本的功能。
编程百科
2020-08-27 12:29:02
相关推荐: Tapestry+Spring+Hibernate整合工作小结 为什么我的程序传递DTO 关于hibernate里BO和POJO的问题 精通Java Web整合开发(JSP+AJAX+Struts+Hibernate)(第2版) Struts2 一个Action实现多个业务逻辑 【SSH进阶之路】一步步重构MVC实现Struts框架——彻底去掉逻辑判断(五) 【SSH进阶之路】一步步重构MVC实现Struts框架——封装业务逻辑和跳转路径(四)... struts2中action业务控制类的几种配置方式
推荐群组: JBoss SEAM
更多相关推荐
Struts 系统是struts-manager-dao的架构现在的观点是action中不放任何有关业务逻辑的东西,所有业务逻辑都在manager层中实现,这样便于控制事务和层次清晰。 可是这样就造成了action中代码很少,就是取得数据,构造对象,然后调用manager中的方法;而manager中的代码确非常多,多得长达一两千行,而且对应每一个业务需求都要封装成一个方法,很多简单的select-update功能相似,流程有区别,也要做区分,感觉manager中方法众多,太庞大了 大家做的项目是怎么对待这样的问题的呢?
编程百科
2020-08-27 12:28:48
相关推荐: 请大家帮忙反驳公司强制使用VSS的理由 建议编写系列开发模板 appfuse 产生的struts-config.xml问题 精通Java Web整合开发(JSP+AJAX+Struts+Hibernate)(第2版) Struts2--struts.xml配置文件(常量配置、包配置、包含配置)详解 Struts2(一)Struts2配置详解 深入详解Struts2——struts.xml配置详解(一) Struts2学习第一天——struts2基本流程与配置
推荐群组: struts2
更多相关推荐
Struts 很多config actions,在几个开发人员同时更新服务器时简直就是灾难.如果项目很大,更加麻烦, 大家有什么好方法
编程百科
2020-08-27 12:28:16
使用logic标签的属性:例如你现在而100条记录,每页显示10条。 第一页 <logic:iterate id="element" name="bean" property="stringArray" offset="0" length="10" /> 第二页 <logic:iterate id="element" name="bean" property="stringArray" offset="10" length="10" /> 以此类推。
编程百科
2020-08-27 12:28:07
谢谢两位,看来还是看文档的时候没有仔细的去看。确实!只有按钮的值是true or false的时候才能够赋值。 看来只能用.net 的方式,放一个名hidden,提交的时候赋值一个英文字符串,美其名曰command, 然后利用这个command进行判断了,不知道这样代码是否会好看些?
编程百科
2020-08-27 12:27:57
(可选项)如果设置成true,当Action发送结果到目标时,ActionServlet将使用HttpServletResponse.sendRedirect()方法来代替 RequestDispatcher.forward()方法。 默认值是false。
编程百科
2020-08-27 12:27:48
相关推荐: jsp include 乱码问题的解决 JBoss+Jetty 中文问题的解决方法 jsp, java, 数据库三者之间字符集转换的深度讨论 struts2+hibernate学生综合信息管理系统 漂亮回答面试官struts2的原理 Struts2的struts.properties文件在哪儿啊? Struts2与Struts1的对比 Struts2中的valuestack
推荐群组: GT-Grid
更多相关推荐
Struts includes.jsp中包含<%@ page contentType="text/html; charset=gb2312"%> JSP页面用<%@ include file="includes.jsp" %>时汉字出现乱码,而直接用 <%@ page contentType="text/html; charset=gb2312"%>可以正确显示,请问用<%@ include file="includes.jsp" %>为什么不行?
编程百科
2020-08-27 12:27:38
不是我想跳转到另一个页面的时候,使用弹出窗口,因此我想做一个target=_blank;可是我的input页面使用的是diaplaytag的包,我没有源文件,因此不能添加target属性,所以我想在action里控制,不知有没有这样的方法,可以使我的页面跳转到一个弹出式窗口(或框架中的一个target);
编程百科
2020-08-27 12:27:28
looluo 写道
Readme.html说的很清楚 是地是地,我还以为userGuide和Tutorial就足够了,没想到readme中还有如此重要的信息,谢谢!
编程百科
2020-08-27 12:27:14
相关推荐: formbean to vo to po 问题? 再谈关于po,vo在struts+hibernate中的使用(讨论) 讨论一下PO、FormBean的转化实现 struts1.2 from表单提交包含list的对象 struts formbean struts formbean 就是鸡肋 Struts 中 formbean的使用(小技巧) struts formBean动态绑定数据的不足及改进 作者:胡立新
推荐群组: Tapestry
更多相关推荐
Struts 以前我一直认为formbean里属性的类型只能是String类型,昨天试了一个例子,可以是Float类型,可是我想试试日期类型,没有成功(说类型不匹配),我如何将页面中的日期用formbean接收成日期型,在线等待。有例子更好
编程百科
2020-08-27 12:27:04
Webwork2不是分两分组成,这个说法不准确,应该说Webwork2的Xwork在Web方面的应用,Xwork是核心,WW2只是用ServletDispatcher来调度Http的Request/response,是对Xwork Action处理请求与响应的进一步封装。
编程百科
2020-08-27 12:26:54
哥们,我现在也在找web层比较好的实现方式,你可以给一个你的demo么,看看你说的velocity好在哪?
编程百科
2020-08-27 12:26:38
哈哈,不错,我就缺个数据库,谢谢dingyd了虽然用SchmeExport导出了数据库结构,但是里面没有数据,累死累活填了几次都没有成功,还是直接用这个数据库爽啊!
编程百科
2020-08-27 12:26:10
引用
但area名称是与device 没有直接关系 的啊,如果在Device VO中加入area名称的话那样会导致VO膨胀,
引用
假设有两个表:Device、Area,它们之间 通过areaid关联
引用
而且那样做也不符合 我们 常见的 做法啊,
编程百科
2020-08-27 12:25:58
xly_971223 写道
问题描述不清 请查看发帖注意事项 问题倒是描述清楚了,不过不去查查资料就跑这问也太不应该了 清空text表单,在js里枚举或获取那些表单元素设值为空 超链界弹出新窗口 设置target属性 想怎么弹就怎么弹 如楼上所说 js也可
编程百科
2020-08-27 12:25:51
相关推荐: 关于数据库设计的行唯一问题 Migrations流水帐 如何做HIBERNATE应射 Ibatis - 外键关联 ibatis中加入外键 ibatis的含有外键的OR映射 05-iBatis外键关联查询
推荐群组: JBoss SEAM
更多相关推荐
iBATIS 希望对大家能有所帮助在mysql下: 在oracle下:(没有级联更新,不能使用on delete cascade)
编程百科
2020-08-27 12:25:30
liuyxit 写道
这不是前台的问题,是数据库的SQL查询导致的。
你的SQL写的就是越往后查,第一个查询就返回越多的结果,可以找找网上Oracle的分页SQL代码。
不过记得也是差不多,最好可能只是利存储过程针对某些页(如:最前,最后)作了些逻辑判断的优化。 谢谢您的回复 我知道查询速度不是前台的问题 我是想问能否把控制的业务逻辑抽象到业务层,使控制器只完成简单的控制转向并传送数据的任务
编程百科
2020-08-27 12:25:03
我在实现分页查询的action中得到一个PaginatedList类型的 materialPaginatedList,我把它传到jsp页面中去并赋给一个隐藏的<input>:<input type="hidden" name="materialPaginatedList"value="<ww:property value="materialPaginatedList"/>">,然后通过表单提交到另一个action中,不知道为什么在另一个action中没有得到materialPaginatedList的值,是不是不能将它转换成PaginatedList类型啊?我觉得如果Session可以的话,它也应该可以。
编程百科
2020-08-27 12:24:39
相关推荐: Struts2源码分析--请求处理 【请教】如何简化xwork.xml的配置? 如何使用WebWork或Struts 2向客户端发送动态生成的XML文档? 解决Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.7.0:compile Struts2 json plugin实战2 针对Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1的解决方案 idea创建第一个maven项目报错:Cannot resolve plugin org.apache.maven.plugins:maven-clean-plugin:2.5 struts2整合json使用
推荐群组: struts2
更多相关推荐
Struts json hack 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: ${allowedFields} But failed. As we know, we can setfilename lick this when download file application/octet-stream attachment;filename="${filename}" 1024 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
编程百科
2020-08-27 12:24:20