I see this question already being discussed and answered in the community also refering to this known and fixed issue: https://github.com/sdl/dxa-web-application-java/issues/32

However we are currently running DXA 1.7 (Java) and also 2.0 CTP (Java) and are still experiencing this exact same special characters issue.

On this screenshot you can see two images, the first is with & in file name, the second is not: enter image description here

The web application is the DXA 2.0 CTP Example ROOT.war directly from the installation package without modifications. We have the same issue with our own modified webapp too.

Our developers are discussing if they should add their own Servlet Filter to fix this issue but i hoped this issue would be fixed by now and i am just missing some part, maybe in CMS config.

Could you give some clarification on this issue please?

Some additional logs if that helps:

DEBUG c.s.odata.client.DefaultODataClient - Getting entity for query ODataClientQuery[GetPublicationMappingsFunctionImport(Url='http://dxa20.example/en/images/T&I')]
DEBUG c.s.o.c.caller.BasicEndpointCaller - Preparing the call endpoint for given url:'http://dxa20.example/en/images/T&I')
DEBUG c.s.o.c.caller.BasicEndpointCaller - Request ended with 200 status code.
DEBUG c.s.w.c.i.i.StaticContentInterceptor - Handling static content: /en/images/T&I Bild ohne Ãœberschrift_tcm1209-372341_w1024_n.png
DEBUG c.s.w.a.d.DynamicMetaRetrieverImpl - Searching for binaryMeta for url='http://dxa20.example/en/images/T&I%20Bild%20ohne%20%C3%9Cberschrift_tcm1209-372341.png'.
DEBUG c.s.web.content.client.ContentClient - ForwardedClaims is configured. Will forward following claims: [taf:session:preview:preview_session]
DEBUG c.s.odata.client.DefaultODataClient - Getting entity for query ODataClientQuery[GetDynamicMetaFunctionImport(Url='http%253A%252F%252Fdxa20.example%252Fen%252Fimages%252FT%2526I%252520Bild%252520ohne%252520%2525C3%25259Cberschrift_tcm1209-372341.png',ItemType='BinaryMeta')]
DEBUG c.s.o.c.caller.BasicEndpointCaller - Preparing the call endpoint for given url:'http%253A%252F%252Fdxa20.example%252Fen%252Fimages%252FT%2526I%252520Bild%252520ohne%252520%2525C3%25259Cberschrift_tcm1209-372341.png',ItemType='BinaryMeta')
DEBUG c.s.o.c.caller.BasicEndpointCaller - Request ended with 200 status code.
DEBUG c.s.o.c.m.AtomEntityUnmarshaller - Unmarshalling entity for query: ODataClientQuery[GetDynamicMetaFunctionImport(Url='http%253A%252F%252Fdxa20.example%252Fen%252Fimages%252FT%2526I%252520Bild%252520ohne%252520%2525C3%25259Cberschrift_tcm1209-372341.png',ItemType='BinaryMeta')]
DEBUG c.s.w.a.d.DynamicMetaRetrieverImpl - Could not find Binary metadata by url: http://dxa20.example/en/images/T&I%20Bild%20ohne%20%C3%9Cberschrift_tcm1209-372341.png
DEBUG c.s.w.c.i.i.StaticContentInterceptor - Static resource not found in static content provider. Fallback to webapp content...
DEBUG o.s.web.servlet.DispatcherServlet - Successfully completed request
  • 1
    It appears there was a change in Web 8.5 related to the support of .NET 4.5 (vs. .NET 4.0 on 2013), which causes the .NET method Uri.EscapeDataString(urlString) to change behavior (see also docs.sdl.com/LiveContent/content/en-US/SDL%20Web-v5/…). Customer Support has the following information on this : gateway.sdl.com/…, I'm looking into the issue and if it is requiring a change in DXA or somewhere else. Jan 30, 2018 at 12:13

1 Answer 1


So I got the solution for this big problem.

Apparently this is a bug in content-common-8.5.0-1013.jar included in the Web 8.5 installation package from SDL. The jar is included in the Preview Service and the Session Enabled Content Service. We received a patched jar file from SDL called content-common-8.5.0-1013.jar. We needed to replace the old version with the new one for both services and this resolved the issue for us.

I am pretty sure this fix will be included in a near future hotfix or service pack.


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.