How to get PathInfoTokens in http binding on Fuse 6.2.1

Solution In Progress - Updated -

Issue

We are using http binding in a service, registered to the context /MyService. The service is therefore accessible at http://host:port/MyService.

    <sca:service name="MyService" promote="MyServiceBean/MService">
      <sca:interface.java interface="my.custom.SOAService"/>
      <http:binding.http name="http1">
        <sy:operationSelector operationName="process"/>
        <http:contextMapper class="my.custom.service.impl.MyServiceHttpContextMapper"/>
        <http:contextPath>MyService</http:contextPath>
      </http:binding.http>
    </sca:service>

The binding is working fine but we have the need to pass some PathInfoTokens in the requested URL. We are supposed to receive calls like the following one:
http://host:port/MyService/some/path

The call is being correctly forwarded to our service by the HTTPBinding but we need to access the path information (/some/path in the example) which should make our service behave differently depending on the value being passed there. We tried to use an HTTPContextMapper but the information is not directly accessible through the HttpBinginData, but there is no API to get that information in HTTPBindingData. HttpBindingData has a RequestInformation and the RequestInformation has the desired PathInfoTokens.

How can we access the PathInfoTokens in the HTTPRequest, and make them get to our bean implementation?

Environment

  • Red Hat JBoss Fuse
    • 6.2.1

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content