情况如下:我练习了创建一个迷你博客应用程序。我使用 Strut 的 EventDispatchAction 来处理所有与帖子相关的方法,例如更新和列出帖子。
我有一个 update() 方法(http://mywebsite/post?update),它更新数据库,然后如果它成功转发到同一个动作类,但我使用了不同的方法来处理它, list() 方法(http://mywebsite/post?list ) 列出当前用户的所有帖子。问题是它不起作用并抛出:
javax.servlet.ServletException:
HTTP 监视器的服务器端组件检测到 java.lang.StackOverflowError。当 web 模块中存在无限循环时,就会发生这种情况。在再次运行 Web 模块之前更正死循环的原因。
你们对如何解决这个问题有任何想法吗?任何帮助将不胜感激!
编辑:我解决了伙计们。我只需要在我的转发参数中输入值,就我而言,我必须这样做: post?list=list 而不是 post?list (正常方式)。我猜如果它没有值,该方法将被忽略。Struts 为什么会这样,真的很奇怪。也许有人可以对此有所了解?