JSF - <f: selectItems> не получает значение из Бина - PullRequest
0 голосов
/ 28 апреля 2018

Я создавал очень простое WebApp с Maven, чтобы создать небольшой REST Api (при использовании JSF).

В одном из моих бинов (среди прочих методов и переменных) я создал очень простой List просто для проверки, могу ли я получить его параметры в JSF <p:selectItems>

Вот код бина:

 @ManagedBean(name="er", eager=true)
 public class ExchangeRates {
        private List<String> frase = new ArrayList<>();

            public List<String> getFrase() {
                frase.add("opcao1");
                frase.add("opcao2");
                return frase;
            }

            public void setFrase(List<String> frase) {
                this.frase = frase;
            }
/*some more code that doesn't use "frase"*/

А вот (xhtml) JSF

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://xmlns.jcp.org/jsf/core">
    <h:head>
        <title>Currency Conversion REST Api</title>
        <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
    </h:head>
    <h:body>
        <h1>Currency Conversion</h1>

        <h:form>               
            <h:outputLabel for="txtName">
                           <h:outputText value="Quantity:  " />
            </h:outputLabel>
            <h:inputText id="txtNamea" value="#{er.quantity}" />

            <br></br><br></br>

            <h:outputLabel for="currency1" value="Convert from:  "/> 
                <h:selectOneMenu id="currency1" value="#{er.currency1}" style="width:70px">
                    <f:selectItems value="#{er.frase}" />
                </h:selectOneMenu>

        </h:form> 
    </h:body>
</html>

Раскрывающийся список, созданный <f:selectItems>, должен был дать мне 2 варианта ("opcao1" и "opcao2"). Однако, когда я нажимаю на него, он действует так, как будто я не назначаю ему переменную или значения, что я могу делать неправильно?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...