Проблема следующая: при описании property бина в faces-config.xml приложение говорит, что не может найти такое property. Если же упоминание об этом стереть, оставив только описание самого бина, то приложение начинает работать нормально. Проект у меня создан в Eclipse (Exadel Studio).
JSP, обращающаяся к бину:
| Код | <html> <head> <title></title> </head> <body> <f:view> <h:form id="greeting"> <h:message for="name" /><br/> <h:inputText value="#{pageBean.name}" id="name"/> <h:outputText value="Celsius" /><br/> <h:outputText value="#{pageBean.fah}"/> <h:outputText value="Fahrenheit" /><br/> <h:commandButton value="Convert" action="#{pageBean.convertToFahrenheit}"/> </h:form> </f:view> </body> </html>
|
Backing bean:
| Код | package Cel;
public class PageBean { private java.lang.Double fah; private java.lang.Double name;
public PageBean() { }
public java.lang.Double getFah() { return fah; }
public void setFah(java.lang.Double fah) { this.fah = fah; } public java.lang.Double getName() { return name; }
public void setName(java.lang.Double name) { this.name = name; } public void convertToFahrenheit(){ setFah(new Double(getName().doubleValue() * 1.8 + 32)); } }
|
faces-config.xml:
| Код | <faces-config> <managed-bean> <managed-bean-name>pageBean</managed-bean-name> <managed-bean-class>Cel.PageBean</managed-bean-class> <managed-bean-scope>request</managed-bean-scope> <managed-property> <property-name>name</property-name> <property-class>java.lang.Double</property-class> <value/> </managed-property> <managed-property> <property-name>fah</property-name> <property-class>java.lang.Double</property-class> <value/> </managed-property> </managed-bean> </faces-config>
|
Если убрать </managed-property>, то все проект будет работать |