Installation from a recovery database - Application error

Not sure what forum to put this in  - so feel free to move as nessesary.

I'm trying to reinstall openVPMS from a damaged Win7 Machine to a new Windows 10 PC.
I'm fairly confident everything has gone well up to and including running the default database scripts.
I can log in with the default user and see a working but empty application. All good so far (though took a while to get here)

I have then managed to recover the old database into MYSQL. I can see all the data in the tables including users and passwords (cleartext - high five to those developers). I'm confident that the database is complete.

I stop the Tomcat services. I backup and remove the installed database. I import the recovered backup database. Restart services.

Go to the URL/app in the browser and see the login screen. Enter the login details and I'm presented with this message (Javascript Alert):

An application error has occurred. Your session has been reset.

  • I see nothing on the page apart from three lines in the top right of the screen.
  • Refreshing the page gives the same response. Except the URL increments one number every time I refresh.
  • Going to the root app folder gives the same screen and error.
  • Trying an alternate browser lets me try and log in but gives the same message.
  • Restarting the PC and trying again just repeats the same.

Tomcat logs do not seem to show anything useful
WARN LoggerListener,http-8080-3:60 - Authentication event InteractiveAuthenticationSuccessEvent: admin; details: org.springframework.security.web.authentication.WebAuthenticationDetails@43458: RemoteIpAddress: 0:0:0:0:0:0:0:1; SessionId: AB50CEE9AB287E29B4342F865357BADC

Can anyone advise what is going on here?​
I have tried 'Googleing'/ reading but only find this error in a report about print and not a 'root' application error.

Thanks in Advance.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Re: Installation from a recovery database - Application error

Tim A will probably comment further when he wakes up (as he will know what generates the "An application error has occurred. Your session has been reset" message).

However, one thought occurs to me: you obviously had to install OpenVPMS on the new machine - was the version you installed the same as that on the Win 7 machine?  If not then you need to a) run the database migration script; then b) load the archetypes using archload.  See http://www.openvpms.org/documentation/csh/1.8/topics/installing-openvpms...

Regards, Tim G

Re: Installation from a recovery database - Application error

The error is probably being logged to stderr, in which case it will appear in one of the tomcat logs in <TOMCAT_HOME>/logs

 

Re: Installation from a recovery database - Application error

Hi thanks for the follow up.

Tomcat has not so far seemed to provide a error log in the location everyone refers to:

C:\Program Files\Apache Software Foundation\Tomcat 6.0\logs

lists:

catalina.2016-03-10.log
commons-daemon.2016-03-10.log
host-manager.2016-03-10.log
localhost.2016-03-10.log
manager.2016-03-10.log
service-install.log
tomcat6-stderr.2016-03-10.log
tomcat6-stdout.2016-03-10.log

There are no 'openvpms' files here. However one level up I do see two files which I assume are where errors should be logged?
C:\Program Files\Apache Software Foundation\Tomcat 6.0

openvpms.log
openvpmsfull.log

Logging into the application and creating the error again this morning and 'openvpms.log' has this single entry in it

11 Mar 2016 09:00:28,625  WARN LoggerListener,http-8080-2:60 - Authentication event InteractiveAuthenticationSuccessEvent: admin; details: org.springframework.security.web.authentication.WebAuthenticationDetails@b364: RemoteIpAddress: 0:0:0:0:0:0:0:1; SessionId: 1954B4F476170614A0D53AA30C32261E

​and 'openvpmsfull.log' has this single entry in it

11 Mar 2016 09:00:28,625  WARN LoggerListener,http-8080-2:60 - Authentication event InteractiveAuthenticationSuccessEvent: admin; details: org.springframework.security.web.authentication.WebAuthenticationDetails@b364: RemoteIpAddress: 0:0:0:0:0:0:0:1; SessionId: 1954B4F476170614A0D53AA30C32261E

​both look the same to me.

I looked in both the stderr and stdout logs and there are no entries for today at all.
Last line in tomcat6-stderr.2016-03-10.log (dated one day ago - last boot)

Mar 10, 2016 7:14:53 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 19799 ms

Versions.
Installed now: openvpms-release-1.5-beta-2
Installed before: openvpms-release-1.5-beta-2

I have gotten this from the folder names. I'm reasonably certain the same install files are being used to create the new install as the were on the original drive (they kept an install folder with this in it) - with the only exception being a newer version of MYSQL Workbench was used to work in windows 10 which should have not effect. Perhaps I can dump to Data Structure of both the installed database and the ported database and compare?

 

 

NOTE: editing this post as creating a reply I was blocked as a spam poster?

 

Actually it just hit me that tanderson said "one of" the logs and not just stderr

localhost.2016-03-11.log created today at the time of my last login attempt:

 

Mar 11, 2016 9:00:28 AM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet AppServlet threw exception
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'openVPMSApp' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.openvpms.web.app.OpenVPMSApp]: Constructor threw exception; nested exception is org.openvpms.component.business.service.archetype.ArchetypeServiceException: Failed to execute query: {0}.
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:965)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:898)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:485)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:310)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
    at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1075)
    at org.openvpms.web.servlet.SpringWebContainerServlet.newApplicationInstance(SpringWebContainerServlet.java:116)
    at nextapp.echo2.webcontainer.ContainerInstance.init(ContainerInstance.java:206)
    at nextapp.echo2.webcontainer.ContainerSynchronizeService.renderInit(ContainerSynchronizeService.java:417)
    at nextapp.echo2.webrender.service.SynchronizeService.service(SynchronizeService.java:269)
    at nextapp.echo2.webrender.WebRenderServlet.process(WebRenderServlet.java:273)
    at org.openvpms.web.servlet.SpringWebContainerServlet.process(SpringWebContainerServlet.java:148)
    at nextapp.echo2.webrender.WebRenderServlet.doPost(WebRenderServlet.java:189)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:343)
    at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:109)
    at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355)
    at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:78)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355)
    at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:187)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355)
    at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:97)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355)
    at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:79)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355)
    at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:149)
    at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
    at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
    at java.lang.Thread.run(Unknown Source)
Caused by: org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.openvpms.web.app.OpenVPMSApp]: Constructor threw exception; nested exception is org.openvpms.component.business.service.archetype.ArchetypeServiceException: Failed to execute query: {0}.
    at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:141)
    at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:74)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:958)
    ... 44 more
Caused by: org.openvpms.component.business.service.archetype.ArchetypeServiceException: Failed to execute query: {0}.
    at org.openvpms.component.business.service.archetype.ArchetypeService.get(ArchetypeService.java:330)
    at sun.reflect.GeneratedMethodAccessor168.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
    at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:196)
    at com.sun.proxy.$Proxy3.get(Unknown Source)
    at sun.reflect.GeneratedMethodAccessor168.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
    at org.springframework.security.access.intercept.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:67)
    at org.openvpms.component.business.service.security.OpenVPMSMethodSecurityInterceptor.invoke(OpenVPMSMethodSecurityInterceptor.java:50)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
    at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
    at com.sun.proxy.$Proxy4.get(Unknown Source)
    at org.openvpms.component.business.service.archetype.rule.ArchetypeRuleService.get(ArchetypeRuleService.java:355)
    at org.openvpms.archetype.rules.util.EntityRelationshipHelper.getEntity(EntityRelationshipHelper.java:248)
    at org.openvpms.archetype.rules.util.EntityRelationshipHelper.getDefaultTarget(EntityRelationshipHelper.java:163)
    at org.openvpms.archetype.rules.util.EntityRelationshipHelper.getDefaultTarget(EntityRelationshipHelper.java:120)
    at org.openvpms.archetype.rules.practice.LocationRules.getDefaultDepositAccount(LocationRules.java:80)
    at org.openvpms.web.component.app.ContextApplicationInstance.updateLocation(ContextApplicationInstance.java:319)
    at org.openvpms.web.component.app.ContextApplicationInstance.initLocation(ContextApplicationInstance.java:301)
    at org.openvpms.web.component.app.ContextApplicationInstance.<init>(ContextApplicationInstance.java:81)
    at org.openvpms.web.app.OpenVPMSApp.<init>(OpenVPMSApp.java:72)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    at java.lang.reflect.Constructor.newInstance(Unknown Source)
    at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:126)
    ... 46 more
Caused by: com.thoughtworks.xstream.converters.ConversionException: Cannot parse date 2011-10-31 00:00:00.0 WST
---- Debugging information ----
-------------------------------
    at com.thoughtworks.xstream.converters.basic.DateConverter.fromString(DateConverter.java:97)
    at org.openvpms.component.business.domain.im.datatypes.basic.TypedValueConverter.fromString(TypedValueConverter.java:118)
    at org.openvpms.component.business.domain.im.datatypes.basic.TypedValue.getObject(TypedValue.java:140)
    at org.openvpms.component.business.domain.im.datatypes.basic.TypedValueMap$EntrySetIterator.next(TypedValueMap.java:401)
    at org.openvpms.component.business.domain.im.datatypes.basic.TypedValueMap$EntrySetIterator.next(TypedValueMap.java:374)
    at org.openvpms.component.business.dao.hibernate.im.common.MapConverter.convert(MapConverter.java:49)
    at org.openvpms.component.business.dao.hibernate.im.common.IMObjectAssembler.assembleObject(IMObjectAssembler.java:290)
    at org.openvpms.component.business.dao.hibernate.im.entity.EntityAssembler.assembleObject(EntityAssembler.java:115)
    at org.openvpms.component.business.dao.hibernate.im.party.PartyAssembler.assembleObject(PartyAssembler.java:77)
    at org.openvpms.component.business.dao.hibernate.im.party.PartyAssembler.assembleObject(PartyAssembler.java:36)
    at org.openvpms.component.business.dao.hibernate.im.common.IMObjectAssembler.assemble(IMObjectAssembler.java:174)
    at org.openvpms.component.business.dao.hibernate.im.common.CompoundAssembler.assemble(CompoundAssembler.java:118)
    at org.openvpms.component.business.dao.hibernate.im.IMObjectDAOHibernate$8.doInHibernate(IMObjectDAOHibernate.java:846)
    at org.openvpms.component.business.dao.hibernate.im.IMObjectDAOHibernate$8.doInHibernate(IMObjectDAOHibernate.java:835)
    at org.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:406)
    at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:339)
    at org.openvpms.component.business.dao.hibernate.im.IMObjectDAOHibernate.execute(IMObjectDAOHibernate.java:1115)
    at org.openvpms.component.business.dao.hibernate.im.IMObjectDAOHibernate.get(IMObjectDAOHibernate.java:835)
    at org.openvpms.component.business.dao.hibernate.im.IMObjectDAOHibernate.get(IMObjectDAOHibernate.java:484)
    at org.openvpms.component.business.service.archetype.ArchetypeService.get(ArchetypeService.java:328)
    ... 77 more

 

 

Re: Installation from a recovery database - Application error

The problem is here:

Caused by: com.thoughtworks.xstream.converters.ConversionException: Cannot parse date 2011-10-31 00:00:00.0 WST

This is caused by a change to the way dates are serialised in different java versions, as described here: http://www.openvpms.org/forum/wst-timezone-issue

You have several options:

 

Re: Installation from a recovery database - Application error

THANK YOU.

That was it. Even though I had installed the jre-6u26-windows-x64.exe as in the original install files it had updated to Java 8.

Going through the update process was straightforward it is all running now. 

 

Jamie.

Syndicate content