Pourquoi la forme préfixe d'id dans le h:message de sortie?

Je suis en train d'essayer de validation simple à l'aide de required="true"

    <h:form>
        <h:messages globalOnly="true"/>
        <h:panelGrid>
            <h:panelGrid columns="3">
                <f:facet name="header">
                    Login Application Sample
                </f:facet>

                <h:outputLabel for="UserId" value="User Id" />
                <h:inputText id="UserId" value="#{userBean.userId}" required="true" />
                <h:message for="UserId"/>

                <h:outputLabel for="Password" value="Password" />
                <h:inputSecret id="Password" value="#{userBean.password}" required="true" />
                <h:message for="Password" />

                <f:facet name="footer">
                    <h:commandButton value="Login" action="#{userBean.login}"/>
                    <h:commandButton type="reset" value="Reset"/>
                </f:facet>
            </h:panelGrid>
        </h:panelGrid>
    </h:form>

Laissant le champs est vide, et puis clickin sur le bouton de connexion, ces messages d'erreur s'affichent sur le côté droit de chaque champ :

j_idt7:UserId: Erreur de Validation: une Valeur est requise.
j_idt7:Mot de passe: Erreur de Validation: une Valeur est requise.

C'est ce à quoi je m'attendais, mais je ne veux pas afficher le formulaire préfixe d'id de " j_idt7:'. J'ai lu le livre des exemples, ils n'ont pas de sortie de la forme préfixe d'id. Ce que je veux est :

UserId: Erreur de Validation: une Valeur est requise.
Mot de passe: Erreur de Validation: une Valeur est requise.

Que dois-je faire pour ignorer l'affichage du formulaire préfixe d'id dans le volet des messages spécifiques ?

Je suis en train de tester JSF 2 dans glassfish v3.

Merci à tous pour les suggestions, à l'aide de prependId permettrait de résoudre mon problème. Mais je remarque que substituant les messages de propriétés pour l'entrée requis : "javax.des visages.composante.UIInput.REQUIS={0}: Erreur de Validation: une Valeur est requise." l'habitude de résoudre le problème, puisque {0}'s la valeur est j_idt7:UserId dans mon cas. Donc, soit j'ai donné un id significatif dans la forme, ou utilisez le prependId solution. Merci!!!!
Désolé, changer mon approche de la nouvelle suggestion de l'utilisation de l'attribut label. De cette façon, mes messages d'erreur ont conviviale nom affiché dans les messages d'erreur à la place du champ id.
Un peu en retard: Vous pouvez maintenant utiliser requiredMessage à cette fin.

OriginalL'auteur bertie | 2010-12-08