- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当我点击应用程序 URL (http://localhost:9082/pages/upload.jsf
) 时,浏览器上只显示“Error:500 StackOverflowError”。根据我在这个问题上的基础工作,我可以看出这可能是由于某些递归问题造成的。
并且我的应用部署的服务器是WAS 8
请有人帮我解决这个问题。我知道这很模糊,如果我需要分享任何内容,请告诉我。 (例如,控制台上的错误消息等)
at javax.faces.context.FacesContext.getAttributes(FacesContext.java:64)
at javax.faces.context.FacesContext.getAttributes(FacesContext.java:64)
[the same line repeated many times]
at javax.faces.context.FacesContext.getAttributes(FacesContext.java:64)
at javax.faces.context.FacesContext.getAttributes(FacesContext.java:64)
at org.apache.myfaces.application.ResourceHandlerImpl.isResourceRequest(ResourceHandlerImpl.java:416)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:180)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1188)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:763)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:454)
at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:125)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:92)
at com.lmig.putt.customComponents.UploadFilter.doFilter(UploadFilter.java:61)
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:192)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:89)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:919)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1016)
at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3703)
at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:304)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:962)
at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1662)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:195)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:452)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:511)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:305)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:276)
at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214)
at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:113)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at com.ibm.io.async.AsyncChannelFuture$1.run(AsyncChannelFuture.java:205)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1659)
` 这是我在点击 URL 后在控制台上发现的错误消息。请帮助我,因为我发现它是全新的,而且很难破解
Web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>PUTT</display-name>
<context-param>
<param-name>log4ConfigLocation</param-name>
<param-value>/WEB-INF/classes/log4j.properties</param-value>
</context-param>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/application-context.xml</param-value>
</context-param>
<!-- Log4jConfigListener also tries to
set the webAppRootKey. solve this by adding the following statements in web.xml -->
<context-param>
<param-name>log4jExposeWebAppRoot</param-name>
<param-value>false</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
<listener>
<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
</listener>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<listener>
<listener-class>com.sun.faces.config.ConfigureListener</listener-class>
</listener>
<jsp-config>
<taglib>
<taglib-uri>http://www.lmig.com/PUTT/upload</taglib-uri>
<taglib-location>/WEB-INF/upload.tld</taglib-location>
</taglib>
</jsp-config>
<context-param>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>client</param-value>
</context-param>
<filter>
<filter-name>Upload Filter</filter-name>
<filter-class>com.lmig.putt.customComponents.UploadFilter</filter-class>
<init-param>
<param-name>com.lmig.putt.customComponents.UploadFilter.sizeThreshold</param-name>
<param-value>1024</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>Upload Filter</filter-name>
<url-pattern>/pages/upload.jsf</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Upload Filter</filter-name>
<url-pattern>/pages/upload.jsp</url-pattern>
</filter-mapping>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>
javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<resource-ref>
<description>DataSource</description>
<res-ref-name>jdbc/db2DS</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsf</url-pattern>
</servlet-mapping>
</web-app>
faces-config.xml
<?xml version="1.0" encoding="UTF-8"?>
<!-- <faces-config version="1.2" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xi="http://www.w3.org/2001/XInclude"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd"> -->
<faces-config xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
version="2.0">
.
.
.
.
</faces-config>
最佳答案
基于 MyFaces 2.0.5 源代码,堆栈跟踪中的行号匹配,FacesContext#getAttributes()
看起来像这样:
55 public Map<Object, Object> getAttributes()
56 {
57 FacesContext ctx = _firstInstance.get();
58
59 if (ctx == null)
60 {
61 throw new UnsupportedOperationException();
62 }
63
64 return ctx.getAttributes();
65 }
换句话说,_firstInstance.get()
在您的特定情况下错误地返回了当前实例。这表明在其他地方的代码中的某个点,JSF 内部代码中发生了以下操作:
FacesContext.setCurrentInstance(FacesContext.getCurrentInstance());
这是不对的。 FacesContext
的当前实例不应引用其自身。它只会导致每次访问自身的无限循环,正如堆栈跟踪所证明的那样。
此外,您显然已成功部署 Web 应用程序,并在 web.xml
<listener>
<listener-class>com.sun.faces.config.ConfigureListener</listener-class>
</listener>
建议您在 webapp 的运行时类路径中有 MyFaces 的竞争对手 Mojarra。换句话说,您正在混合两个完全不同的 JSF 实现!这绝对是不对的。这就像在一台汽车发动机中混合汽油和柴油。 IBM WebSphere 捆绑了 MyFaces。您应该删除任何与 Mojarra 相关的 JAR 文件(jsf-api.jar
、jsf-impl.jar
和/或 javax。 faces.jar
)、配置条目(com.sun.faces.*
)和来自您的 webapp 的其他工件。它们与 MyFaces 冲突。
关于jsf - java.lang.StackOverflowError 在 javax.faces.context.FacesContext.getAttributes(FacesContext.java :64),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19930448/
这个问题已经有答案了: 已关闭10 年前。 Possible Duplicate: ServletContext and Session object 我觉得很奇怪 session.getAttrib
var objects = document.getElementsByTagName('object'); for (var i=0, n=objects.length;i
我正在尝试将给定元素的自定义属性与具有特定类的所有其他元素的自定义属性进行比较...这就是我所拥有的 function choose(el){ var text = $(el).getAttr
如何处理错误无法读取未定义的属性“getAttribute”。我正在使用 DOMParser 来获取 xml 标记的 type 属性。此 xml 标记有时可以是 FirstTag,有时可以是 Seco
我正在做一个任务,要求我们为矩形定义一个类并为其配备各种方法,其中两个是 getHeight()和 getWidth() , 除了 return this.height; 之外不应该做任何事情和 re
我正在使用 jQuery var editor = CodeMirror.fromTextArea($('#upEditor'), { stylesheet:'monokai.css' })
我正在开发一个触摸屏项目,并尝试显示一些图像(将一行分成几个段落,并使用每个段落的背景来显示图像),并为所选图像添加边框(只能是一个)选择),现在我需要通过onclick()显示移动的图像,例如,首先
你好,我是 JS 新手,代码中可能有更多错误。但我不明白为什么 getAttribute 不是一个函数。 测试: test('TESTING', () => { const filterNod
我不确定这里出了什么问题,但是当我尝试运行我的代码时,wishlist.getAttribute 返回 null,但如果我专门调用 getElementById,它将返回我需要的值。虽然我需要 wis
我需要根据第一个框的选择来同步这两个下拉框。 我不能为此使用 “value” 标记,因为代码库从其他地方提取这些值。 以下代码无效: html One Two Three Four
所以我有一个带有动态生成表格的页面,看起来像 行
以下代码片段中的代码演示了在更改 disabled 属性后,我无法检索原始属性值,至少对于 disabled 属性而言是如此。 The jQuery docs暗示 element.getAttribu
如何获取一个元素的所有属性?就像我下面的例子一样,我一次只能得到一个,我想拉出所有 anchor 标签的属性。 $dom = new DOMDocument(); @$dom->loadHTML(ht
我是 Javascript 新手。我想编写一个 javascript 代码,当我单击一个按钮时,会弹出警报窗口并写入数据消息属性。这是我的代码: click function pop() {
我正在尝试使用以下代码获取图像的值: image = doc.querySelector("img.product-pic-image").getAttribute("src"); 我总是得到 nul
我正在尝试获取 angualar.js 中的一些请求属性。我可以使用 request.getAttribute() 在 jsp 方法中获取相同的属性。 我不知道如何获取相同的内部 Angular 。您
我似乎偶然发现了一个看似错误的等价物,使用以下命令生成维基百科主页 (wikipedia.org) 的所有输入的列表: var inputs = Array.prototype.slice.call(
已关闭。这个问题是 not reproducible or was caused by typos 。目前不接受答案。 这个问题是由拼写错误或无法再重现的问题引起的。虽然类似的问题可能在这里 on-t
我正在寻找一种方法来获取存储在变量中的类的值(对于我的示例“AAABC”)。我使用 getAttribute 方法尝试了不同的关键字,但没有成功。关键字“class”显然给了我“gwt-Label”,
我是JAVA编程的新手。 我想使用 android.media.ExifInterface 来保存和恢复一些字节数组作为 exif 信息。 String str = new String(byte
我是一名优秀的程序员,十分优秀!