The situation is that I'm running a local DXA webapp in Eclipse that should communicate with the CD server so I can test a website. The problem is that I can't get past the HTTP status code of 500 (Internal Server Error).

I know that the webapp runs successfully on the server-side because I can browse the site on my PC using the server's domain/IP. So, in my understanding, the issue is that the locally-hosted webapp is unable to get the data it needs to function or unable to communicate with one/more of the SDL microservices. I have allowed the discovery service's port on the server through the firewall.

Frameworks: SDL Web 8.5, DXA 2.0 Java

Server: Apache Tomcat 8.5.34

When trying to run the webapp locally I am getting the below exception for all requests.

SEVERE: Servlet.service() for servlet [org.springframework.web.servlet.DispatcherServlet] in context with path [] threw exception
com.sdl.odata.client.api.exception.ODataClientRuntimeException: Unable to perform action
    at com.sdl.odata.client.DefaultODataClient.performAction(
    at com.sdl.web.content.client.impl.ContentClient.lambda$performAction$7(
    at com.sdl.web.content.client.impl.ClientRequestRetrySupporter$RetryBlock.execute(
    at com.sdl.web.content.client.impl.ClientRequestRetrySupporter.runWithRetry(
    at com.sdl.web.content.client.impl.ContentClient.performAction(
    at com.sdl.web.ambient.client.AmbientClientFilter.performADFAction(
    at com.sdl.web.ambient.client.AmbientClientFilter.processStartEvents(
    at com.tridion.ambientdata.web.AbstractAmbientDataServletFilter.doFilter(
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(
    at org.apache.catalina.core.StandardWrapperValve.invoke(
    at org.apache.catalina.core.StandardContextValve.invoke(
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(
    at org.apache.catalina.core.StandardHostValve.invoke(
    at org.apache.catalina.valves.ErrorReportValve.invoke(
    at org.apache.catalina.valves.AbstractAccessLogValve.invoke(
    at org.apache.catalina.core.StandardEngineValve.invoke(
    at org.apache.catalina.connector.CoyoteAdapter.service(
    at org.apache.coyote.http11.Http11Processor.service(
    at org.apache.coyote.AbstractProcessorLight.process(
    at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(
    at java.util.concurrent.ThreadPoolExecutor.runWorker(
    at java.util.concurrent.ThreadPoolExecutor$
    at org.apache.tomcat.util.threads.TaskThread$
  • 1
    Are the other service ports open too? Discovery will only send back the connection details for the other services, it will not proxy the connections. – Nuno Linhares Nov 10 at 11:17
  • Maybe helpful to debug java DXA setup in eclipse… – Velmurugan Nov 13 at 10:38

Your Answer


By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Browse other questions tagged or ask your own question.