今天在SSH项目中遇到运用JSON插件,产生如下异常:
2008-11-15 12:58:21 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet default threw exception
java.sql.SQLException: Positioned Update not supported.
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1055)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:926)
at com.mysql.jdbc.ResultSetImpl.getCursorName(ResultSetImpl.java:2050)
at com.mchange.v2.c3p0.impl.NewProxyResultSet.getCursorName(NewProxyResultSet.java:545)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.googlecode.jsonplugin.JSONWriter.bean(JSONWriter.java:224)
at com.googlecode.jsonplugin.JSONWriter.process(JSONWriter.java:157)
at com.googlecode.jsonplugin.JSONWriter.value(JSONWriter.java:123)
at com.googlecode.jsonplugin.JSONWriter.add(JSONWriter.java:321)
at com.googlecode.jsonplugin.JSONWriter.bean(JSONWriter.java:225)
at com.googlecode.jsonplugin.JSONWriter.process(JSONWriter.java:157)
at com.googlecode.jsonplugin.JSONWriter.value(JSONWriter.java:123)
at com.googlecode.jsonplugin.JSONWriter.add(JSONWriter.java:321)
at com.googlecode.jsonplugin.JSONWriter.bean(JSONWriter.java:225)
at com.googlecode.jsonplugin.JSONWriter.process(JSONWriter.java:157)
at com.googlecode.jsonplugin.JSONWriter.value(JSONWriter.java:123)
at com.googlecode.jsonplugin.JSONWriter.add(JSONWriter.java:321)
at com.googlecode.jsonplugin.JSONWriter.bean(JSONWriter.java:225)
at com.googlecode.jsonplugin.JSONWriter.process(JSONWriter.java:157)
at com.googlecode.jsonplugin.JSONWriter.value(JSONWriter.java:123)
at com.googlecode.jsonplugin.JSONWriter.add(JSONWriter.java:321)
at com.googlecode.jsonplugin.JSONWriter.bean(JSONWriter.java:225)
at com.googlecode.jsonplugin.JSONWriter.process(JSONWriter.java:157)
at com.googlecode.jsonplugin.JSONWriter.value(JSONWriter.java:123)
at com.googlecode.jsonplugin.JSONWriter.add(JSONWriter.java:321)
at com.googlecode.jsonplugin.JSONWriter.bean(JSONWriter.java:225)
at com.googlecode.jsonplugin.JSONWriter.process(JSONWriter.java:157)
at com.googlecode.jsonplugin.JSONWriter.value(JSONWriter.java:123)
at com.googlecode.jsonplugin.JSONWriter.add(JSONWriter.java:321)
at com.googlecode.jsonplugin.JSONWriter.bean(JSONWriter.java:225)
at com.googlecode.jsonplugin.JSONWriter.process(JSONWriter.java:157)
at com.googlecode.jsonplugin.JSONWriter.value(JSONWriter.java:123)
at com.googlecode.jsonplugin.JSONWriter.add(JSONWriter.java:321)
at com.googlecode.jsonplugin.JSONWriter.bean(JSONWriter.java:225)
at com.googlecode.jsonplugin.JSONWriter.process(JSONWriter.java:157)
at com.googlecode.jsonplugin.JSONWriter.value(JSONWriter.java:123)
at com.googlecode.jsonplugin.JSONWriter.add(JSONWriter.java:321)
at com.googlecode.jsonplugin.JSONWriter.bean(JSONWriter.java:225)
at com.googlecode.jsonplugin.JSONWriter.process(JSONWriter.java:157)
at com.googlecode.jsonplugin.JSONWriter.value(JSONWriter.java:123)
at com.googlecode.jsonplugin.JSONWriter.write(JSONWriter.java:91)
at com.googlecode.jsonplugin.JSONUtil.serialize(JSONUtil.java:90)
at com.googlecode.jsonplugin.JSONResult.execute(JSONResult.java:173)
at com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:348)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:253)
at zz.WebNews.util.AuthorizationInterceptor.intercept(AuthorizationInterceptor.java:62)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223)
at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221)
at org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:50)
at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:504)
at org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:419)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at zz.WebNews.util.AuthFilter.doFilter(AuthFilter.java:62)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Unknown Source)
该异常有两种解决方法:
第一:在struts.xml文件的配置中排除不要被JSON序列化的属性,例如:
<action name="functions" class="getFunctionsAction" method="functions_getList">
<result type="json">
<param name="excludeProperties">functionsService</param>
</result>
</action>
其中functionsService就是不要被JSON序列化的属性。
第二:在Action文件中去除不要被JSON序列化的属性的get()方法,例如:
public IFunctionsService getFunctionsService() {
return functionsService;
}
这样做functionsService同样不会被JSON序列化。
说明:
带有transient修饰符与没有Getter方法的字段(field)都不会被串行化为JSON。
分享到:
相关推荐
解决这些问题通常需要检查配置参数、数据库权限设置以及驱动程序版本是否合适。 总之,MySQL驱动程序是Java应用程序与MySQL数据库之间的桥梁,理解和正确使用它是进行数据库操作的基础。了解如何添加、注册和使用...
2034: Browse cursor not positioned on message.** - **含义**:浏览光标未定位在消息上。 - **解决方案**:确保浏览光标正确地定位在所需消息上。 **33. 2035: Not authorized for access.** - **含义**:访问未...
此资源介绍的相关内容有:页面布局 Stack层叠组件、Stack与Align、Stack与Positioned实现定位布局、Flutter AspectRatio、Card卡片组件、卡片图文列表、Wrap组件。 适合新手学习移动端开发,也适合老司机参考。
"东芝电梯故障代码合集.pdf" ...本资源摘要信息涵盖了东芝电梯故障代码合集的方方面面,包括故障代码列表、故障码出错检查主题、故障码处理方法等,旨在帮助用户快速查找和解决东芝电梯的故障问题。
Flutter 全局悬浮按钮方法及代码 Flutter 是一个流行的移动应用程序开发框架,具有跨平台的特点。悬浮按钮是 Flutter 应用程序中常见的交互元素,通常用于提供快速访问某些功能的入口。今天,我们将探讨如何在 ...
本文将深入探讨Flutter的层叠布局组件——Stack和Positioned,以及它们如何实现类似Web中的绝对定位和Android中的Frame布局。 Stack组件是Flutter中用于创建堆叠布局的一个关键工具,它允许子组件按照声明的顺序堆...
开发者经常需要了解一个元素在其父容器中的确切位置,以便调整样式,解决布局问题,或者实现复杂的交互效果。 此插件的工作原理是,当你在Chrome的开发者工具中选择一个元素时,它会立即显示该元素相对于其最近的...
KNN算法是机器学习中的基础分类与回归方法,在Wi-Fi定位中用于找出与当前RSSI指纹最相似的已知位置。它的工作原理是,计算当前指纹与数据库中所有指纹的距离,选取K个最接近的指纹,然后根据这K个指纹所在的位置...
positioned-io这个板条箱允许您指定读写偏移量,而无需更改文件中的当前位置。 这类似于preposition-io。此板条箱可让您指定读写偏移量,而无需更改文件中的当前位置。 这类似于C中的pread()和pwrite()。这种...
在CSS中,`z-index`仅适用于定位元素(positioned elements),这意味着元素的`position`属性不能是默认的`static`。当一个元素的`position`属性被设置为`relative`、`absolute`或`fixed`时,它将获得一个堆叠上下文...
〔The tongue is positioned lower in the mouth than for /u:. The lips are rounded, but not as much.〕 第三章 辅音〔Consonant〕发音方法一、爆破音〔Plosive〕1. 清辅音:/p/, /t/, /k/——发音时,气流在...
In 2017, Gartner positioned blockchain close to the peak of inflated expectations, acknowledging the enthusiasm for this technology that is now largely discussed by media. In this scenario, the risk ...
The cursor needs to be positioned on these for detailed explanation. The main file is "runsim.m". In these simulations the SISO option is not explicitly given. This is because the SISO result for a ...
描述中提到的“阅读详细的使用方法文档”强调了在使用这些兼容性解决方案之前,理解其工作原理和应用方式的重要性。这通常包括如何在HTML或CSS代码中正确引入Hack,以及何时和如何使用它们。同时,它暗示了这个...
Fixed Replace not working as expected in conjunction with regex look behinds Fixed build systems being unable to use "file_patterns" with the exec command Corrected tab overlap on HiDPI Windows and ...
另一种多行文本的解决方案是利用伪元素和绝对定位: ```css .positioned-ellipsis { position: relative; overflow: hidden; line-height: 18px; height: 36px; } .positioned-ellipsis::after { content: '....
PIE,全称为“ Positioned Absolutely, Everything Else”, 是一种专门针对IE浏览器的CSS3兼容性解决方案。PIE插件由Microsoft的开发人员Harry Roberts创建,它的核心功能是通过JavaScript和VML(Vector Markup ...
more than one operator can operate on an operand (because the operators are positioned next to the operand, one on either side), this operand is first processed by the operator of the higher ...
与 `offset()` 不同,`position()` 方法获取的是元素相对于其最近的定位(positioned)祖先元素的相对位置,而不是相对于文档。如果元素没有定位的父元素,那么它相对于 `body` 元素。 在示例代码中: ```...