调用save方法出现错误?

一脸茫然 发布于 2015/01/23 17:12
阅读 1K+
收藏 0

@JFinal 你好,想跟你请教个问题:

@JFinal 你好,想跟你请教个问题:

调用save()方法出现如下错误,排除了字段类型问题、是否为空问题

com.jfinal.plugin.activerecord.ActiveRecordException: java.sql.SQLException: 调用中的无效参数
at com.jfinal.plugin.activerecord.Model.save(Model.java:324)
at com.sino.control.UploadController.insertAttachment(UploadController.java:78)
at com.sino.control.UploadController.fileUpload(UploadController.java:28)
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.jfinal.core.ActionInvocation.invoke(ActionInvocation.java:55)
at com.jfinal.core.ActionHandler.handle(ActionHandler.java:73)
at com.jfinal.ext.handler.FakeStaticHandler.handle(FakeStaticHandler.java:45)
at com.jfinal.core.JFinalFilter.doFilter(JFinalFilter.java:72)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:314)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Unknown Source)

加载中
0
JFinal
JFinal
getFile(...) 是否在最前面调用的?
0
一脸茫然
一脸茫然
@JFinal 就是这段代码报错了???
0
JFinal
JFinal

引用来自“似水流言”的评论

@JFinal 就是这段代码报错了???
     使用 arp.setShowSql(true) ,在控制台输入 sql,通过调试 save() 方法,看一下当时的参数是什么,有了 sql 与 sql 用到的参数,仔细看一下就知道错误原因了。 据推断是 sql 错误或者 sql 用到的参数错误
JFinal
JFinal
回复 @似水流言 : 可以是任意字段,如果为非 id ,则需要 arp.addMapping(tableName "otherIdName", modelClass),用第二个参数来明确指定名称,这个在 jfinal 手册中有明确的说明及代码示例
一脸茫然
一脸茫然
save的表primary key只能是id字段吗?
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部