gpt4 book ai didi

http - 调用远程 Java Servlet

转载 作者:可可西里 更新时间:2023-11-01 16:35:18 26 4
gpt4 key购买 nike

我有一个包含表单的 jsp 页面,它应该将表单数据发送到远程 servlet,该 servlet 会对其进行计算,然后将其作为 XML 返回。它有效,但目前我正在创建一个实例和调度程序,它只适用于本地 servlet,而我希望它适用于远程 servlet。

我之前被告知 HTTPClient会这样做,但是这件事已经变得如此令人头疼,而且对于我想做的事情来说似乎完全是矫枉过正。一定有一些简单的方法,而不是摆弄所有这些 jar 组件和依赖项?

如果可能的话,请提供示例代码,我真的是 Java 的新手,更像是一个 PHP 的人:P

最佳答案

在一些在线资源的帮助下解决了这个问题。必须首先收集提交的值(request.getParamater(“bla”)),构建数据字符串(URLEnconder),启动 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);
}

关于http - 调用远程 Java Servlet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3164822/

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