我正在使用 netbeans 7.2.1 作为 IDE。我正在尝试开发一个基于 JSF 框架并在 GLASSFISH3+ 服务器上运行的具有各种用户配置文件的多问题选择 Web 应用程序,并且在引入第四个托管 bean 时遇到了问题。所以我对另一个项目进行了测试,使用了 4 个具有相同代码的托管 bean,并具有一个简单的字符串属性。测试豆,测试2豆,测试3豆,测试4豆。这是示例代码:
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
@ManagedBean
@SessionScoped
public class test3Bean implements java.io.Serializable {
private String s;
public String getS() {
return s;
}
public void setS(String s) {
this.s = s;
}
}
Web 应用程序有一个简单的 index.xhtml 读取 4 输入设置为 4 托管 bean:index.xhtml
输入 testword 1 h:inputText value="#{test1.S}
Enter testword 2 h:inputText value="#{test2.S}
Enter testword 3 h:inputText value="#{test3.S}
Enter testword 4 h: inputText value="#{test4.S}
A submit button
reponse.xhtml 将显示 4 个输入。
运行应用程序时,出现了undex.xhtml,并且在我在 h:inputText 上输入单词并提交后,我遇到了这个错误:
/index.xhtml @14,107 value="#{test4.s}":目标无法到达,标识符“test4”解析为空。
我不明白相同的代码 testBean 1,2 和 3 已由 Mojarra/faclets 引擎处理,而不是 test4Bean。
请有任何想法。