假设我正在运行一个JSP/Servlet驱动的网站。用户将数据POST到根目录,并且我有一个处理路径/
的servlet(Index.java
)。我想要这个servlet要做的是查看请求中的一些数据,并确定哪一个servlet应该处理它。当它决定哪个第二级servlet处理该请求时,它会将该请求发送到该第二级servlet。Tree of RequestDispatcher.forward()
现在我的问题是,如果需要第三个级别的servlet会发生什么?第二级servlet不能到第三级,因为调度员声称响应已经提交。
视觉:
Index.java
+SecondLevelA.java
+SecondLevelB.java
\SecondLevelC.java
\ThirdLevelC.java
的SecondLevelC.java
不能转移到第三级。我也无法重定向,因为我将在重定向中丢失POST参数。 POST是必需的,因为GET查询的数据太大。
考虑完全重构你的架构。 MVC方法可能会更好。 –
请求调度不受“等级”或转发次数的限制。如果提交的是响应,则代码中的其他内容会导致该问题。 – helderdarocha