2

We are getting error "unable to load the DynamicContent Module" while browsing default DXA 2.2 website. We have published the minimum content required to browse the website. Here is the website log showing the complete message:

2020-05-26 10:06:11,762 [23] WARN  - Errors were found during the last GraphQL request.
2020-05-26 10:06:11,770 [23] ERROR - Sdl.Tridion.Api.GraphQL.Client.Exceptions.GraphQLClientException: Exception of type 'Sdl.Tridion.Api.GraphQL.Client.Exceptions.GraphQLClientException' was thrown.
GraphQLError : Exception while fetching data (/publicationMapping) : Fatal error, unable to load the DynamicContent Module at Line : 2 Column :2

   at Sdl.Tridion.Api.GraphQL.Client.GraphQLClient.HandleErrors(IGraphQLResponse response)
   at Sdl.Tridion.Api.GraphQL.Client.GraphQLClient.Execute[T](IGraphQLRequest graphQLrequest)
   at Sdl.Tridion.Api.Client.ApiClient.GetPublicationMapping(ContentNamespace ns, String url)
   at Sdl.Web.Tridion.Caching.CacheProvider.CreateCacheValue[T](UInt32 hash, String key, String region, Func`1 addFunction, IEnumerable`1 dependencies) in C:\Rancher\workspace\stash\develop\net\build_webapp\Sdl.Web.Tridion\Providers\Caching\CacheProvider.cs:line 133
   at Sdl.Web.Tridion.Caching.CacheProvider.GetOrAdd[T](String key, String region, Func`1 addFunction, IEnumerable`1 dependencies) in C:\Rancher\workspace\stash\develop\net\build_webapp\Sdl.Web.Tridion\Providers\Caching\CacheProvider.cs:line 86
   at Sdl.Web.Tridion.GraphQLLocalizationResolver.ResolveLocalization(Uri url) in C:\Rancher\workspace\stash\develop\net\build_webapp\Sdl.Web.Tridion\Resolvers\Localization\GraphQLLocalizationResolver.cs:line 34
   at Sdl.Web.Mvc.Configuration.WebRequestContext.get_Localization() in C:\Rancher\workspace\stash\develop\net\build_webapp\Sdl.Web.Mvc\Configuration\WebRequestContext.cs:line 28
   at Sdl.Web.Mvc.Statics.StaticContentModule.BeginRequest(Object sender, EventArgs e) in C:\Rancher\workspace\stash\develop\net\build_webapp\Sdl.Web.Mvc\Statics\StaticContentModule.cs:line 58
Sdl.Tridion.Api.GraphQL.Client.Exceptions.GraphQLClientException: Exception of type 'Sdl.Tridion.Api.GraphQL.Client.Exceptions.GraphQLClientException' was thrown.
GraphQLError : Exception while fetching data (/publicationMapping) : Fatal error, unable to load the DynamicContent Module at Line : 2 Column :2

   at Sdl.Tridion.Api.GraphQL.Client.GraphQLClient.HandleErrors(IGraphQLResponse response)
   at Sdl.Tridion.Api.GraphQL.Client.GraphQLClient.Execute[T](IGraphQLRequest graphQLrequest)
   at Sdl.Tridion.Api.Client.ApiClient.GetPublicationMapping(ContentNamespace ns, String url)
   at Sdl.Web.Tridion.Caching.CacheProvider.CreateCacheValue[T](UInt32 hash, String key, String region, Func`1 addFunction, IEnumerable`1 dependencies) in C:\Rancher\workspace\stash\develop\net\build_webapp\Sdl.Web.Tridion\Providers\Caching\CacheProvider.cs:line 133
   at Sdl.Web.Tridion.Caching.CacheProvider.GetOrAdd[T](String key, String region, Func`1 addFunction, IEnumerable`1 dependencies) in C:\Rancher\workspace\stash\develop\net\build_webapp\Sdl.Web.Tridion\Providers\Caching\CacheProvider.cs:line 86
   at Sdl.Web.Tridion.GraphQLLocalizationResolver.ResolveLocalization(Uri url) in C:\Rancher\workspace\stash\develop\net\build_webapp\Sdl.Web.Tridion\Resolvers\Localization\GraphQLLocalizationResolver.cs:line 34
   at Sdl.Web.Mvc.Configuration.WebRequestContext.get_Localization() in C:\Rancher\workspace\stash\develop\net\build_webapp\Sdl.Web.Mvc\Configuration\WebRequestContext.cs:line 28
   at Sdl.Web.Mvc.Statics.StaticContentModule.BeginRequest(Object sender, EventArgs e) in C:\Rancher\workspace\stash\develop\net\build_webapp\Sdl.Web.Mvc\Statics\StaticContentModule.cs:line 58

I can see the same error message in Content service log as well, so I believe error is indeed at the Content service end. Here is the error message I can see in Content service log:

ERROR [http-nio2-9081-exec-7] DynamicContent - Fatal error, unable to load the DynamicContent Module
com.tridion.configuration.ConfigurationException: com.sdl.delivery.configuration.ConfigurationException: Could not locate the root of the configuration
    at com.tridion.dynamiccontent.DynamicContent.<init>(DynamicContent.java:120)
    at com.tridion.dynamiccontent.DynamicContent.getInstance(DynamicContent.java:89)
    at com.tridion.dynamiccontent.DynamicMappingsRetriever.getPublicationMapping(DynamicMappingsRetriever.java:57)
    at com.sdl.delivery.content.model.core.datafetcher.PublicationMappingDataFetcher.fetch(PublicationMappingDataFetcher.java:22)
    at com.sdl.delivery.content.model.core.datafetcher.PublicationMappingDataFetcher.fetch(PublicationMappingDataFetcher.java:15)
    at com.sdl.delivery.content.model.core.datafetcher.AbstractEntityDataFetcher.get(AbstractEntityDataFetcher.java:36)
    at graphql.execution.ExecutionStrategy.fetchField(ExecutionStrategy.java:258)
    at graphql.execution.ExecutionStrategy.resolveFieldWithInfo(ExecutionStrategy.java:199)
    at graphql.execution.AsyncExecutionStrategy.execute(AsyncExecutionStrategy.java:70)
    at graphql.execution.Execution.executeOperation(Execution.java:158)
    at graphql.execution.Execution.execute(Execution.java:100)
    at graphql.GraphQL.execute(GraphQL.java:554)
    at graphql.GraphQL.parseValidateAndExecute(GraphQL.java:496)
    at graphql.GraphQL.executeAsync(GraphQL.java:470)
    at graphql.GraphQL.execute(GraphQL.java:401)
    at com.sdl.delivery.content.graphql.ContentAPIGraphQLExecutor.execute(ContentAPIGraphQLExecutor.java:88)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:343)
    at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:205)
    at com.sun.proxy.$Proxy149.execute(Unknown Source)
    at com.sdl.delivery.content.controller.ContentAPIController.contentGQL(ContentAPIController.java:66)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190)
    at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138)
    at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104)
    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:892)
    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:797)
    at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1039)
    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942)
    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1005)
    at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:908)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:660)
    at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:882)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
    at org.springframework.boot.actuate.web.trace.servlet.HttpTraceFilter.doFilterInternal(HttpTraceFilter.java:88)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
    at com.sdl.web.readwrite.filter.ReadWriteFilter.doFilter(ReadWriteFilter.java:58)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
    at com.tridion.ambientdata.web.AbstractAmbientDataServletFilter.doFilter(AbstractAmbientDataServletFilter.java:298)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
    at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.filterAndRecordMetrics(WebMvcMetricsFilter.java:114)
    at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:104)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
    at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
    at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408)
    at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
    at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853)
    at org.apache.tomcat.util.net.Nio2Endpoint$SocketProcessor.doRun(Nio2Endpoint.java:1676)
    at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
    at org.apache.tomcat.util.net.AbstractEndpoint.processSocket(AbstractEndpoint.java:1087)
    at org.apache.tomcat.util.net.Nio2Endpoint$Nio2SocketWrapper$2.completed(Nio2Endpoint.java:589)
    at org.apache.tomcat.util.net.Nio2Endpoint$Nio2SocketWrapper$2.completed(Nio2Endpoint.java:567)
    at java.base/sun.nio.ch.Invoker.invokeUnchecked(Invoker.java:127)
    at java.base/sun.nio.ch.Invoker$2.run(Invoker.java:219)
    at java.base/sun.nio.ch.AsynchronousChannelGroupImpl$1.run(AsynchronousChannelGroupImpl.java:112)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: com.sdl.delivery.configuration.ConfigurationException: Could not locate the root of the configuration
    at com.sdl.web.discovery.delivery.configuration.mapper.ConfigurationResourceMapper.restoreTreeStructure(ConfigurationResourceMapper.java:101)
    at com.sdl.web.discovery.delivery.configuration.mapper.ConfigurationResourceMapper.map(ConfigurationResourceMapper.java:57)
    at com.sdl.web.discovery.delivery.configuration.ODataConfigurationProvider.doClientOperation(ODataConfigurationProvider.java:163)
    at com.sdl.web.discovery.delivery.configuration.ODataConfigurationProvider.loadFromStorageConfiguration(ODataConfigurationProvider.java:102)
    at com.sdl.web.discovery.delivery.configuration.ODataConfigurationProvider.provide(ODataConfigurationProvider.java:70)
    at com.sdl.web.discovery.delivery.configuration.ODataConfigurationProvider.provide(ODataConfigurationProvider.java:46)
    at com.sdl.web.discovery.delivery.configuration.HybridConfigurationProvider.getODataConfiguration(HybridConfigurationProvider.java:79)
    at com.sdl.web.discovery.delivery.configuration.HybridConfigurationProvider.provide(HybridConfigurationProvider.java:48)
    at com.sdl.web.discovery.delivery.configuration.HybridConfigurationProvider.provide(HybridConfigurationProvider.java:34)
    at com.sdl.web.discovery.delivery.configuration.CachingConfigurationProvider.provide(CachingConfigurationProvider.java:88)
    at com.sdl.delivery.configuration.ConfigurationLoaderImpl.load(ConfigurationLoaderImpl.java:47)
    at com.tridion.dynamiccontent.DynamicContent.loadConfiguration(DynamicContent.java:149)
    at com.tridion.dynamiccontent.DynamicContent.<init>(DynamicContent.java:107)
    ... 86 common frames omitted

I can access Content service and able to retrieve the content. Wondering if anyone face the similar issue and know the reason of this?

Update:

To further debug it I tried to get the Publication mapping using postman(http:///client/v4/content.svc/GetPublicationMappingsFunctionImport(Url='')) and I can see the similar error there as well. Wondering if there might be some issue with Topologies. Error showing in the postman:

java.lang.RuntimeException: Fatal error, unable to load the DynamicContent Module
2

2 Answers 2

2

The error shown in the logs says 'could not locate the root of the configuration'. Could this have anything to do with this (I know it's a different version, but the issue might still apply to 9.1)

https://gateway.sdl.com/CommunityKnowledge?articleName=000005260

1

you can try to delete all configuration without parent item, Only the DefaultEnvironment should have no parent.

Query for the same would be like this.

""delete from CONFIGURATION_VALUE where ITEM_ID in (select ID from CONFIGURATION_ITEM where ID not in (select LINKED_ITEM_ID from CONFIGURATION_ITEMS_LINKS) and ID != 'DefaultEnvironment') delete from CONFIGURATION_ITEM where ID in (select ID from CONFIGURATION_ITEM where ID not in (select LINKED_ITEM_ID from CONFIGURATION_ITEMS_LINKS) and ID != 'DefaultEnvironment');

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.