специальные символы в правилах слюней - PullRequest
2 голосов
/ 21 декабря 2011

Я использую jBoss drools (v5.1.0) вместе с Tohu (также продукт jBoss, используемый для создания динамических вопросников). Проблема в слюнах и специальных символах, которые я хочу добавить в строку в моих правилах. Более конкретно, я хочу создать / изменить Объекты в drools, чьи определенные поля являются строками, но специальные символы, которые я вставил в эти строки, не получаются правильными! Например, этот код:

rule "UsecaseSelection"
dialect "mvel"
no-loop
    then
        Group aGroup = new Group("UsecaseSelection");
        aGroup.setLabel("Sélection du cas client");
        aGroup.setItems({
            "UsecaseSelectionQuestion",
            "UsecaseDescription"});
        insertLogical(aGroup);
end

выдаст группу с меткой: «S? Lection du cas client» (то есть специальный символ «é» не подходит)
Я сузил эту проблему кодирования до слюней, и я не знаю, есть ли решение или обходной путь, поскольку мне действительно нужны эти специальные символы в моем проекте.
Заранее спасибо за помощь, очень признателен!

Ответы [ 2 ]

1 голос
/ 21 декабря 2011

Файлы DRL в настоящее время считываются в кодировке платформы по умолчанию.Поэтому, если вы читаете файл DRL в Linux или Mac, убедитесь, что файл закодирован в UTF-8.Для окон используйте CP-1252.

Это связанная проблема.

0 голосов
/ 04 февраля 2014

Используйте верблюжий каркас и конвертер его тела:

    <camel:route id="tjtpRoute">
        <camel:from uri="direct:tjtpRoute" />
        <camel:to uri="drools:node1/tjtpKSession" />

        <!-- Since excel file is in windows Cp1252 encoding, we need to read it 
            in as such -->
        <camel:convertBodyTo type="String" charset="Cp1252" />
    </camel:route>
...