Starting a Servlet from a java class like from HTML code

What I am trying to do is to run a simple Servlet from a java class.

Actually I have a Servlet1 that is started from an html code through a post action. That servlet outputs some other html page but also calls a Java class. What I try to do now is to start a Servlet2 that outputs html code from that java class. I did:

URL url = new URL("http://localhost:8080/WebApplication/Servlet2");
URLConnection conn = url.openConnection();
conn.setDoOutput(true);
conn.setDoInput(true);

but the servlet2 is not opened in the browser even though i output in the proccessRequest method some html code.

Isn't the Servlet2 getting a request? Where i'm going wrong or what i'm missing?

Kind regards, Adriana

1
задан Matt Ball 27 August 2010 в 17:25
поделиться

1 ответ

Ваш вопрос расплывчатый и двусмысленный, а функциональное требование неясно, поэтому я не могу дать подробный ответ, как выполнить конкретное функциональное требование.

Но, по крайней мере, следующая фраза немного странная:

но сервлет2 не открывается в браузере

Этот конкретный код никоим образом не откроет указанный URL в каком-то веб-браузере . Этот код Java никоим образом не взаимодействует ни с одним из установленных веб-браузеров на локальном компьютере. Если ваша единственная цель — открыть конкретный URL-адрес в веб-браузере по умолчанию на локальном компьютере (например, Firefox, MSIE и т. д.), вам скорее понадобится Desktop#browse(). Например.

Desktop.getDesktop().browse(new URI("http://google.com"));

Если это тоже не то, что вы ищете, то я не знаю. Все, что я могу предложить, это пройти эту тему, чтобы узнать, как запускать и обрабатывать HTTP-запросы программно, используя код Java. Вероятно, вы отслеживаете файлы журнала веб-сервера, чтобы увидеть, был ли запрошен сервлет. Это произойдет только тогда, когда URLConnection действительно инициирует запрос. Только вызов openConnection() этого не сделает.

2
ответ дан 2 September 2019 в 21:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: