Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6637299
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 25, 20262026-05-25T23:17:47+00:00 2026-05-25T23:17:47+00:00

I am using Hibernate Validation annotations in my JSF managed bean. When I use

  • 0

I am using Hibernate Validation annotations in my JSF managed bean. When I use @NotNull, @NotBlank or @NotEmpty they doesn’t seem to be triggered in any way.

@NotBlank(message = "{name.required}")
public String name;

View:

<h:outputLabel value="Name:" /> 
<h:inputText id="name" value="#{person.name}" size="20" />
<h:message for="name" style="color:red" />

How is this caused and how can I solve it?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-25T23:17:48+00:00Added an answer on May 25, 2026 at 11:17 pm

    Introduction

    Since you didn’t give any feedback on my comment with the question what container you’re using, I peeked around in your question history to learn what containers you’re all using. As far I found only Tomcat. So I’ll for this answer assume that you’re indeed using Tomcat as I initially guessed while posting the comment.

    Make sure you install all JARs

    Tomcat does not ship with any JSR303 Bean Validation API/implementation out the box. You need to download and install it yourself. That you got those annotations to compile means that you’ve correctly dropped the hibernate-validator.jar file (naming may differ per version) in /WEB-INF/lib folder of your webapp. That those annotations in turn does not seem to work in any way can only mean that you didn’t read the readme.txt and/or forgot to add the JARs from the /lib/required folder of the Hibernate Validator library zip/tgz file: slf4j-api.jar and validation-api.jar. The last one is mandatory in order to get the annotations to actually work. So, to get Hibernate Validator to work in Tomcat, you need the following JARs in webapp’s /WEB-INF/lib:

    • validation-api.jar (contains the abstract API and the annotation scanner)
    • hibernate-validator.jar (contains the concrete implementation)
    • slf4j-api.jar (just to get its logger to work as well)

    This way @NotBlank and @NotEmpty must work. The @NotNull deserves special attention; empty input fields are namely by default received as empty strings from the client (webbrowser) due to the nature of HTTP request parameters. Empty strings are not the same as null, so the @NotNull will by default never kick in. JSF is however configureable to interpret them as null by just adding the following context parameter to web.xml:

    <context-param>
        <param-name>javax.faces.INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL</param-name>
        <param-value>true</param-value>
    </context-param>
    

    This way the @NotNull must work as well.

    BV works but only empty fields not

    If it still doesn’t work (i.e. none of the 3 annotations work, but others like @Size(min=5) for a minimum length of 5 works fine), then chances are big that you’ve the following context parameter in web.xml as well:

    <context-param>
        <param-name>javax.faces.VALIDATE_EMPTY_FIELDS</param-name>
        <param-value>false</param-value>
    </context-param>
    

    You should then remove it (it defaults to auto, i.e. only when JSR303 Bean Validation API is found in runtime classpath) or to set it to true.

    BV does not work at all

    When actually nothing of BV works, also not @Size, @Pattern, etc, then you should verify if you do not have the following in your form:

    <f:validateBean disabled="true" />
    

    You should then remove it (it will just by default kick in) or to set disabled="false".

    Make sure you use most recent Mojarra

    When BV still doesn’t work, then verify if you’re not using an old Mojarra version between 2.2.3 and 2.2.6. Those versions had a classloading delegate bug causing Bean Validation on Tomcat and clones to be completely invisible. This is reported as Mojarra issue 3183 and fixed in Mojarra 2.2.7.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I am using JSR 303 Bean validation in my JSF 2.0 web application and
i am using hibernate validation (4.2.0 Final) with JSF 2 and Spring and here's
I'm using JPA 2.0/Hibernate validation to validate my models. I now have a situation
I'm using spring based validation in combination with hibernate validator enabled by the following
I have an app using Spring, JPA (Hibernate) and the Java validation framework (Hibernate
i am using hibernate validation annotation framework to validate my domain classes and validating
I am using Hibernate validator for form validation in my web-app. I am using
I'm using hibernate validator framework with Spring. A class implementing the Spring Validator validates
I'm using Hibernate Validator 4.0.2, Spring 3.0 and Hibernate 3.3.2 (which, as I understand
Using hibernate, how can I persist a class with a List<String> field? Consider the

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.