Различные вопросы о JSF - PullRequest
       3

Различные вопросы о JSF

1 голос
/ 09 февраля 2011

Я делаю проект JSF2.

1. У меня есть форма с некоторым флажком. Посмотрите следующий код

<ui:repeat>
<h:selectManyCheckbox value="#{wagent.selectedPra}">...
</h:selectManyCheckbox>
</ui:repeat>

Так что я использую selectManyCheckbox внутри ui: repeat, и я хочу, чтобы значение другого selectManyCheckbox указывало на одно и то же значение. Но когда форма отправлена, у меня не было всех выбранных ящиков. Как я могу это сделать?

2. У меня есть форма с некоторыми входами. В моем действии я хочу объединить некоторые PDF-файлы, остаться на той же странице, и появляется всплывающее окно с предложением загрузить объединенные файлы.

3. Все ли управляемые bean-компоненты с областью запроса создаются для каждого запроса или только если я использовал их на странице xhtml?

4. У меня есть командная ссылка для выхода. На моем действии я использую session.invalidate () и возвращаю «логин». Поэтому я возвращаюсь к входу в систему, но при проверке имени входа мой сессионный управляемый компонент не создается. Ошибка - это что-то вроде yourSessionBean - ноль. Что не так?

1 Ответ

2 голосов
/ 09 февраля 2011

1: поэтому я использую selectManyCheckbox внутри ui: repeat, и я хочу, чтобы значение другого selectManyCheckbox указывало на одно и то же значение.Но когда форма отправлена, у меня не было всех выбранных ящиков.Как я могу это сделать?

Пусть вместо этого они указывают на другое значение.В данном примере значение bean-компонента будет переопределяться каждый раз до конца цикла.В качестве примера, используйте List<List<Pra>> в бине (или что-то еще Pra означает в вашем вопросе):

<ui:repeat value="#{wagent.allSelectedPra}" var="selectedPra">
    <h:selectManyCheckbox value="#{selectedPra}">
        ...
    </h:selectManyCheckbox>
</ui:repeat>

2: у меня есть форма с некоторыми входными данными.В моем действии я хочу объединить некоторые PDF-файлы, остаться на той же странице, и появляется всплывающее окно с предложением загрузить объединенные файлы.

Как минимум необходимо сделать две вещи:

facesContext.getExternalContext().addResponseHeader("Content-Disposition", "attachment;filename=name.pdf"); // Force "Save As" dialogue.
facesContext.responseComplete(); // Prevent JSF from taking response in hands.

3: Все ли управляемые bean-объекты с областью запроса создаются для каждого запроса или только если я использовал их на странице xhtml?

Они создаются для каждого HTTP-запроса.Область, которую вы описали, применяется только к области просмотра (если я вас правильно понимаю).

4: У меня есть ссылка на команду для выхода из системы.На моем действии я использую session.invalidate () и возвращаю «логин».Поэтому я возвращаюсь к входу в систему, но при проверке имени входа мой сессионный управляемый компонент не создается.Ошибка - это что-то вроде yourSessionBean - ноль.Что не так?

Возможно, вы неправильно обращаетесь к управляемому компоненту в рамках сеанса.Вам нужно либо ввести его как @ManagedProperty, либо захватить его как Application#evaluateExpressionGet().

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