我们在我们的项目中使用了Drools Guvnor,我们使用rest api来检索软件包/资产版本。一切工作正常,直到我们尝试使用波兰字符,如“ł”。例如,我们有一个名为'test3'的包和一个名为“wiek na podstawie PESEL - przedział3”的资产(规则)(名字本身并不重要,重要的是这个“ł”在最后一个词中)。检索的全包休息XML文件中,我们得到这样一个片段:从的Guvnor API的具体错字REST API无法正确识别波兰语字符?
<assets>
http://localhost:8080/drools-guvnor/rest/packages/test3/asset/wiek%20na%20podstawie%20PESEL%20-%20przedział%203
</assets>
Asside(应该是/ TEST3/资产,不/ TEST3/资产)这个环节没有按不工作 - 浏览器会自动将“ł”转换为UTF-8等效的“%C5%82”,并抛出一个错误代码,看起来该页面不被REST识别(不正确的资产名称)。 “”的工作正常,因为“%20”,问题似乎与16b字符。
有没有解决这个问题的方法?
这被记录为浏览器的正确行为。显然服务器端配置不正确。 – bmargulies
我想,浏览器会自动将任何网址中的“%C5%82”转换为“ł”,并且我还读取了Guvnor REST api仅配置为UTF-8字符集。但是,这仍然给我们留下了使用标准方法无法使用Guvnor REST API找到的Drools资产。我的意思是,有一个解决方法来检索这些资产,或者为Guvnor禁止名称上的16b字符的方式? – r3mbol
我知道Unicode,但我不能帮你用Drools。在那里有一个编码设置,我不得不猜测。 – bmargulies