问题描述
这里的后台取值是指用在java代码中,众所周知,struts有一个插件struts-json-plugin.他支持以Ognl表达式获取数据.现在由于业务需要,也需要这样一个功能.但不知道该用什么方法.//根据配置文件查找指定属性并加入响应实体内容集合privateObjectgetResponseData(ActionInvocationacation){if(this.data==null)returnnull;String[]objNames=this.data.split(",");for(Stringname:objNames){Objectvalue=null;//如果参数名代有#号,表示要从context中获取数据if(name.indexOf("#")==0){try{Map<String,Object>map=Ognl.createDefaultContext(ServletActionContext.getContext().getSession());//****这里取不到相应的值.不知道该用什么方法.value=Ognl.getValue(name,map,"");}catch(OgnlExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}}else{//*******root中能取到相应的值value=acation.getStack().findString(name);}System.out.println(name+":"+value);//加入到响应内容列表if(value!=null)this.datelist.add(value);}
解决方案
时间: 2024-12-08 20:35:02