我要求使用一些参数调用我的第三方网站(MoneyPayment)。我只需要使用JSP和Servlet。我正在尝试提交表单,我正在调用我正在尝试的Servlet:
pRequest.setAttribute("gatewayparam",vGateparam);
pRequest.setAttribute("checksum", vChecksum);
RequestDispatcher dispatcher = pRequest.getRequestDispatcher("https://MoneyPaymentURL");
try {
dispatcher.forward( pRequest, pResponse );
} catch (IOException e) {
log.info("IOException-: "+e);
}
这给了我FileNotFoundException:
java.io.FileNotFoundException: SRVE0190E: File not found: /ProjectName/https:/MoneyPaymentURL
我也尝试使用send.redirect(URL)但在这种情况下如何传递参数?
有人请建议我如何前进。
答案 0 :(得分:1)
要从Servlet重定向到第三方网址,您应该使用response.sendRedirect("theURL")
response.sendRedirect("theURL?paramName=paramValue")
session
属性
session.setAttribute("paramName", "Parameter Value");
response.sendRedirect("theURL");
out.println(session.getAttribute("paramName").toString());
session.removeAttribute("paramName");
希望这能解决你的问题。
答案 1 :(得分:0)
我也尝试使用send.redirect(URL)但在这种情况下如何传递参数?
是的,您无法使用POST
发送send.redirect(URL)
请求参数,但您可以使用会话属性来传递参数。
<强>例如强>
HttpSession session = request.getSession(false);
session.setAttribute("gatewayparam",vGateparam);
session.setAttribute("checksum", vChecksum);
response.sendRedirect("https://MoneyPaymentURL");
因此,您可以通过相关用途获取新第三方网站的会话价值。使用scriptlets
或JSTL
等等......