Hey Kevin, Ambari reports the knox version as 0.6.0.2.3. I’m not using any rewrite rules on the body of any of my responses as far as I know.
I have opened jira: https://issues.apache.org/jira/browse/KNOX-678 Regards, Christopher Jackson > On Mar 3, 2016, at 9:15 AM, Kevin Minder <[email protected]> wrote: > > Christopher, > This seems suspiciously like a bug, please file a jira. > https://issues.apache.org/jira/browse/KNOX > A few questions: > 1. What version of Knox? > 2. Are you rewriting this portion of the json with any rewrite rules? > I'll try and add a test to confirm one way or the other. If you could > provide (in the jira) a mock of your service (e.g. Servlet, Jersey resource, > WAR) ideally with your service definition files that would be very helpful. > Either way I'll try and add a test case to verify the current behavior. > Kevin. > > > > > On 3/2/16, 11:33 PM, "Christopher Jackson" > <[email protected]> wrote: > >> Hi All, >> >> We have a REST API sitting behind Knox and some of the endpoints in our API >> return JSON with utf-8. Specifically we are prefixing some labels with UTF-8 >> charcters to test translation capabilities. I am noticing that when we >> access these endpoints through knox our UTF-8 characters are malformed. When >> we access our API directly there is no issues. >> >> I turned up logging in knox to see if I could capture what was going wrong >> but I didn’t find much. I see that the request is made to the knox gateway, >> it’s properly forwarded to the end point behind the gateway. Looking at the >> data on the wire I see that the correct utf-8 encodings are being returned >> from our end point. I don’t see any logging for what was returned after knox >> rewrote the response. Is there anyway to enable this logging? >> >> Here is a snippet of the log showing the encoding: >> >> 2016-03-02 23:00:55,269 DEBUG http.wire (Wire.java:wire(72)) - >> http-outgoing-3 << "HTTP/1.1 200 OK[\r][\n]" >> 2016-03-02 23:00:55,269 DEBUG http.wire (Wire.java:wire(72)) - >> http-outgoing-3 << "X-Powered-By: Servlet/3.0[\r][\n]" >> 2016-03-02 23:00:55,270 DEBUG http.wire (Wire.java:wire(72)) - >> http-outgoing-3 << "Content-Type: application/json[\r][\n]" >> 2016-03-02 23:00:55,270 DEBUG http.wire (Wire.java:wire(72)) - >> http-outgoing-3 << "Content-Length: 17560[\r][\n]" >> 2016-03-02 23:00:55,270 DEBUG http.wire (Wire.java:wire(72)) - >> http-outgoing-3 << "Date: Thu, 03 Mar 2016 04:00:55 GMT[\r][\n]" >> 2016-03-02 23:00:55,270 DEBUG http.wire (Wire.java:wire(72)) - >> http-outgoing-3 << "[\r][\n]" >> 2016-03-02 23:00:55,271 DEBUG http.wire (Wire.java:wire(86)) - >> http-outgoing-3 << >> "[{"numBuckets":3,"version":1,"standardizedAttributes":[{"version":1,"cmproleId":451,"stdrole1":29,"stdrole2":0,"dvdargs":"","minwgtfreq":20,"cmprole2Id":0,"stdfuncId":292,"attributeId":331,"equistrcodeId":0,"stdfuncLabel":"[0xc3][0x9f]_Person","anonstrcodeId":4654,"cmapstrcodeId":4662,"attributeLabel":"Per >> Business…….. >> >> >> Below is a sample of how the labels are being malformed: >> >> Without Knox (expected output): >> “ß_Person" >> >> Through Knox: >> "Ã_Person” >> >> ------------- >> >> LATIN SMALL LETTER SHARP S >> "\u00DF" >> >> is becoming >> >> LATIN CAPITAL LETTER A WITH TILDE >> "\u00C3" >> >> Any thoughts on how I might resolve this? Or best way to troubleshoot this >> further? Let me know if you require more information about my knox setup and >> rewrite rules. >> >> Regards, >> >> Christopher Jackson
