Proxying a REST endpoint using HttpRouter in JBoss ESB causes the response received in wrong encoded format

Solution Verified - Updated -

Issue

  • The requirement is to proxy a REST endpoint URL using HttpRouter action in JBoss ESB and capture the response received from the endpoint and display it to the browser from where the request message is sent to the ESB application. However there seems to be something wrong with the encoding in the HTTP-Response received via HttpRouter action.
  • For example ä is displayed instead of ä or ü is displayed instead of ü.
  • If the REST endpoint is sent with the same request directly then everything works fine. The problem only occurs
    if user makes a HTTP Request through HttpRouter of the ESB application.
  • The issue also persists if user takes help of ESB's HttpResponse API [1] to set the properties ContentType and Encoding manually for the outgoing HTTP Response messages (which the ESB service is delivering to the client) , by implementing the suggested code in a custom ESB action class in the action pipeline.
  • How to solve this issue?

[1] HttpResponse

Environment

  • Red Hat JBoss SOA Platform (SOA-P)
    • 5.x

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.

Current Customers and Partners

Log in for full access

Log In