您需要自己创建并发送HTTP请求.您无法使用forward/redirect/include,因为您想要将方法从GET更改为POST并且您想要发送multipart/form-data请求.
由于HttpClient(和其他第三方库?)显然不是一个选项,最好的办法是使用提供的标准Java SE API java.net.URLConnection.简而言之:使用java.net.URLConnection来触发和处理HTTP请求在底部你可以找到一个multipart/form-data例子.
请注意,此问题并非特定于servlet.换句话说,您必须能够使用main()方法在普通的Java应用程序中执行此代码.这样可以更轻松地进行测试和微调.一旦你开始工作,只需让servlet执行相同的代码.
与此问题无关,我的印象是某处存在重大设计失败,当然,如果两个servlet都在同一个Web应用程序上下文中运行.您要发送POST请求的另一个servlet显然过于紧密耦合,应该重构.
您可以在应用程序中获取另一个servlet的调度程序并将其转发或包含在@Ryan建议中.在第一个servlet中代码应该是这样的:
ServletContext context = this.getServletContext();
RequestDispatcher dispatcher = context.getRequestDispatcher("/otherurltoservlet");
// change your request and response accordingly
dispatcher.forward(request, response);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
24535 次 |
| 最近记录: |