Constraint Custom Messages

CBValidation provides default English error messages for all constraints, but you can customize these messages to match your application's tone, language, or specific requirements. Custom messages give you complete control over validation error presentation.

Message Convention

To create a custom message for any constraint, follow this simple pattern:

{constraintName}Message = "Your custom error message"

The constraint name should match exactly (case-sensitive) with the word "Message" appended.

Basic Examples

Single Constraint Messages

username = {
    required = true,
    requiredMessage = "Please enter a username"
}

Multiple Constraint Messages

username = {
    required = true,
    requiredMessage = "Username is required for your account",
    size = "3..20",
    sizeMessage = "Username must be 3-20 characters long",
    regex = "^[a-zA-Z0-9_]+$",
    regexMessage = "Username can only contain letters, numbers, and underscores"
}

All Constraint Message Options

Here are the message options for all available constraints:

Core Constraints

Numeric Constraints

String Constraints

Comparison Constraints

Date Constraints

Advanced Constraints

Dynamic Message Replacements

Custom messages support dynamic replacement variables that make your messages more informative:

User-Friendly Message Examples

Registration Form

Profile Update Form

Best Practices

1. Be Specific and Helpful

2. Use Natural Language

3. Provide Guidance

4. Use Replacement Variables

i18n Integration

Custom messages work seamlessly with i18n. You can define messages in resource bundles and still use the same constraint message pattern:

This approach allows you to maintain consistent, localized error messages across your entire application while leveraging CBValidation's powerful constraint system.

Last updated

Was this helpful?