[Grails] grails不能存储文件到数据库里?!!
casephoen
2008-03-01
执行官方网站的一个文件上传例子,发现uploadfile.save()时报错(save调用前打印上传的文件内容正常)
看起来好像是dao底层实现有问题 Message: could not insert: [UploadFile]; nested exception is org.hibernate.exception.DataException: could not insert: [UploadFile] Caused by: org.springframework.dao.InvalidDataAccessResourceUsageException: could not insert: [UploadFile]; nested exception is org.hibernate.exception.DataException: could not insert: [UploadFile] Class: UploadFileController At Line: [26] Code Snippet: 26: if (!uploadFile.save()) { 27: println 'not saved....' Stack Trace org.codehaus.groovy.runtime.InvokerInvocationException: org.springframework.dao.InvalidDataAccessResourceUsageException: could not insert: [UploadFile]; nested exception is org.hibernate.exception.DataException: could not insert: [UploadFile] at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:92) at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:226) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:899) at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:946) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:740) at groovy.lang.Closure.call(Closure.java:292) at groovy.lang.Closure.call(Closure.java:287) at org.codehaus.groovy.grails.web.servlet.mvc.SimpleGrailsControllerHelper.handleAction(SimpleGrailsControllerHelper.java:525) at org.codehaus.groovy.grails.web.servlet.mvc.SimpleGrailsControllerHelper.executeAction(SimpleGrailsControllerHelper.java:398) at org.codehaus.groovy.grails.web.servlet.mvc.SimpleGrailsControllerHelper.handleURI(SimpleGrailsControllerHelper.java:237) at org.codehaus.groovy.grails.web.servlet.mvc.SimpleGrailsControllerHelper.handleURI(SimpleGrailsControllerHelper.java:153) at org.codehaus.groovy.grails.web.servlet.mvc.SimpleGrailsController.handleRequest(SimpleGrailsController.java:88) at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48) at org.codehaus.groovy.grails.web.servlet.GrailsDispatcherServlet.doDispatch(GrailsDispatcherServlet.java:251) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:476) at org.springframework |
|
totong
2008-03-06
遇到过类似问题,可以上传文件啊
数据类型用byte[] 可以设置maxSize来决定到底使用什么类型的blob |
|
casephoen
2008-03-24
呵呵,就是byte[]不能插入mysql数据库,另外发现Boolean对应checkbox在mysql下也有问题,在自带的数据库则没问题
不过没关系,反正有回避的办法,哈哈 |
|
ctong721
2008-03-28
试一下改变grails的hibernate方言配置,def dialect = org.hibernate.dialect.MySQLInnoDBDialect
如果不配置,grails使用默认的引擎与MySQL通信. |
|
copoplar
2008-03-31
刚才想发一个帖子,发现需要加入圈子,山风小子赶紧批准我噢!
现在借宝地把自己刚发现的一个小问题说一下: 今天在grails中建立一个domain ,用的名字Group,结果发现在MySql里面不建表。试了三次都不行。其他的名字都可以。不知道为啥。没有办法,俺改名为Groups就行了。感觉是Group好像被系统占用了,哪位大侠知道具体原因,请告诉俺啊。 |
|
agile_boy
2008-04-01
to copoplar,
此圈子现在不需要审批的,所有申请自动通过,就是希望所有Groov/Grails爱好者能无拘无束的在此交流! 你的group应该是mysql的关键字吧,如果你的表中出现了数据库的关键字,那肯定会报错的。 另外Groovy中文社区也是不错的地方哦,主要是论坛和文档翻译 |