Jasper レポート定義式での Java クラスの使用許可
セキュリティ上の理由から、Jasper レポートの <テキストフィールドの定義式> などのレポート定義式では、Java クラスの使用が制限されています。
これらの定義式で特定の Java クラスの使用を許可するには、次のコマンドを実行して、プロパティ net.sf.jasperreports.report.class.whitelist.custom.{arbitary_name}jasperreports.properties ファイルに追加する必要があります。
xconfmanager -s net.sf.jasperreports.report.class.whitelist.custom.<{任意の名前}>=
"<コンマ区切りの Java クラス>" -t codebase/jasperreports.properties -p
ここで、
<{任意の名前}> - 特定の値や定義済みの命名規則に縛られない、任意の名前を指定できます。
<コンマ区切りの Java クラス> - レポート定義式での使用を許可するクラスのリストを定義します。コンマ区切りリストを使用して、複数の Java クラス名を追加できます。Java クラス名には、ワイルドカードを使用できます。詳細については、ワイルドカードの使用を参照してください。
ワイルドカードの使用
ワイルドカード文字としてアスタリスク (*) を使用すると、すべてのクラス/パッケージ名またはクラス/パッケージ名の一部が含まれます。次に例を示します。
net.sf.jasperreports. * を指定すると、サブパッケージを除く、net.sf.jasperreports パッケージ内のすべてのクラスが含まれます。
net.sf.jasperreports.*Enum を指定すると、net.sf.jasperreports パッケージ内の末尾が Enum のすべてのクラスが含まれます。
ワイルドカード文字として二重アスタリスク (**) を使用すると、すべての完全修飾クラス名または完全修飾クラス名の一部が含まれます。次に例を示します。
net.sf.jasperreports.** を指定すると、net.sf.jasperreports パッケージまたはそのサブパッケージ内のすべてのクラスが含まれます。
net.sf.jasperreports.**Enum を指定すると、net.sf.jasperreports パッケージまたはそのサブパッケージ内の末尾が Enum のすべてのクラスが含まれます。
(**) にはすべてのクラスが含まれます。
これは役に立ちましたか?