【问题标题】:GlassFish 4 Error: FATAL: FATAL: JSF1073: javax.el.ELExceptionGlassFish 4 错误:致命:致命:JSF1073:javax.el.E​​LException
【发布时间】:2014-05-07 17:40:50
【问题描述】:

我正在 Java EE 7 中进行尝试,我已经构建了一个示例应用程序,可以在此处找到 https://github.com/kenparker/moviplex7.git

在此过程中,我了解到主要是因为 GlassFish 4 安装存在问题,才能使事情正常运行。

当前的错误日志如下:

WARNING:   JSF1063: WARNUNG! Der nicht serialisierbare Attributswert wird in HttpSession festgelegt (Schlüssel: 7b6d8a31fe1f98a383c3673cc569:0_flowStack, Wertklasse: com.sun.faces.flow.FlowHandlerImpl$FlowDeque).
FATAL:   JSF1073: javax.el.ELException erfasst während Verarbeitung von RENDER_RESPONSE 6 : UIComponent-ClientId=, Message=/client/movies.xhtml @17,78 items="#{movieClientBean.movies}": javax.ws.rs.ProcessingException: java.net.MalformedURLException: Stream handler unavailable due to: For input string: "0:0:0:0:0:0:1:8080"
FATAL:   /client/movies.xhtml @17,78 items="#{movieClientBean.movies}": javax.ws.rs.ProcessingException: java.net.MalformedURLException: Stream handler unavailable due to: For input string: "0:0:0:0:0:0:1:8080"
javax.el.ELException: /client/movies.xhtml @17,78 items="#{movieClientBean.movies}": javax.ws.rs.ProcessingException: java.net.MalformedURLException: Stream handler unavailable due to: For input string: "0:0:0:0:0:0:1:8080"
    at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:114)
    at com.sun.faces.facelets.tag.jstl.core.ForEachHandler.apply(ForEachHandler.java:161)
    at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:95)
    at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)
    at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:190)

奇怪的是,我在我的 Mac Book 上运行相同的应用程序没有这个问题,所以我桌面上的 GlassFish 4 安装和我的 Mac Book 上的安装之间肯定存在一些差异。

两者似乎都在“GlassFish Server Open Source Edition 4.0 (build 89)”

“更新工具”不显示打开的更新。

我如何找出两个安装之间的差异在哪里?

我也在网上搜索并发现了这个链接。 https://java.net/jira/browse/JAVASERVERFACES-3084?page=com.atlassian.jira.plugin.system.issuetabpanels%3Aworklog-tabpanel

我真的不明白解决方案是由什么组成的。

任何想法我可以如何着手解决问题?

【问题讨论】:

    标签: java glassfish-4 java-ee-7


    【解决方案1】:

    这个问题与 GlassFish 没有真正的关系。

    Stream handler unavailable due to: For input string: "0:0:0:0:0:0:1:8080"
    

    这部分错误消息表明某些东西正在尝试使用 IPv6 地址。我猜javax.ws.rs.client.ClientBuilder 类无法正确处理。

    如果您在台式计算机上启用了双栈网络(IPv4 和 IPv6),httpServletRequest.getLocalName() 似乎首先返回 IPv6 地址 (0:0:0:0:0:0:1)。

    可能有一个解决方案如何改变你的操作系统中的这种行为,但也有另一种获取 IP 的方法:

    httpServletRequest.getServerName()
    

    FacesContext.getCurrentInstance().getExternalContext().getRequestServerName()
    

    MovieClientBeaninit() 方法中使用它代替httpServletRequest.getLocalName()。它应该以 IPv4 格式返回地址并使其工作。

    另请参阅:

    【讨论】:

      猜你喜欢
      • 2015-04-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多