jsonobject.fromobject方法转换中出现的问题

简介:

出错信息如下:

Method public java.lang.String org.apache.commons.lang.exception.NestableRuntimeException.getMessage(int) threw an exception when invoked on net.sf.json.JSONException: A JSONObject text must begin with '{' at character 1 of judd The problematic instruction: ---------- ==> ${msgs[0][0]} [on line 76, column 25 in org/apache/struts2/dispatcher/error.ftl] ---------- Java backtrace for programmers: ---------- freemarker.template.TemplateModelException: Method public java.lang.String org.apache.commons.lang.exception.NestableRuntimeException.getMessage(int) threw an exception when invoked on net.sf.json.JSONException: A JSONObject text must begin with '{' at character 1 of judd at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:130)

 

解决方案:

jsonobject只能转换map类型或者是bean类型的数据,而不能转变action中的属性。

如果需要action返回一个json字符串,只需要注解即可;

jsonarray只能转换list对象;

jsonobject.fromobject(括号中是bean或者是map对象,不能是action中的属性)

注意!

 

另外小计如下:

8  json通过struts2后台传递json对象或者是json字符串;

8.1 如果是简单的传入字符串,只需要加入一个struts2-json-plugin-2.3.1.2.jar包即可;
8.2 如果是需要传入前台的是一个jsonobject,那么需要的有额外的6个包,必不可少,一定要注意:
      1.commons-beanutils-1.7.0.jar
      2.commons-collections-3.2.1.jar
      3.commons-lang-2.3.jar
      4.commons-logging-1.0.4.jar
      5.ezmorph-1.0.3.jar
      6.json-lib-2.1.jar
     另外必须包如下:
      7.struts2-json-plugin-2.3.1.2.jar

      以上的包都可以在struts2中找到,注意事项:
       8.2.1   jsonobject的使用方法,可以转换一个对象,也可以自己加入一个对象;
       8.2.2   jsonobject和jsonarray只是新增了一个json中的对象,而不是action中返回的json对象只有这一个转化后的json对象;
       8.2.4   在action中使用jsonobject或者是jsonarray后不会改变已有的json返回对象;


本文转自hcy's workbench博客园博客,原文链接:http://www.cnblogs.com/alterhu/archive/2012/05/15/2501693.html,如需转载请自行联系原作者。

目录
相关文章
|
SQL Java 关系型数据库
MyBatis篇-分页
本文介绍了多种分页方式,包括自带rowbound内存分页、第三方插件pagehelper(通过修改SQL实现分页)、SQL分页(依赖limit或rownum等关键字)、数组分页(先查询全部数据再用subList分页)、拦截器分页(自定义拦截器为SQL添加分页语句)。最后总结了逻辑分页(内存分页,适合小数据量)和物理分页(直接在数据库层面分页,适合大数据量)的优缺点,强调物理分页优先于逻辑分页。
|
应用服务中间件 Python 容器
ERROR [ntContainer#0-1] o.s.a.r.l.SimpleMessageListenerContainer 1917: Failed to check/redeclare aut
ERROR [ntContainer#0-1] o.s.a.r.l.SimpleMessageListenerContainer 1917: Failed to check/redeclare aut
820 0
|
存储 并行计算 BI
Metal每日分享,LUT查找滤镜效果
Metal每日分享,LUT查找滤镜效果
Metal每日分享,LUT查找滤镜效果
|
算法 BI
m分别通过GA遗传优化算法对企业不同产品订单生产进行时间优化
m分别通过GA遗传优化算法对企业不同产品订单生产进行时间优化
339 0
m分别通过GA遗传优化算法对企业不同产品订单生产进行时间优化
|
数据采集 人工智能 自然语言处理
数禾科技:科技加持,让普惠“信用”服务触手可及
数禾通过构建自身的数据中台,打通以往独立建设的IT系统,使得各方数据汇聚联通,最终形成一个强大的数据决策引擎,不但让消费者得到满意的服务体验,同时大幅降低平台方的运营成本。
4689 0
数禾科技:科技加持,让普惠“信用”服务触手可及
|
2天前
|
人工智能 安全 测试技术
|
4天前
|
云安全 人工智能 安全
阿里云 Agentic SOC 位居 IDC MarketScape安全运营智能体2026领导者类别
以 Agentic AI 重构安全运营闭环,阿里云云安全在产品能力与市场份额
1176 3