目标无法访问,标识符已解析为null

时间:2011-01-30 19:44:07

标签: java jsf glassfish-3

我正在尝试在外部服务器上运行j2EE项目。项目是在NetBeans(6.7.1)中完成的,当我从那里运行时,一切都很顺利(我在GlassFish v3服务器上运行它)。但是当我从asadmin脚本运行GlassFish并给他我的项目的war文件时,它返回异常:

Exception Details: javax.el.PropertyNotFoundException
  Target Unreachable, identifier 'loginBean' resolved to null

我在寻找答案而没有任何帮助。我想念Netbeans在GlassFish配置中有什么东西吗?

关于我发现的最常见的问题:

  1. loginBean在faces-config.xml
  2. 中声明
  3. 我在loginBean
  4. 上设置了会话范围
  5. @ManagedBean()中没有LoginBean.java,但我使用的是JSF1.2,而不是2.0
  6. 我发现某处可能是因为myfaces.jar和太阳的jsf,但我先删除了,但错误仍在显现。
  7. 我试图将javaee.jar放在glassfish/lib目录中(在他们写的一本书中)
  8. EDITED:可能会处理堆栈跟踪:

    com.sun.el.parser.AstValue.getTarget(AstValue.java:84)
    com.sun.el.parser.AstValue.getType(AstValue.java:69)
    com.sun.el.ValueExpressionImpl.getType(ValueExpressionImpl.java:194)
    com.sun.faces.renderkit.html_basic.HtmlBasicInputRenderer.getConvertedValue(HtmlBasicInputRenderer.java:92)
    javax.faces.component.UIInput.getConvertedValue(UIInput.java:942)
    javax.faces.component.UIInput.validate(UIInput.java:868)
    javax.faces.component.UIInput.executeValidate(UIInput.java:1072)
    javax.faces.component.UIInput.processValidators(UIInput.java:672)
    javax.faces.component.UIForm.processValidators(UIForm.java:235)
    javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1058)
    javax.faces.component.UIViewRoot.processValidators(UIViewRoot.java:700)
    com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:76)
    com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
    com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
    javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
    org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:431)
    org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:337)
    org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:218)
    DomainModels.Adds.UploadFilter.doFilter(UploadFilter.java:63)
    org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:250)
    org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:218)
    org.apache.catalina.core.StandardWrapperValve.preInvoke(StandardWrapperValve.java:460)
    org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:139)
    org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:186)
    org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:719)
    org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:657)
    com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:96)
    com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:98)
    org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:187)
    org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:719)
    org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:657)
    org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:651)
    org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1030)
    org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:142)
    org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:719)
    org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:657)
    org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:651)
    org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1030)
    org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:325)
    org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:242)
    com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:180)
    com.sun.grizzly.http.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:633)
    com.sun.grizzly.http.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:570)
    com.sun.grizzly.http.DefaultProcessorTask.process(DefaultProcessorTask.java:827)
    com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:152)
    com.sun.enterprise.v3.services.impl.GlassfishProtocolChain.executeProtocolFilter(GlassfishProtocolChain.java:71)
    com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:103)
    com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:89)
    com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:76)
    com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:67)
    com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:56)
    com.sun.grizzly.util.WorkerThreadImpl.processTask(WorkerThreadImpl.java:325)
    com.sun.grizzly.util.WorkerThreadImpl.run(WorkerThreadImpl.java:184)
    

4 个答案:

答案 0 :(得分:1)

就我而言,原因完全不同。

我复制了一个包含serialVersionUID字段的类:

private static final long serialVersionUID = 5443351151396868724L;

所以我有两个不同的类和对象具有相同的serialVersionUID,这就是问题的线索。

答案 1 :(得分:0)

请检查您的war文件,看看您的课程是否在WEB-INF / classes文件夹下。 我遇到了同样的问题,发现没有类文件WEB-INF / classes文件夹。

答案 2 :(得分:0)

有同样的问题。问题导入错误。而不是javax.enterprise.context.SessionScoped,我有javax.faces.bean.SessionScoped,它不起作用,并抛出提到的异常。

答案 3 :(得分:0)

我清理了所有项目,websphere自动重新发布了耳朵。之后应用程序正在运行。