gpt4 book ai didi

java - 从 JSP 向 servlet 发送响应和请求

转载 作者:行者123 更新时间:2023-11-30 09:31:03 24 4
gpt4 key购买 nike

如何通过代码将响应和请求对象从 jsp 文件发送到 servlet?我不想提交表格。

我试过:

response.setRedirect("my page"):

然后它说:

Exception in thread "main" org.apache.http.client.HttpResponseException: Moved Temporarily
at org.apache.http.impl.client.BasicResponseHandler.handleResponse(BasicResponseHandler.java:68)
at org.apache.http.impl.client.BasicResponseHandler.handleResponse(BasicResponseHandler.java:54)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:945)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:919)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:910)
at com.xx.xx.client.Client.sendPOSTRequest(Client.java:185)
at com.xx.xx.client.Client.main(Client.java:46)

作为说明:我有一个向 JSP 文件发送发布请求的客户端。此 JSP 文件解析文件并将所需信息放入 session 中。我想从此 jsp 文件调用一个 servlet 以将某些内容添加到数据库中。我认为这个错误代码是由这一行抛出的 String responseBody = httpclient.execute(httppost, responseHandler);

最佳答案

你可以只使用<jsp:include>在 servlet URL 上。

<jsp:include page="/servletURL" />

servlet doXxx()方法只会被当前请求/响应调用。请注意,servlet 之后无法转发到另一个 JSP。它必须直接写入响应,或设置 JSP 可以在 <jsp:include> 后拦截的一些请求/ session 属性行。

请注意,这是糟糕的设计。您正在滥用 JSP 作为前端 Controller 。应该反过来。 servlet 应充当前端 Controller ,而 JSP 应充当 View 。客户端应将请求直接发送到 servlet URL 而不是某些 JSP 文件。 servlet 应该执行业务工作并最终转发到 JSP 以让它以 HTML 格式显示结果。另见 our servlets tag wiki page对于一些 Hello World 示例。

关于java - 从 JSP 向 servlet 发送响应和请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13032269/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com