Hi, This is the similar issue we were facing when we tried implementing grafana with knox, it is encoded twice in grafana as well, I tried using “PassAllHeadersNoEncodingDispatch” But it didnt worked for me. We will have to write a custom dispatch class.
Regards Dhruv On Thu, 26 Jul 2018 at 11:51 PM, Sandeep Moré <moresand...@gmail.com> wrote: > That's weird, if Knox is not picking up the custom dispatch and picking up > the XML than are you getting a ClassNotFoundException ? > > You can try putting the jar file under the lib directory and see if it > works, I should work given all the other jars are found there. There is > also a "PassAllHeadersNoEncodingDispatch" dispatch that you can try to > use, I believe 0.12.0 has it, that way you don't have to write custom > dispatch. > > Best, > Sandeep > > On Thu, Jul 26, 2018 at 2:11 PM David Morin <morin.david....@gmail.com> > wrote: > >> Thanks Sandeep >> You're right. I have to delete the directory from deployments and restart >> knox. >> In fact my Xml files are well taken into account. >> But my problem is more related to the fact that I face to the double >> urlencode and my custom dispatch class seems to be ignored. >> >> >> Le jeu. 26 juil. 2018 à 19:59, Sandeep Moré <moresand...@gmail.com> a >> écrit : >> >>> Hello David, >>> >>> This should have worked, if you turn the debug log on you can see what >>> dispatch Knox is trying to use. >>> Also, if the changes are in service.xml then we need to touch the >>> topology file so that Knox reloads it, I am thinking this could be an >>> issue. >>> If it still does not work, try clearing the deployments dir and >>> restarting Knox. >>> >>> Best, >>> Sandeep >>> >>> On Thu, Jul 26, 2018 at 12:25 PM David Morin <morin.david....@gmail.com> >>> wrote: >>> >>>> Hello, >>>> >>>> I've just read in detail the Knox dev guide. First of all, congrats ! >>>> Great job for the doc ! >>>> But I face to an issue with logsearch on my HDP cluster. >>>> This is a HDP 2.6.5 with Knox 0.12.0 >>>> I've created some XML files. These files are in PJs. >>>> But I face to some 403 requests. In fact, some urls have been >>>> "urlencoded" twice: >>>> >>>> Rewrote URL: >>>> >>>> http://XXX:80/gateway/default/logsearch/api/v1/service/logs/histogram?page=0&pageSize=999999999&startIndex=0&q= >>>> **%3A**... >>>> direction: IN >>>> via implicit rule: LOGSEARCH/logsearch/inbound >>>> to URL: >>>> http://XXX:61888/api/v1/service/logs/histogram?q=**%253A** >>>> &startIndex=0... >>>> >>>> Thus, we've got the string "q=%3A" replaced by "q=%253A" >>>> >>>> How can I resolve this issue ? >>>> I've written a custom dispatch class and reference it in the >>>> service.xml but my class seems to be ignored. >>>> >>>> <dispatch >>>> classname="org.apache.hadoop.gateway.logsearch.LogsearchDispatch"/> >>>> >>>> I've put my Jar that contains this class in the ext directory. Thus, it >>>> should be in the classpath. >>>> >>>> Thanks in advance >>>> Regards, >>>> David >>>> >>>>