2013-11-20 7 views
0

Я создал страницу JSF 1.1. На странице у меня есть 2 текстовых поля и командная кнопка. Текстовые файлы подключены к объекту в бэкэнде, и там отображаются значения объекта thw, и пользователь может редактировать его по своему усмотрению, а когда он нажимает на кнопку, я хочу перейти к компоненту и сохранить новые значения в объект. Боб должен быть запросом, а не сеансом!JSF CommandButton action перед отправкой

<h:inputText value="myBean.PersonName"><\h:inputText> 
<h:commandButton action="myBean.saveEditName"><\h:inputText> 

backingBean:

public String saveEditName(){ 
//Go to database and save the new object 
} 

Проблема заключается в том, когда я нажимаю на кнопку, фасоль обновляется, объекты возвращается к прежним значениям, а затем действие вызывается. Почему? Как я могу выполнить действие до того, как сообщение обновит компонент? (Без использования сервлета в javascript).

Спасибо!

+1

Пожалуйста, выкладывают страницу XHTML и класс для "myBean". – 8bitjunkie

+0

@ 7SpecialGems OP использует JSF ** 1.1 **, так что, возможно, он/она работает с JSP. Но проблема заключается в том, как копировать '@ ViewScoped' в этой старой версии JSF. Когда у вас есть репутация 10 тыс. Или более, вы можете увидеть удаленный ответ, который подробно объяснил это и комментарии, где ОП просто не понимал решение или добавляло больше проблем, а работало в реальном мире. –

ответ

0

использование Явных Bean декларации, как указано ниже:

<managed-bean> 
<managed-bean-name>someName</managed-bean-name> 
<managed-bean-class> 
somePackage.SomeClass 
</managed-bean-class> 
<managed-bean-scope>request</managed-bean-scope> 
</managed-bean>