[Using Sakai] Samigo: saving files answers to database not working

Mame-Awa Diop mame-awa.diop at hec.ca
Thu Dec 8 13:06:13 PST 2011


Hello,

We have realized recently (after a major loss of files) that by default, 
Samigo saves the answer files of the student to the temp folder. I 
changed the property to now save in the database but I am getting an 
error that confuses me a bit:

    2011-12-08 15:26:09,546  INFO http-8080-Processor24
    org.sakaiproject.tool.assessment.ui.listener.delivery.BeginDeliveryActionListener
    - ****DeliveryBean=
    org.sakaiproject.tool.assessment.ui.bean.delivery.DeliveryBean at ff8aa9
    2011-12-08 15:28:16,625  WARN http-8080-Processor23
    org.sakaiproject.tool.assessment.facade.AssessmentGradingFacadeQueries
    - problem saving media: [B cannot be cast to java.sql.Blob
    2011-12-08 15:28:16,640  WARN http-8080-Processor23
    org.sakaiproject.tool.assessment.services.PersistenceService - Error
    saving to db...retry again....
    2011-12-08 15:28:16,671  WARN http-8080-Processor23
    org.sakaiproject.tool.assessment.services.PersistenceService - [B
    cannot be cast to java.sql.Blob
    2011-12-08 15:28:16,718 ERROR http-8080-Processor23
    org.hibernate.AssertionFailure - an assertion failure occured (this
    may indicate a bug in Hibernate, but is more likely due to unsafe
    use of the session)
    org.hibernate.AssertionFailure: null id in
    org.sakaiproject.tool.assessment.data.dao.grading.MediaData entry
    (don't flush the Session after an exception occurs)
            at
    org.hibernate.event.def.DefaultFlushEntityEventListener.checkId(DefaultFlushEntityEventListener.java:55)
            at
    org.hibernate.event.def.DefaultFlushEntityEventListener.getValues(DefaultFlushEntityEventListener.java:164)
            at
    org.hibernate.event.def.DefaultFlushEntityEventListener.onFlushEntity(DefaultFlushEntityEventListener.java:120)
            at
    org.hibernate.event.def.AbstractFlushingEventListener.flushEntities(AbstractFlushingEventListener.java:196)
            at
    org.hibernate.event.def.AbstractFlushingEventListener.flushEverythingToExecutions(AbstractFlushingEventListener.java:76)
            at
    org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:26)
            at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1001)
            at
    org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:339)
            at
    org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
            at
    org.springframework.orm.hibernate3.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:655)
            at
    org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:732)
            at
    org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:701)
            at
    org.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(TransactionAspectSupport.java:321)
            at
    org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:116)
            at
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
            at
    org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
            at $Proxy57.saveMedia(Unknown Source)
            at
    org.sakaiproject.tool.assessment.services.GradingService.saveMedia(GradingService.java:418)
            at
    org.sakaiproject.tool.assessment.ui.bean.delivery.DeliveryBean.saveMedia(DeliveryBean.java:1982)
            at
    org.sakaiproject.tool.assessment.ui.bean.delivery.DeliveryBean.addMediaToItemGrading(DeliveryBean.java:1921)
            at
    org.sakaiproject.tool.assessment.ui.bean.delivery.DeliveryBean.addMediaToItemGrading(DeliveryBean.java:1842)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
            at
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:597)
            at
    com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:126)
            at javax.faces.component.UIInput.broadcast(UIInput.java:492)
            at javax.faces.component.UIData.broadcast(UIData.java:657)
            at javax.faces.component.UIData.broadcast(UIData.java:657)
            at
    javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:249)
            at
    javax.faces.component.UIViewRoot.processValidators(UIViewRoot.java:343)
            at
    com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:78)
            at
    com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
            at
    com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:90)

I tested it locally with MySql and on our test instance with Oracle and 
I am getting the same error.

I would really appreciate it if you could held. We are running Sakai 
2.7.1 with Samio 2.7.1.

Thank you,

-- 

Mame Awa Diop
Analyste en Informatique - Java
Service de gestion des technologies et de l'information
HEC Montréal
3000, chemin de la côte-Sainte-Catherine
Montréal  (Québec)   H3T 2A7

GTI: 514.340.6000 #12029 - Bureau RJ-221e
Projet OpenSyllabus: 514.340.6000 #12888 - Bureau RJ-221
Télécopieur: (514)340-5637

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://collab.sakaiproject.org/pipermail/sakai-user/attachments/20111208/c9af9166/attachment.html 


More information about the sakai-user mailing list