我创建了一个服务 Restful With Spring 框架,我试图包含一个调用 Selenium Java 的方法,驱动程序是 Google Chrome,但要创建对象 WebDriver driver = new ChromeDriver ();
这个我产生了一个异常:
org.springframework.web.util.NestedServletException: Handler processing failed; nested exception is java.lang.StackOverflowError
org.springframework.web.servlet.DispatcherServlet.triggerAfterCompletionWithError(DispatcherServlet.java:1302)
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:977)
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893)
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:968)
org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:859)
javax.servlet.http.HttpServlet.service(HttpServlet.java:622)
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:844)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
causa raíz
java.lang.StackOverflowError
java.lang.Exception.<init>(Exception.java:102)
java.lang.ReflectiveOperationException.<init>(ReflectiveOperationException.java:89)
java.lang.reflect.InvocationTargetException.<init>(InvocationTargetException.java:72)
sun.reflect.GeneratedMethodAccessor95.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:497)
org.json.JSONObject.populateMap(JSONObject.java:1015)
org.json.JSONObject.<init>(JSONObject.java:279)
org.json.JSONObject.wrap(JSONObject.java:1527)
org.json.JSONObject.populateMap(JSONObject.java:1017)
org.json.JSONObject.<init>(JSONObject.java:279)
org.json.JSONObject.wrap(JSONObject.java:1527)
org.json.JSONObject.populateMap(JSONObject.java:1017)
org.json.JSONObject.<init>(JSONObject.java:279)
org.json.JSONObject.wrap(JSONObject.java:1527)
在主类中独立运行顺利,但我需要它来自服务 Restful
最佳答案
我花了几个小时与 stackoverflow 错误作斗争......希望这对某人有帮助
我犯了一个愚蠢的错误
请看下面的代码片段:-
错误的代码:-
Map abcWithKey = new HashMap<>();
abcWithKey.put("key_1", abcWithKey);
正确的代码:-
Map abcWithKey = new HashMap<>();
abcWithKey.put("key_1", abc);
其中 abc 是一个 map ,所以我没有添加 abc(不同的 map ),而是递归地添加相同的 map 。
关于java - Handler处理失败;嵌套异常是 java.lang.StackOverflowError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38796419/