Я изучаю JSF 2.2, и у меня есть небольшая проблема с поиском хорошего ответа, который я могу понять о том, как получить больше для проверки по параметру GET ,Подтвердить значение f: viewParam как один из избранных наборов допустимых значений
У меня есть файл source.xhtml, который имеет ссылку так:
<h:link value="ALTER" outcome="/main/showSqlTemplates.xhtml">
<f:param name="type" value="ALTER" />
</h:link>
и в моем destination.xhtml у меня есть код, который выглядит следующим образом:
<f:metadata>
<f:viewParam id="type" name="type" value="#{showSqlTemplateManagedBean.type}" required="true" requiredMessage="Invalid page access. Please use a link from the menu."/>
</f:metadata>
<h:message for="type" class="bold"></h:message>
<br/>TYPE is : #{showSqlTemplateManagedBean.type}
и мой боб класс выглядит так:
@ManagedBean
@RequestScoped
public class ShowSqlTemplateManagedBean {
String type = "";
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public ShowSqlTemplateManagedBean() {
}
}
как вы можете видеть, я использовал атрибут «required», чтобы убедиться, что параметр типа i по крайней мере, там, и все работает нормально, насколько это возможно. Но я хотел бы сделать больше проверки.
В частности, я хочу убедиться, что значение типа String будет только ALTER, INSERT, UPDATE или DELETE.
Это где пользовательский валидатор? Пользовательский валидатор, кажется, слишком убит за такую простую проверку проверки. Я уверен, что у меня что-то не хватает. Возможно, поместите что-то в метод PostConstruct init()?