Details
Description
Generating a cohort report with an Excel 2007 file that's uploaded gives a big ugly error. Maybe we should consider a pretty little error message instead?
At the Report Template Module, List Templates screen, if you click on the Report Schema name it says, Error 404 The page "/openmrs/reportSchemaXml.form" cannot be found. Check the link and try again.
When Editing the Report, under the Report Template tab, the Template name shows up as the Excel filename, but has two points between the name and the extension. For example TB..xls 0.1.
we need some error checking when deleting version uploaded files. The file I tried to delete was perhaps still assigned to the report template, and gave the following error...
An Internal Error has Occurred
org.springframework.dao.DataIntegrityViolationException
Could not execute JDBC batch update; nested exception is
org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
Consult the help document.
Contact your friendly neighborhood administrator if it cannot be resolved.
Hide stack trace
org.springframework.orm.hibernate3.SessionFactoryUtils.convertHibernateA
ccessException(SessionFactoryUtils.java:622)
org.springframework.orm.hibernate3.HibernateTransactionManager.convertHi
bernateAccessException(HibernateTransactionManager.java:728)
org.springframework.orm.hibernate3.HibernateTransactionManager.doCommit(
HibernateTransactionManager.java:604)
org.springframework.transaction.support.AbstractPlatformTransactionManag
er.processCommit(AbstractPlatformTransactionManager.java:709)
org.springframework.transaction.support.AbstractPlatformTransactionManag
er.commit(AbstractPlatformTransactionManager.java:678)
org.springframework.transaction.interceptor.TransactionAspectSupport.com
mitTransactionAfterReturning(TransactionAspectSupport.java:319)
org.springframework.transaction.interceptor.TransactionInterceptor.invok
e(TransactionInterceptor.java:116)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(Ref
lectiveMethodInvocation.java:171)
org.springframework.aop.framework.adapter.MethodBeforeAdviceInterceptor.
invoke(MethodBeforeAdviceInterceptor.java:50)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(Ref
lectiveMethodInvocation.java:171)
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAo
pProxy.java:204)
$Proxy96.deleteVersionedFile(Unknown Source) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) java.lang.reflect.Method.invoke(Unknown Source) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(
AopUtils.java:301)
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAo
pProxy.java:198)
$Proxy96.deleteVersionedFile(Unknown Source) org.openmrs.module.versionedfileupload.web.controller.VersionedFileFormC
ontroller.onSubmit(VersionedFileFormController.java:113)
org.springframework.web.servlet.mvc.SimpleFormController.processFormSubm
ission(SimpleFormController.java:267)
org.springframework.web.servlet.mvc.AbstractFormController.handleRequest
Internal(AbstractFormController.java:265)
org.springframework.web.servlet.mvc.AbstractController.handleRequest(Abs
tractController.java:153)
org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handl
e(SimpleControllerHandlerAdapter.java:48)
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherS
ervlet.java:875)
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherSe
rvlet.java:809)
org.springframework.web.servlet.FrameworkServlet.processRequest(Framewor
kServlet.java:476)
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet
.java:441)
javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:290)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:206)
org.openmrs.web.OpenmrsFilter.doFilter(OpenmrsFilter.java:124)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:235)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:206)
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFil
terInternal(OpenSessionInViewFilter.java:198)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequ
estFilter.java:75)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:235)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:206)
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
e.java:228)
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
e.java:175)
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
:128)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
:104)
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
java:109)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:2
16)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:84
4)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(
Http11Protocol.java:634)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)
java.lang.Thread.run(Unknown Source)
Version: 1.4.0.01 dev Build 5543
Database Version: 1.4.0.02
Cookies:
dashboardTab-22=[patientOverviewTab]
JSESSIONID=[2A2205C69EC0BF1803E76E6AA611B850] __openmrs_language=[en_US]
Also, when I tried to set the template file to blank, it gave the following error...
An Internal Error has Occurred
org.hibernate.PropertyValueException
not-null property references a null or transient value:
org.openmrs.module.reporttemplate.ReportTemplate.template
Consult the help document.
Contact your friendly neighborhood administrator if it cannot be resolved.
Hide stack trace
org.hibernate.engine.Nullability.checkNullability(Nullability.java:72)
org.hibernate.event.def.DefaultFlushEntityEventListener.scheduleUpdate(D
efaultFlushEntityEventListener.java:270)
org.hibernate.event.def.DefaultFlushEntityEventListener.onFlushEntity(De
faultFlushEntityEventListener.java:128)
org.hibernate.event.def.AbstractFlushingEventListener.flushEntities(Abst
ractFlushingEventListener.java:196)
org.hibernate.event.def.AbstractFlushingEventListener.flushEverythingToE
xecutions(AbstractFlushingEventListener.java:76)
org.hibernate.event.def.DefaultAutoFlushEventListener.onAutoFlush(Defaul
tAutoFlushEventListener.java:35)
org.hibernate.impl.SessionImpl.autoFlushIfRequired(SessionImpl.java:969)
org.hibernate.impl.SessionImpl.list(SessionImpl.java:1114)
org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
org.openmrs.report.db.hibernate.HibernateReportDAO.getReportSchemaXmls(H
ibernateReportDAO.java:78)
org.openmrs.report.impl.ReportServiceImpl.getReportSchemaXmls(ReportServ
iceImpl.java:285)
sun.reflect.GeneratedMethodAccessor424.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) java.lang.reflect.Method.invoke(Unknown Source) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(
AopUtils.java:301)
org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinp
oint(ReflectiveMethodInvocation.java:182)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(Ref
lectiveMethodInvocation.java:149)
org.springframework.transaction.interceptor.TransactionInterceptor.invok
e(TransactionInterceptor.java:106)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(Ref
lectiveMethodInvocation.java:171)
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAo
pProxy.java:204)
$Proxy83.getReportSchemaXmls(Unknown Source) sun.reflect.GeneratedMethodAccessor424.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) java.lang.reflect.Method.invoke(Unknown Source) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(
AopUtils.java:301)
org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinp
oint(ReflectiveMethodInvocation.java:182)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(Ref
lectiveMethodInvocation.java:149)
org.springframework.transaction.interceptor.TransactionInterceptor.invok
e(TransactionInterceptor.java:106)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(Ref
lectiveMethodInvocation.java:171)
org.openmrs.aop.LoggingAdvice.invoke(LoggingAdvice.java:116)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(Ref
lectiveMethodInvocation.java:171)
org.springframework.aop.framework.adapter.MethodBeforeAdviceInterceptor.
invoke(MethodBeforeAdviceInterceptor.java:50)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(Ref
lectiveMethodInvocation.java:171)
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAo
pProxy.java:204)
$Proxy84.getReportSchemaXmls(Unknown Source) sun.reflect.GeneratedMethodAccessor424.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) java.lang.reflect.Method.invoke(Unknown Source) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(
AopUtils.java:301)
org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinp
oint(ReflectiveMethodInvocation.java:182)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(Ref
lectiveMethodInvocation.java:149)
org.springframework.transaction.interceptor.TransactionInterceptor.invok
e(TransactionInterceptor.java:106)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(Ref
lectiveMethodInvocation.java:171)
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAo
pProxy.java:204)
$Proxy84.getReportSchemaXmls(Unknown Source) sun.reflect.GeneratedMethodAccessor424.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) java.lang.reflect.Method.invoke(Unknown Source) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(
AopUtils.java:301)
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAo
pProxy.java:198)
$Proxy83.getReportSchemaXmls(Unknown Source) org.openmrs.module.reporttemplate.web.controller.ReportTemplateFormContr
oller.referenceData(ReportTemplateFormController.java:67)
org.springframework.web.servlet.mvc.AbstractFormController.showForm(Abst
ractFormController.java:574)
org.springframework.web.servlet.mvc.SimpleFormController.showForm(Simple
FormController.java:198)
org.springframework.web.servlet.mvc.SimpleFormController.showForm(Simple
FormController.java:175)
org.springframework.web.servlet.mvc.SimpleFormController.processFormSubm
ission(SimpleFormController.java:258)
org.springframework.web.servlet.mvc.AbstractFormController.handleRequest
Internal(AbstractFormController.java:265)
org.springframework.web.servlet.mvc.AbstractController.handleRequest(Abs
tractController.java:153)
org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handl
e(SimpleControllerHandlerAdapter.java:48)
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherS
ervlet.java:875)
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherSe
rvlet.java:809)
org.springframework.web.servlet.FrameworkServlet.processRequest(Framewor
kServlet.java:476)
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet
.java:441)
javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:290)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:206)
org.openmrs.web.OpenmrsFilter.doFilter(OpenmrsFilter.java:124)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:235)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:206)
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFil
terInternal(OpenSessionInViewFilter.java:198)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequ
estFilter.java:75)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:235)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:206)
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
e.java:228)
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
e.java:175)
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
:128)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
:104)
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
java:109)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:2
16)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:84
4)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(
Http11Protocol.java:634)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)
java.lang.Thread.run(Unknown Source)
Version: 1.4.0.01 dev Build 5543
Database Version: 1.4.0.02
Cookies:
dashboardTab-22=[patientOverviewTab]
JSESSIONID=[2A2205C69EC0BF1803E76E6AA611B850] __openmrs_language=[en_US]
Also, it seems there should be a way to delete a Report Template, but I can't find a way.