2

We are trying to deploy DXA 2.0 CTP 2 Java version on Ubuntu server. After deploying the application on Tomcat 8 we are getting this server error

[http-nio-8080-exec-6] ERROR c.s.w.c.controller.PageController - Exception while processing request for: /
java.lang.IllegalArgumentException: Cannot find cache named 'model-service' for CacheResultOperation[CacheMethodDetails[method=public java.lang.Object com.sdl.dxa.tridion.modelservice.ModelServiceClient.getForType(java.lang.String,java.lang.Class,java.lang.Object[]) throws com.sdl.webapp.common.exceptions.DxaItemNotFoundException, [email protected](cacheKeyGenerator=interface javax.cache.annotation.CacheKeyGenerator, cacheName=model-service, cachedExceptions=[class com.sdl.webapp.common.exceptions.DxaItemNotFoundException, class com.sdl.webapp.common.controller.exception.BadRequestException], skipGet=false, cacheResolverFactory=interface javax.cache.annotation.CacheResolverFactory, exceptionCacheName=failures, nonCachedExceptions=[]), cacheName='model-service']]
    at org.springframework.cache.interceptor.AbstractCacheResolver.resolveCaches(AbstractCacheResolver.java:81)
    at org.springframework.cache.jcache.interceptor.AbstractCacheInterceptor.resolveCache(AbstractCacheInterceptor.java:61)
    at org.springframework.cache.jcache.interceptor.CacheResultInterceptor.invoke(CacheResultInterceptor.java:50)
    at org.springframework.cache.jcache.interceptor.JCacheAspectSupport.execute(JCacheAspectSupport.java:131)
    at org.springframework.cache.jcache.interceptor.JCacheAspectSupport.execute(JCacheAspectSupport.java:102)
    at org.springframework.cache.jcache.interceptor.JCacheInterceptor.invoke(JCacheInterceptor.java:61)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
    at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:656)
    at com.sdl.dxa.tridion.modelservice.ModelServiceClient$$EnhancerBySpringCGLIB$$d94710a3.getForType(<generated>)
    at com.sdl.dxa.tridion.modelservice.DefaultModelService._loadPage(DefaultModelService.java:52)
    at com.sdl.dxa.tridion.modelservice.DefaultModelService.loadPageModel(DefaultModelService.java:39)
    at com.sdl.dxa.tridion.mapping.impl.DefaultContentProvider._loadPage(DefaultContentProvider.java:48)
    at com.sdl.webapp.tridion.mapping.AbstractDefaultContentProvider.getPageModel(AbstractDefaultContentProvider.java:82)
    at com.sdl.webapp.common.controller.PageController.getPageModel(PageController.java:292)
    at com.sdl.webapp.common.controller.PageController.handleGetPage(PageController.java:121)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)
    at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:133)
    at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:116)
    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:827)
    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:738)
    at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)
    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
    at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:622)
    at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
    at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:522)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1095)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:672)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1504)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1460)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    at java.lang.Thread.run(Thread.java:748)

All SDL micro services are up and running.

Edit

I have followed below steps to generate deployment package (war file)

  1. Generate project using mvn archetype:generate command.
  2. Setup project on my Local PC (Windows 7) using Eclipse and Tomcat 8.
  3. Run the project on local Tomcat and it worked fine.
  4. Run mvn clean package cmd on project directory and generate production build (war file) and deploy on Linux server Tomcat but this time I get server error.
6
  • Have you setup the DXA Model Service following the documentation? Please edit the question and provide a bit more detail on what was done and tried etc. Commented Dec 21, 2017 at 14:02
  • @BartKoopman please check the edits Commented Dec 21, 2017 at 21:31
  • Seeing point #3 I'm guessing you have setup the DXA Model Service (docs.sdl.com/LiveContent/content/en-US/SDL%20DXA-v9/…) on the CIS server, so then I'm wondering if the Tomcat on your Linux server has the same version requirements and Java version installed etc. But other than that I don't have much clues. Commented Dec 22, 2017 at 8:49
  • @BartKoopman i m using Apache Tomcat/8.0.32 and JAVA 8 Commented Dec 24, 2017 at 7:42
  • Similar question on community.sdl.com/product-groups/sdl-tridion-dx/tridion-sites/…
    – Jan H
    Commented Jan 3, 2018 at 13:04

2 Answers 2

1

After upgrading to DXA 2.0 the issue get resolved

0

Make sure that your cache config has all the caches configured like in the following file https://github.com/sdl/dxa-web-application-java/blob/DXA_2.0_CTP_2_Release/dxa-webapp/src/main/resources/ehcache-dxa.xml

For CTP2 release full configuration was still needed, for the future 2.0 release application will be smarter and automatically resolve that kind of issues.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.