Uploaded image for project: 'Sakai'
  1. Sakai
  2. SAK-24202

Not a Valid Validation code

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: CLOSED
    • Priority: Major
    • Resolution: Incorporated
    • Affects Version/s: 10.0
    • Fix Version/s: None
    • Component/s: Email Template Service
    • Labels:
      None
    • Environment:
      Sakai trunk nightly - Oracle - Built: 09/20/13 08:00 - Sakai Revision: 129866 (Kernel 2.10-SNAPSHOT)- Server sakai-nightly.uits.iupui.edu

      Description

      I'm seeing two issues, I think. I add a non-official participant. The non-official participant does get added to the site. Since email service is not available on trunk, look in catalina.out . I use the URL to validate the account and I get xxxxx is not a valid validation code error.

      I also notice a stack trace , and I'm not sure if it is related:

      -======sakai-multi-part-boundary======
      Content-Type: text/html; charset=iso-8859-1
      <p>Neal (instr) Caidin (neal.caidin@apereo.org) has invited you to join the <strong>ncaidin tst 01 Spring 2013</strong> site on sakai/trunk on Oracle.</p>

      <p><a href=http://nightly2.sakaiproject.org:8082/accountvalidator/faces/validate?tokenId=d7e152e7-66c1-4992-989e-66f541261721>Accept this invitation http://nightly2.sakaiproject.org:8082/accountvalidator/faces/validate?tokenId=d7e152e7-66c1-4992-989e-66f541261721</a></p>

      <h2>What is sakai/trunk on Oracle?</h2>
      <p>sakai/trunk on Oracle is the 's web-based learning management system. It is home to many course sites, as well as a host of other sites including those used for administration, research and project groups, libraries and student societies. As a guest user, you have been invited to join a sakai/trunk on Oracle site. On the site you will have rights to read content but you also may be able to create and/or edit content (depending on your assigned role).</p>

      <h2>What if I already have a sakai/trunk on Oracle account?</h2>
      <p>If you have used sakai/trunk on Oracle in the past then you already have a sakai/trunk on Oracle account, in
      which case we strongly suggest that you accept the above invitation and then
      indicate which existing sakai/trunk on Oracle account you wish to use to access this site. This
      will avoid you having multiple accounts, each with a different set of
      associated sites. If you do not choose to associate this site with an existing
      account, a new guest account will be created for you using this email
      address. In the future, login to sakai/trunk on Oracle using the
      guest account username and its associated password.</p>

      -======sakai-multi-part-boundary======-

      2013-09-20 10:44:38,750 WARN http-bio-8082-exec-3 org.hibernate.util.JDBCExceptionReporter - SQL Error: 1400, SQLState: 23000
      2013-09-20 10:44:38,753 ERROR http-bio-8082-exec-3 org.hibernate.util.JDBCExceptionReporter - ORA-01400: cannot insert NULL into ("SAK"."VALIDATIONACCOUNT_ITEM"."FIRST_NAME")

      2013-09-20 10:44:38,753 WARN http-bio-8082-exec-3 org.hibernate.util.JDBCExceptionReporter - SQL Error: 1400, SQLState: 23000
      2013-09-20 10:44:38,753 ERROR http-bio-8082-exec-3 org.hibernate.util.JDBCExceptionReporter - ORA-01400: cannot insert NULL into ("SAK"."VALIDATIONACCOUNT_ITEM"."FIRST_NAME")

      2013-09-20 10:44:38,755 WARN http-bio-8082-exec-3 PonderUtilCore - Error invoking action
      Target exception of class org.springframework.dao.DataIntegrityViolationException
      Successive lines until stack trace show causes progressing to exception site:
      Error invoking action
      --> Error invoking method processConfirmContinue in bean at path siteAddParticipantHandler.processConfirmContinue
      --> Could not execute JDBC batch update; SQL [insert into VALIDATIONACCOUNT_ITEM (USER_ID, VALIDATION_TOKEN, VALIDATION_SENT, VALIDATION_RECEIVED, VALIDATIONS_SENT, STATUS, FIRST_NAME, SURNAME, ACCOUNT_STATUS, id) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)]; constraint [null]; nested exception is org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
      org.springframework.dao.DataIntegrityViolationException: Could not execute JDBC batch update; SQL [insert into VALIDATIONACCOUNT_ITEM (USER_ID, VALIDATION_TOKEN, VALIDATION_SENT, VALIDATION_RECEIVED, VALIDATIONS_SENT, STATUS, FIRST_NAME, SURNAME, ACCOUNT_STATUS, id) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)]; constraint [null]; nested exception is org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
      at org.springframework.orm.hibernate3.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:643)
      at org.springframework.orm.hibernate3.HibernateTransactionManager.convertHibernateAccessException(HibernateTransactionManager.java:794)
      at org.springframework.orm.hibernate3.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:665)
      at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:755)
      at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:724)
      at org.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(TransactionAspectSupport.java:475)
      at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:270)
      at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      at com.sun.proxy.$Proxy8.save(Unknown Source)
      at org.sakaiproject.accountvalidator.logic.impl.ValidationLogicImpl.createValidationAccount(ValidationLogicImpl.java:418)
      at org.sakaiproject.accountvalidator.logic.impl.ValidationLogicImpl.createValidationAccount(ValidationLogicImpl.java:301)
      at org.sakaiproject.site.tool.helper.participant.impl.SiteAddParticipantHandler.processConfirmContinue(SiteAddParticipantHandler.java:770)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:601)
      at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:23)
      at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:17)
      at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:77)
      at uk.org.ponder.reflect.ReflectiveCache.invokeMethod(ReflectiveCache.java:141)
      at uk.org.ponder.mapping.support.DARApplier.invokeBeanMethod(DARApplier.java:179)
      at uk.org.ponder.rsf.state.support.RSVCApplier.invokeAction(RSVCApplier.java:218)
      at uk.org.ponder.rsf.processor.support.RSFActionHandler$1.run(RSFActionHandler.java:189)
      at uk.org.ponder.util.CollectingRunnableInvoker$1.run(CollectingRunnableInvoker.java:25)
      at uk.org.ponder.rsf.flow.support.BasicScopedAlterationWrapper.lockUUPP(BasicScopedAlterationWrapper.java:73)
      at uk.org.ponder.rsf.flow.support.BasicScopedAlterationWrapper.lockUUPP(BasicScopedAlterationWrapper.java:80)
      at uk.org.ponder.rsf.flow.support.BasicScopedAlterationWrapper.invokeRunnable(BasicScopedAlterationWrapper.java:64)
      at uk.org.ponder.rsf.flow.support.BasicScopedAlterationWrapper$$FastClassByCGLIB$$84f89202.invoke(<generated>)
      at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
      at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:627)
      at uk.org.ponder.rsf.flow.support.BasicScopedAlterationWrapper$$EnhancerByCGLIB$$65f67722.invokeRunnable(<generated>)
      at uk.org.ponder.rsf.flow.support.BasicScopedAlterationWrapper$$FastClassByCGLIB$$84f89202.invoke(<generated>)
      at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
      at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:627)
      at uk.org.ponder.rsf.flow.support.BasicScopedAlterationWrapper$$EnhancerByCGLIB$$65f67722.invokeRunnable(<generated>)
      at uk.org.ponder.util.CollectingRunnableInvoker$1.run(CollectingRunnableInvoker.java:29)
      at uk.org.ponder.util.CollectingRunnableInvoker.invokeWrappers(CollectingRunnableInvoker.java:22)
      at uk.org.ponder.util.CollectingRunnableInvoker.invokeRunnable(CollectingRunnableInvoker.java:14)
      at uk.org.ponder.rsf.processor.support.RSFActionHandler.handle(RSFActionHandler.java:165)
      at uk.org.ponder.rsf.processor.support.RSFActionHandler$$FastClassByCGLIB$$e3b6899d.invoke(<generated>)
      at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
      at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:627)
      at uk.org.ponder.rsf.processor.support.RSFActionHandler$$EnhancerByCGLIB$$dc218e5d.handle(<generated>)
      at uk.org.ponder.rsf.processor.support.RootHandlerBeanBase.handlePost(RootHandlerBeanBase.java:125)
      at uk.org.ponder.rsf.processor.support.RootHandlerBeanBase.handle(RootHandlerBeanBase.java:82)
      at sun.reflect.GeneratedMethodAccessor1917.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:601)
      at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:23)
      at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:17)
      at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:77)
      at uk.org.ponder.rsac.support.RSACBeanLocatorImpl.createBean(RSACBeanLocatorImpl.java:553)
      at uk.org.ponder.rsac.support.RSACBeanLocatorImpl.access$000(RSACBeanLocatorImpl.java:75)
      at uk.org.ponder.rsac.support.RSACBeanLocatorImpl$1.run(RSACBeanLocatorImpl.java:449)
      at uk.org.ponder.rsac.RSACErrorBridge.invokeRunnable(RSACErrorBridge.java:38)
      at uk.org.ponder.rsac.support.RSACBeanLocatorImpl.createBean(RSACBeanLocatorImpl.java:447)
      at uk.org.ponder.rsac.support.RSACBeanLocatorImpl.getLocalBean(RSACBeanLocatorImpl.java:348)
      at uk.org.ponder.rsac.support.RSACBeanLocatorImpl.getBean(RSACBeanLocatorImpl.java:379)
      at uk.org.ponder.rsac.support.PerRequestInfo$1.locateBean(PerRequestInfo.java:49)
      at uk.ac.cam.caret.sakai.rsf.servlet.ReasonableSakaiServlet.service(ReasonableSakaiServlet.java:65)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
      at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:749)
      at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:487)
      at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379)
      at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:339)
      at org.sakaiproject.tool.impl.ActiveToolComponent$MyActiveTool.help(ActiveToolComponent.java:583)
      at org.sakaiproject.cheftool.ToolServlet.sendToHelper(ToolServlet.java:677)
      at org.sakaiproject.cheftool.ToolServlet.doGet(ToolServlet.java:221)
      at org.sakaiproject.cheftool.VelocityPortletPaneledAction.doGet(VelocityPortletPaneledAction.java:1168)
      at org.sakaiproject.cheftool.ToolServlet.doPost(ToolServlet.java:154)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
      at org.sakaiproject.vm.ComponentServlet.service(ComponentServlet.java:56)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
      at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:634)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
      at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:749)
      at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:487)
      at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379)
      at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:339)
      at org.sakaiproject.tool.impl.ActiveToolComponent$MyActiveTool.forward(ActiveToolComponent.java:513)
      at org.sakaiproject.portal.charon.SkinnableCharonPortal.forwardTool(SkinnableCharonPortal.java:1500)
      at org.sakaiproject.portal.charon.handlers.ToolHandler.doTool(ToolHandler.java:214)
      at org.sakaiproject.portal.charon.handlers.ToolHandler.doGet(ToolHandler.java:97)
      at org.sakaiproject.portal.charon.handlers.ToolHandler.doPost(ToolHandler.java:74)
      at org.sakaiproject.portal.charon.SkinnableCharonPortal.doPost(SkinnableCharonPortal.java:1290)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
      at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:695)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
      at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
      at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1008)
      at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
      at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      at java.lang.Thread.run(Thread.java:722)
      Caused by: org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
      at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:96)
      at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
      at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:275)
      at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:268)
      at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:184)
      at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:321)
      at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:51)
      at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1216)
      at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:383)
      at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:133)
      at org.springframework.orm.hibernate3.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:657)
      ... 110 more
      Caused by: java.sql.BatchUpdateException: ORA-01400: cannot insert NULL into ("SAK"."VALIDATIONACCOUNT_ITEM"."FIRST_NAME")

      at oracle.jdbc.driver.DatabaseError.throwBatchUpdateException(DatabaseError.java:343)
      at oracle.jdbc.driver.OraclePreparedStatement.executeBatch(OraclePreparedStatement.java:10720)
      at org.apache.commons.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297)
      at org.apache.commons.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297)
      at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:70)
      at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:268)
      ... 118 more

        Gliffy Diagrams

          Zeplin

            Attachments

              Issue Links

                Activity

                  People

                  Assignee:
                  Unassigned Unassigned
                  Reporter:
                  ncaidin Neal Caidin
                  Votes:
                  0 Vote for this issue
                  Watchers:
                  2 Start watching this issue

                    Dates

                    Created:
                    Updated:
                    Resolved:

                      Git Integration