我有两台服务器,我可以从我服务器的 jsp 调用另一台服务器的 jsp。
像下面的代码。第一个服务器 JSP。
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<h1>Hello World!</h1>
<form method="post" action="http://localhost:8080/Second_App/index.jsp">
Name : <input type="text" name="name"/>
Surname : <input type="text" name="surname"/>
<input type="submit" value="Submit"/>
</form>
</body>
</html>
当我单击提交时,控件将进入第二个服务器,它将名称作为参数并将其放入我的第二个服务器的 jsp。
第二个服务器 JSP。
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<h1>Hello World!</h1>
<%
String name = (String) request.getParameter("name");
String surName = (String) request.getParameter("surname");
%>
Name : <%= name %>
Surname : <%= surName %>
</body>
</html>
我想使用 Servlet 做完全相同的事情。
我尝试使用 Servlet 的 Redirect,我的控件将转到第二个服务器,但由于 Redirect,它不会使用“name”peramater。
我尝试使用 Forward 但它也无法正常工作,因为它在第一台服务器中找到了该 jsp。
RequestDispatcher dispatcher = request.getRequestDispatcher("http://server2/app1/index.jsp");
dispatcher.forward(request, response);
我担心的是 JSP 是 Servlet。如果这是使用 jsp 完成的,则意味着应该有某种方法可以使用 servlet 来完成。
谢谢。