我在JSF 2.3和CDI应用程序中遇到bean发现问题。我正在使用Glassfish 5.0,Java 8(1.8.0_151)。我的档案:
faces-config.xml中
<?xml version='1.0' encoding='UTF-8'?>
<faces-config xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-facesconfig_2_3.xsd"
version="2.3">
</faces-config>
LocaleBean:
import javax.enterprise.context.SessionScoped;
import javax.inject.Named;
@Named
@SessionScoped
public class LocaleBean implements Serializable {
}
在向此bean提交表单后,Glassfish日志中的消息:
javax.el.PropertyNotFoundException:/home.xhtml @ 15,81 value =&#34;#{localeBean.language}&#34;:Target Unreachable,identifier&#39; localeBean&#39;解析为null
表单提交仅在我使用javax.enterprise.context包中列出的导入而不是@Named和@SessionScoped时才有效。
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
但两者都在JSF 2.3中弃用。
任何想法的家伙?谢谢!
答案 0 :(得分:0)
我在GitHub上找到了本主题的解决方案及其描述: