Package nablarch.core.validation.ee
Annotation Type SystemChar
@Target({METHOD,FIELD,ANNOTATION_TYPE,CONSTRUCTOR,PARAMETER})
@Retention(RUNTIME)
@Documented
@Constraint(validatedBy=SystemCharValidator.class)
@Published
public @interface SystemChar
システム許容文字で構成された文字列であることを表わすアノテーション。
許容文字集合 "全角文字" を次のように定義する。
許容文字集合の定義方法は、範囲指定やリテラル指定などいくつかあるので、詳細はnablarch.core.validation.validator.unicode
パッケージのjavadocを参照。
<component name="全角文字" class="nablarch.core.validation.validator.unicode.RangedCharsetDef">
<!-- 省略 -->
</component>
上で定義した許容文字集合 "全角文字" のバリデーションを行うドメインを次のように定義する。
このドメイン定義を使用して、バリデーションを行う設定についてはpublic class SampleDomain
{@Length(max = 10)
@SystemChar(charsetDef="全角文字") String name;
}
Domain
のjavadocを参照。
このバリデーションでは、デフォルトではサロゲートペアを許容しない。
(例えLiteralCharsetDef
で明示的にサロゲートペアの文字を定義していても許容しない)
サロゲートペアを許容する場合は次のようにコンポーネント設定ファイルにSystemCharConfig
を設定する必要がある。
<component name="ee.SystemCharConfig" class="nablarch.core.validation.ee.SystemCharConfig">
<property name="allowSurrogatePair" value="true"/>
</component>
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic @interface
複数指定用のアノテーションstatic class
システム許容文字のバリデーションを行うConstraintValidator
実装クラス。 -
Optional Element Summary
-
Element Details
-
groups
Class<?>[] groupsグループ- Default:
- {}
-
message
String messageメッセージ- Default:
- "{nablarch.core.validation.ee.SystemChar.message}"
-
payload
Class<? extends jakarta.validation.Payload>[] payloadpayload- Default:
- {}
-
charsetDef
String charsetDef許容文字集合定義の名称コンポーネントに定義された
CharsetDef
の名前を指定する。- Default:
- ""
-
allowLineSeparator
boolean allowLineSeparator改行コードを許容するかどうか。 デフォルトはfalse
(許容しない)。- Default:
- false
-