I added this warning to the Sync module wiki page:

https://wiki.openmrs.org/display/docs/Sync+Module

@Erick-to answer you previous question, you usually have to go to the server 
logs to get the details of an error, but you can see which record in particular 
caused the error by going to the "History of Changes" page... you may have to 
check the history of changes on the parent and/or child server depending on 
where the error occurred.  (Same for the logs).

If you click on a record in the History of Changes list, you will see the 
details of that record, which sometimes can be useful when debugging.  For 
records in error, you can take the action to "Remove as not supposed to sync" 
and then "reset as new sync record" and then the server will try to sync the 
record again.  This usually only solves the problem about 2% of the time, but 
it is good first step to take.  If nothing else, since it will try to sync the 
record again, the error should reoccur, so you can just "tail" your log files 
to see what comes up instead of having to search through them.

Hope this helps...

Mark

From: [email protected] [mailto:[email protected]] On Behalf Of 
Erick Mugoma
Sent: Friday, December 02, 2011 5:51 AM
To: [email protected]
Subject: Re: [OPENMRS-IMPLEMENTERS] Error when Sync XSNs

Thanks Dave

This is very important advice to us am very grateful.

Erick
On Fri, Dec 2, 2011 at 12:20 PM, Dave Thomas 
<[email protected]<mailto:[email protected]>> wrote:
Hi.  It is strongly recommended that you don't depend on sync to propagate 
changes to your infopath forms.  We never did this successfully in rwinkwavu, 
and this is one of the reasons that we've transitioned completely to htmlforms.

One problem (and i don't know if this is your problem or not) is that infopath 
XSNs are .cab files that contain a whole bunch of files inside of them.  Some 
of these files have the hard-coded paths of the server that you were working on 
when you modified the form.  The problem is that these hard-coded strings then 
get propagated to the other servers through sync (when its working).   In the 
past in rwink, we've ended up with forms from one site being submitted to 
another site, which caused all kinds of problems.

What i would do really is block org.openmrs.module.formentry, and do all XSN 
manipulation by hand on each server.  I think in the long run, this is still 
easier.

d

On Fri, Dec 2, 2011 at 11:11 AM, Erick Mugoma 
<[email protected]<mailto:[email protected]>> wrote:
Hi
I've realised the following error occurs when trying to sync the xsn forms. How 
can resolve this.


INFO - LoggingAdvice.invoke(134) |2011-12-02 12:07:13,589| Exiting method 
processSyncRecord
ERROR - SyncUtilTransmission.processSyncTransmission(454) |2011-12-02 
12:07:13,591| Sync error while ingesting records for server: ErickTest
org.openmrs.module.sync.ingest.SyncIngestException: Unable to process sync 
record, processing terminated unexpectedly.
        at 
org.openmrs.module.sync.api.impl.SyncIngestServiceImpl.processSyncRecord(SyncIngestServiceImpl.java:288)
        at sun.reflect.GeneratedMethodAccessor948.invoke(Unknown Source)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        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.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
        at 
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
        at $Proxy156.processSyncRecord(Unknown Source)
        at sun.reflect.GeneratedMethodAccessor948.invoke(Unknown Source)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        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.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
        at org.openmrs.aop.LoggingAdvice.invoke(LoggingAdvice.java:114)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
        at 
org.springframework.aop.framework.adapter.MethodBeforeAdviceInterceptor.invoke(MethodBeforeAdviceInterceptor.java:50)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
        at 
org.springframework.aop.framework.adapter.MethodBeforeAdviceInterceptor.invoke(MethodBeforeAdviceInterceptor.java:50)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
        at 
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
        at $Proxy157.processSyncRecord(Unknown Source)
        at sun.reflect.GeneratedMethodAccessor948.invoke(Unknown Source)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        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.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
        at 
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
        at $Proxy157.processSyncRecord(Unknown Source)
        at 
org.openmrs.module.sync.SyncUtilTransmission.processSyncTransmission(SyncUtilTransmission.java:451)
        at 
org.openmrs.module.sync.web.controller.ImportListController.processFormSubmission(ImportListController.java:306)
        at 
org.springframework.web.servlet.mvc.AbstractFormController.handleRequestInternal(AbstractFormController.java:268)
        at 
org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
        at 
org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
        at 
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:790)
        at 
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:719)
        at 
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644)
        at 
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:560)
        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.openmrs.module.web.filter.ForcePasswordChangeFilter.doFilter(ForcePasswordChangeFilter.java:65)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at 
org.openmrs.module.web.filter.ModuleFilterChain.doFilter(ModuleFilterChain.java:76)
        at 
org.openmrs.module.xforms.web.XformsFilter.doFilter(XformsFilter.java:60)
        at 
org.openmrs.module.web.filter.ModuleFilterChain.doFilter(ModuleFilterChain.java:74)
        at 
org.openmrs.module.web.filter.ModuleFilter.doFilter(ModuleFilter.java:58)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at 
org.openmrs.web.filter.OpenmrsFilter.doFilterInternal(OpenmrsFilter.java:112)
        at 
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at 
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
        at 
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.openmrs.web.filter.StartupFilter.doFilter(StartupFilter.java:83)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.openmrs.web.filter.StartupFilter.doFilter(StartupFilter.java:83)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.openmrs.web.filter.StartupFilter.doFilter(StartupFilter.java:83)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at 
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
        at 
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
        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(Thread.java:662)
Caused by: org.openmrs.module.sync.SyncException: FormEntry module present but 
failed to rebuild XSN, see server log for the stacktrace for error details 
Processing form with id: 27
        at org.openmrs.module.sync.SyncUtil.rebuildXSN(SyncUtil.java:967)
        at 
org.openmrs.module.sync.api.impl.SyncIngestServiceImpl.applyPreCommitRecordActions(SyncIngestServiceImpl.java:335)
        at sun.reflect.GeneratedMethodAccessor951.invoke(Unknown Source)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        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.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
        at 
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
        at $Proxy156.applyPreCommitRecordActions(Unknown Source)
        at sun.reflect.GeneratedMethodAccessor951.invoke(Unknown Source)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        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.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
        at org.openmrs.aop.LoggingAdvice.invoke(LoggingAdvice.java:114)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
        at 
org.springframework.aop.framework.adapter.MethodBeforeAdviceInterceptor.invoke(MethodBeforeAdviceInterceptor.java:50)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
        at 
org.springframework.aop.framework.adapter.MethodBeforeAdviceInterceptor.invoke(MethodBeforeAdviceInterceptor.java:50)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
        at 
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
        at $Proxy157.applyPreCommitRecordActions(Unknown Source)
        at sun.reflect.GeneratedMethodAccessor951.invoke(Unknown Source)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        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.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
        at 
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
        at $Proxy157.applyPreCommitRecordActions(Unknown Source)
        at 
org.openmrs.module.sync.api.impl.SyncIngestServiceImpl.processSyncRecord(SyncIngestServiceImpl.java:256)
        ... 89 more
Caused by: java.lang.reflect.InvocationTargetException
        at sun.reflect.GeneratedMethodAccessor1396.invoke(Unknown Source)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.openmrs.module.sync.SyncUtil.rebuildXSN(SyncUtil.java:963)
        ... 127 more
Caused by: org.hibernate.LazyInitializationException: could not initialize 
proxy - no Session
        at 
org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:57)
        at 
org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:111)
        at 
org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:150)
        at org.openmrs.Field$$EnhancerByCGLIB$$e75b04e6.getName(<generated>)
        at org.openmrs.FormField.compareTo(FormField.java:137)
        at org.openmrs.FormField.compareTo(FormField.java:24)
        at java.util.TreeMap.put(TreeMap.java:545)
        at java.util.TreeSet.add(TreeSet.java:238)
        at org.openmrs.util.FormUtil.getFormStructure(FormUtil.java:169)
        at 
org.openmrs.module.formentry.FormXmlTemplateBuilder.getXmlTemplate(FormXmlTemplateBuilder.java:148)
        at 
org.openmrs.module.formentry.FormEntryUtil.compileXSN(FormEntryUtil.java:310)
        at 
org.openmrs.module.formentry.FormEntryUtil.getCurrentXSN(FormEntryUtil.java:286)
        at 
org.openmrs.module.formentry.FormEntryUtil.rebuildXSN(FormEntryUtil.java:869)
        ... 131 more

Thanks

________________________________
Click here to 
unsubscribe<mailto:[email protected]?body=SIGNOFF%20openmrs-implement-l>
 from OpenMRS Implementers' mailing list

________________________________
Click here to 
unsubscribe<mailto:[email protected]?body=SIGNOFF%20openmrs-implement-l>
 from OpenMRS Implementers' mailing list

_________________________________________

To unsubscribe from OpenMRS Implementers' mailing list, send an e-mail to 
[email protected] with "SIGNOFF openmrs-implement-l" in the  body 
(not the subject) of your e-mail.

[mailto:[email protected]?body=SIGNOFF%20openmrs-implement-l]

Reply via email to