cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Backoffice Orchestrator: show-cockpit.xml - Internal Server Error

0 Likes
673

Hello,

we are using Version 6.4.0.22. Trying to open "cockpit.xml" from within orchestrator directly leads to an internal server error.

Does not seem to be related to any of our modifications. Did anyone else experience an issue like that?

 ERROR [hybrisHTTP35] [UiEngineImpl]
 java.lang.IllegalMonitorStateException: attempt to unlock read lock, not locked by current thread
         at java.util.concurrent.locks.ReentrantReadWriteLock$Sync.unmatchedUnlockException(ReentrantReadWriteLock.java:444) ~[?:1.8.0_162]
         at java.util.concurrent.locks.ReentrantReadWriteLock$Sync.tryReleaseShared(ReentrantReadWriteLock.java:428) ~[?:1.8.0_162]
         at java.util.concurrent.locks.AbstractQueuedSynchronizer.releaseShared(AbstractQueuedSynchronizer.java:1341) ~[?:1.8.0_162]
         at java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.unlock(ReentrantReadWriteLock.java:881) ~[?:1.8.0_162]
         at com.hybris.cockpitng.core.config.impl.LoggingReentrantReadWriteLock$LoggingWReadLock.unlock(LoggingReentrantReadWriteLock.java:90) ~[cockpitcore-6.4.0.22-RC1.jar:?]
         at com.hybris.cockpitng.core.config.impl.DefaultCockpitConfigurationService.getConfigAsString(DefaultCockpitConfigurationService.java:1472) ~[cockpitcore-6.4.0.22-RC1.jar:?]
         at com.hybris.cockpitng.adminmode.CockpitAdminComposer.showCockpitConfigXml(CockpitAdminComposer.java:359) ~[cockpitadmin-6.4.0.22-RC1.jar:?]
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_162]
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_162]
         at sun.reflect.DelegatingMethodAccessorImpl.__invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_162]
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:45009) ~[?:1.8.0_162]
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:45012) ~[?:1.8.0_162]
         at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_162]
         at com.hybris.cockpitng.util.ViewAnnotationAwareComposer.invokeListenerMethod(ViewAnnotationAwareComposer.java:109) ~[cockpitframework-6.4.0.22-RC1.jar:?]
         at com.hybris.cockpitng.util.ViewAnnotationAwareComposer.lambda$applyEventListener$0(ViewAnnotationAwareComposer.java:127) ~[cockpitframework-6.4.0.22-RC1.jar:?]
         at org.zkoss.zk.ui.AbstractComponent.onEvent(AbstractComponent.java:3163) ~[zk-8.0.4.2.jar:3.6.4]
         at org.zkoss.zk.ui.AbstractComponent.service(AbstractComponent.java:3133) ~[zk-8.0.4.2.jar:3.6.4]
         at org.zkoss.zk.ui.AbstractComponent.service(AbstractComponent.java:3075) ~[zk-8.0.4.2.jar:3.6.4]
         at org.zkoss.zk.ui.impl.EventProcessor.process(EventProcessor.java:138) ~[zk-8.0.4.2.jar:3.6.4]
         at org.zkoss.zk.ui.impl.UiEngineImpl.processEvent(UiEngineImpl.java:1853) ~[zk-8.0.4.2.jar:3.6.4]
         at org.zkoss.zk.ui.impl.UiEngineImpl.process(UiEngineImpl.java:1625) [zk-8.0.4.2.jar:3.6.4]
         at org.zkoss.zk.ui.impl.UiEngineImpl.execUpdate(UiEngineImpl.java:1328) [zk-8.0.4.2.jar:3.6.4]
         at org.zkoss.zk.au.http.DHtmlUpdateServlet.process(DHtmlUpdateServlet.java:606) [zk-8.0.4.2.jar:3.6.4]
         at org.zkoss.zk.au.http.DHtmlUpdateServlet.doGet(DHtmlUpdateServlet.java:482) [zk-8.0.4.2.jar:3.6.4]
         at org.zkoss.zk.au.http.DHtmlUpdateServlet.doPost(DHtmlUpdateServlet.java:490) [zk-8.0.4.2.jar:3.6.4]
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:650) [servlet-api.jar:?]
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) [servlet-api.jar:?]
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) [catalina.jar:7.0.90]
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.90]
         at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) [tomcat7-websocket.jar:7.0.90]
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.90]
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.90]
         at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:208) [spring-security-web-4.2.6.RELEASE.jar:4.2.6.RELEASE]
         at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:177) [spring-security-web-4.2.6.RELEASE.jar:4.2.6.RELEASE]
         at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:347) [spring-web-4.3.21.RELEASE.jar:4.3.21.RELEASE]
         at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:263) [spring-web-4.3.21.RELEASE.jar:4.3.21.RELEASE]
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.90]
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.90]
         at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99) [spring-web-4.3.21.RELEASE.jar:4.3.21.RELEASE]
         at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-4.3.21.RELEASE.jar:4.3.21.RELEASE]
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.90]
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.90]
         at com.hybris.backoffice.mobile.filter.BackofficeMobileFilter.doFilter(BackofficeMobileFilter.java:60) [classes/:?]
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.90]
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.90]
         at de.hybris.platform.servicelayer.web.WebAppMediaFilter.doFilter(WebAppMediaFilter.java:140) [coreserver.jar:?]
         at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:347) [spring-web-4.3.21.RELEASE.jar:4.3.21.RELEASE]
         at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:263) [spring-web-4.3.21.RELEASE.jar:4.3.21.RELEASE]
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.90]
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.90]
         at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:330) [coreserver.jar:?]
         at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$StatisticsGatewayFilter.doFilter(AbstractPlatformFilterChain.java:419) [coreserver.jar:?]
         at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:300) [coreserver.jar:?]
         at de.hybris.platform.servicelayer.web.WebAppMediaFilter.doFilter(WebAppMediaFilter.java:140) [coreserver.jar:?]
         at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:300) [coreserver.jar:?]
         at com.hybris.cockpitng.modules.spring.filter.ExternalModuleContextClassLoaderFilter.doFilter(ExternalModuleContextClassLoaderFilter.java:44) [cockpit-module-aggregator-6.4.0.22-RC1.jar:?]
         at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:300) [coreserver.jar:?]
         at de.hybris.platform.servicelayer.web.DynamicCatalogVersionActivationFilter.doFilter(DynamicCatalogVersionActivationFilter.java:90) [classes/:?]
         at de.hybris.platform.servicelayer.web.DynamicCatalogVersionActivationFilter$$FastClassBySpringCGLIB$$2d468805.invoke(<generated>) [classes/:?]
         at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) [spring-core-4.3.21.RELEASE.jar:4.3.21.RELEASE]
         at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:736) [spring-aop-4.3.21.RELEASE.jar:4.3.21.RELEASE]
         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) [spring-aop-4.3.21.RELEASE.jar:4.3.21.RELEASE]
         at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:133) [spring-aop-4.3.21.RELEASE.jar:4.3.21.RELEASE]
         at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:121) [spring-aop-4.3.21.RELEASE.jar:4.3.21.RELEASE]
         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) [spring-aop-4.3.21.RELEASE.jar:4.3.21.RELEASE]
         at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:671) [spring-aop-4.3.21.RELEASE.jar:4.3.21.RELEASE]
         at de.hybris.platform.servicelayer.web.DynamicCatalogVersionActivationFilter$$EnhancerBySpringCGLIB$$978dc211.doFilter(<generated>) [classes/:?]
         at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:300) [coreserver.jar:?]
         at de.hybris.platform.servicelayer.web.DataSourceSwitchingFilter.doFilter(DataSourceSwitchingFilter.java:70) [coreserver.jar:?]
         at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:300) [coreserver.jar:?]
         at de.hybris.platform.servicelayer.web.SessionFilter.doFilter(SessionFilter.java:99) [coreserver.jar:?]
         at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:300) [coreserver.jar:?]
         at de.hybris.platform.servicelayer.web.RedirectWhenSystemIsNotInitializedFilter.doFilter(RedirectWhenSystemIsNotInitializedFilter.java:101) [coreserver.jar:?]
         at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:300) [coreserver.jar:?]
         at de.hybris.platform.servicelayer.web.TenantActivationFilter.doFilter(TenantActivationFilter.java:88) [coreserver.jar:?]
         at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:300) [coreserver.jar:?]
         at de.hybris.platform.servicelayer.web.Log4JFilter.doFilter(Log4JFilter.java:44) [coreserver.jar:?]
         at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:300) [coreserver.jar:?]
         at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain.processStandardFilterChain(AbstractPlatformFilterChain.java:209) [coreserver.jar:?]
         at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain.doFilterInternal(AbstractPlatformFilterChain.java:186) [coreserver.jar:?]
         at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-4.3.21.RELEASE.jar:4.3.21.RELEASE]
         at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:347) [spring-web-4.3.21.RELEASE.jar:4.3.21.RELEASE]
         at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:263) [spring-web-4.3.21.RELEASE.jar:4.3.21.RELEASE]
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.90]
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.90]
         at de.hybris.platform.servicelayer.web.XSSFilter.processPatternsAndDoFilter(XSSFilter.java:358) [coreserver.jar:?]
         at de.hybris.platform.servicelayer.web.XSSFilter.doFilter(XSSFilter.java:306) [coreserver.jar:?]
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.90]
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.90]
         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219) [catalina.jar:7.0.90]
         at org.apache.catalina.core.StandardContextValve.__invoke(StandardContextValve.java:110) [catalina.jar:7.0.90]
         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:41002) [catalina.jar:7.0.90]
         at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:494) [catalina.jar:7.0.90]
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169) [catalina.jar:7.0.90]
         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104) [catalina.jar:7.0.90]
         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) [catalina.jar:7.0.90]
         at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:1025) [catalina.jar:7.0.90]
         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:445) [catalina.jar:7.0.90]
         at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1136) [tomcat-coyote.jar:7.0.90]
         at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637) [tomcat-coyote.jar:7.0.90]
         at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318) [tomcat-coyote.jar:7.0.90]
         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_162]
         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_162]
         at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-coyote.jar:7.0.90]
         at java.lang.Thread.run(Thread.java:748) [?:1.8.0_162]

Accepted Solutions (1)

Accepted Solutions (1)

mansurarisoy
Contributor

Hi,

This is an OOTB bug possibly stems from the fix in https://jira.hybris.com/browse/PATCH-5218 and still didn't fixed in current version. This problem occurs only versions prior to 6.7 and this is a problem caused by miscopied line. We had exact same issue in our production with version 6.6.0.14 and solved the issue with the following workaround.

Define CustomBackofficeCockpitConfigurationService.java under custombackoffice/backoffice/src with corresponding package. Override getConfigAsString() method as in the following code segment.

PS: Overriding resetToDefaults() method is another workaround with the problem with the resetToDefaults() method. I am not sure why it's happening but we couldn't reset backoffice-config via Orchestrator (widgets were resetting just fine), so we had to override this method so that it is importing the configuration impex before resetting the configuration. You may ignore that part if you have no problem about that.

 public class CustomBackofficeCockpitConfigurationService extends BackofficeCockpitConfigurationService {
 
     private ImportService importService;
 
     @Override
     public String getConfigAsString() {
         getMutex().readLock().lock(); // TODO: Remove after SAP fix the problem in super method
         return super.getConfigAsString();
     }
 
     @Override
     public void resetToDefaults() {
         importService.importData(new ClasspathImpExResource("/impex/projectdataCockpitConfig.impex", "UTF-8"));
         super.resetToDefaults();
     }
 
     public void setImportService(ImportService importService) {
         this.importService = importService;
     }
 }

Define spring bean definition in custombackoffice-backoffice-spring.xml as follows

 <alias alias="cockpitConfigurationService" name="customCockpitConfigurationService"/>
 <bean id="customCockpitConfigurationService" parent="onPremiseCockpitConfigurationService"
       class="com.hybris.custombackoffice.config.impl.CustomBackofficeCockpitConfigurationService">
     <property name="importService" ref="importService"/>
 </bean>


Problematic code in OOTB extension is in the following screenshot

0 Likes

thanks this resolved the issue

Answers (0)