4

änamed-entity-way ではなくunicode-way で JSF に特殊文字を強制的にエスケープさせることは可能äですか?

背景: 一部の古いモバイル デバイス (Android 2.3.4 を搭載した HTC-Desire など) は、名前付きエンティティを含むページの表示を拒否します。

このページには次のエラーが含まれています... エンティティ 'auml' が定義されていません。

ページには HTML5-Doctypeがあり、仕様によれば 有効な事前定義された character-referenceです。これはブラウザのバグだと思いますが、ここでは役に立ちません。auml

私が試したのは、特殊文字をユニコード表現に置き換えることです。しかし、ビューにäまたはを配置するäと、JSF は をレンダリングしますä。エンティティ マッピングを doctype に配置すると (HTML5 doctype ではこれを行うべきではないことはわかっています)、動作が非常に奇妙になります。

<!DOCTYPE html [
    <!ENTITY auml "&#228;">
    <!ENTITY mdash "&#8212;">
    ...
]>

これにより、マッピングなしで正しい HTML5 doctype が生成されます。ただし、 a&mdash;はに置き換えられますが&#8212;、 an&auml;は置き換えられません。

誰かに説明がありますか、それともユニコードエスケープされたエンティティを常にレンダリングするように JSF を構成する可能性はありますか?

4

1 に答える 1