【发布时间】:2019-10-04 22:08:21
【问题描述】:
我正在使用 RAD 9.6.1 编写一个项目,UI 是在 JSF 2.0 中开发的。当我尝试在 Websphere 9.0 上部署我的应用程序时,出现以下错误。我试着做一个谷歌,但无法得到任何解决方案,尝试了所有可能的建议。我试图解决这个问题的解决方案。我将应用程序部署为配置战争的耳朵。 它适用于 Tomcat 和 jboss 很好。
从组件中的以下行获取空指针异常
static {
FacesContext facesContext = FacesContext.getCurrentInstance();
ValueExpression vex = facesContext.getApplication()
.getExpressionFactory().createValueExpression(
facesContext.getELContext(), "#{GenericDAO}",
ICRUDDAO.class); //this line give null pointer exception at initialization
dao = (ICRUDDAO) vex.getValue(facesContext.getELContext());
}
【问题讨论】:
-
我没有使用 WebSphere,但我注意到它有指导 lin,look it 或许它可以解决您的问题
-
ClassLoader 加载您的类后,就会立即处理静态代码块。这不一定在 JSF-Servlet 请求处理期间发生。因此,您的 facesContext 变量不太可能与
null不同。
标签: jsf-2