Java 执行servlet以便调用我的doGet方法
我正在捕获一个设备事件,根据来自它的信息,我需要进行登录。如果验证了登录,我想转到应用程序的下一页 我试着用Java 执行servlet以便调用我的doGet方法,java,jsp,servlets,Java,Jsp,Servlets,我正在捕获一个设备事件,根据来自它的信息,我需要进行登录。如果验证了登录,我想转到应用程序的下一页 我试着用HttpURLConnection来实现它,但它实际上并没有执行servlet 这是我使用的遗传密码: public static String getResponseFromUrl(String url) throws Exception { URL website = new URL(url); HttpURLConnection connection = (Http
HttpURLConnection
来实现它,但它实际上并没有执行servlet
这是我使用的遗传密码:
public static String getResponseFromUrl(String url) throws Exception {
URL website = new URL(url);
HttpURLConnection connection = (HttpURLConnection)website.openConnection();
connection.setRequestMethod("GET");
connection.setRequestProperty("Content-Type", "application/json; charset=utf-8");
connection.setUseCaches(false);
BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String response = "";
String inputLine;
while ((inputLine = in.readLine()) != null)
response += inputLine;
in.close();
return response.toString();
}
我也试过了
InputStream responseInputStream = connection.getInputStream();
但结果是一样的。没有调用doGet
方法,显然应用程序不会移动到下一页
我很确定这可以通过捕获JSP
页面中的事件来实现,但我希望有一个更简单的解决方案
编辑:在浏览器中提交相同的URL时,所有内容都有效。将调用doGet,应用程序将移动到下一页 从文档:
URL url = new URL("http://www.android.com/");
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
try {
InputStream in = new BufferedInputStream(urlConnection.getInputStream());
readStream(in);
finally {
urlConnection.disconnect();
}
}
尝试使用“readStream(in);”
如果仍然不起作用,则错误必须来自URL。
如果你说你在这个url上有一个doGet方法,试着用你的浏览器来确保url被回复。你真的需要一个不同的doGet/doPost吗?改用“service”方法doGet()未调用表示未调用doGet()或getResponseFromUrl()未调用?或者调用某个elsegetResponseFromUrl()并运行时没有错误。但是doGet没有被调用。这意味着当当时发出的Get请求doGet()没有被调用时就开始了,对吗?如果doGet不调用意味着所有其他bla-bla都不会执行。我的想法正确吗?doGet没有被调用,响应是空的。然后需要检查你的定相是什么错误?你试过这个代码吗?可能会调用doGet方法,但不会移动到下一页