Http 调用远程Javaservlet
我有一个包含表单的jsp页面,它应该将表单数据发送到远程servlet,由远程servlet计算表单数据,然后以XML的形式返回。它可以工作,但目前我正在创建一个只与本地servlet一起工作的实例和调度程序,而我希望它与远程servlet一起工作 我以前被告知会这样做,但这件事已经变得如此令人头痛,似乎对我想做的事情来说完全是一种矫枉过正。必须有一些简单的方法,而不是摆弄所有这些jar组件和依赖项Http 调用远程Javaservlet,http,jsp,servlets,Http,Jsp,Servlets,我有一个包含表单的jsp页面,它应该将表单数据发送到远程servlet,由远程servlet计算表单数据,然后以XML的形式返回。它可以工作,但目前我正在创建一个只与本地servlet一起工作的实例和调度程序,而我希望它与远程servlet一起工作 我以前被告知会这样做,但这件事已经变得如此令人头痛,似乎对我想做的事情来说完全是一种矫枉过正。必须有一些简单的方法,而不是摆弄所有这些jar组件和依赖项 如果可能的话,请给出示例代码,我实际上是Java的完全新手,更像是一个PHP的家伙:p在一些在线
如果可能的话,请给出示例代码,我实际上是Java的完全新手,更像是一个PHP的家伙:p在一些在线资源的帮助下找到了它。必须首先收集提交的值(request.getParamater(“bla”)),构建数据字符串(URLEncoder),启动URLConnection并告诉它打开与指定URL的连接,启动OutputStreamWriter,然后告诉它添加数据字符串(URLEncoder),最后读取数据并打印 以下是守则的要点:
String postedVariable1 = request.getParameter("postedVariable1");
String postedVariable2 = request.getParameter("postedVariable2");
//Construct data here... build the string like you would with a GET URL
String data = URLEncoder.encode("postedVariable1", "UTF-8") + "=" + URLEncoder.encode(postedVariable1, "UTF-8");
data += "&" + URLEncoder.encode("postedVariable2", "UTF-8") + "=" + URLEncoder.encode(submitMethod, "UTF-8");
try {
URL calculator = new URL("http://remoteserver/Servlet");
URLConnection calcConnection = calculator.openConnection();
calcConnection.setDoOutput(true);
OutputStreamWriter outputLine = new OutputStreamWriter(calcConnection.getOutputStream());
outputLine.write(data);
outputLine.flush();
// Get the response
BufferedReader streamReader = new BufferedReader(new InputStreamReader(calcConnection.getInputStream()));
String line;
//streamReader = holding the data... can put it through a DOM loader?
while ((line = streamReader.readLine()) != null) {
PrintWriter writer = response.getWriter();
writer.print(line);
}
outputLine.close();
streamReader.close();
} catch (MalformedURLException me) {
System.out.println("MalformedURLException: " + me);
} catch (IOException ioe) {
System.out.println("IOException: " + ioe);
}
你能告诉我你是如何返回数据的吗?我需要这个