Java hello world tomcat

New Apache Tomcat Application

We’re going to create a small web application that runs on Tomcat to demonstrate the integration in IntelliJ IDEA Ultimate:

  1. From the Welcome Screen select New Project.
  2. If you have an existing project open, click File > New. Select Java Enterprise on the left-hand menu and enter the following details:

New Tomcat Project

  1. Click Next to go to the next step in the tutorial and select Jakarta EE 9 from the Version drop-down. The Eclipse Jersey Server and Weld SE have been preselected for us because we selected REST service as the template in the previous step.
  2. Click Create to set up the project. IntelliJ IDEA will now create our simple web application which will output “Hello, World!” when it receives a GET request.

You can open the Services window with ⌘8 (macOS), Alt+8 (Windows/Linux) to see the Tomcat server we just configured along with our web application.

We can run our application with ^R (macOS), or Shift+F10 (Windows/Linux) and this starts our Tomcat server. In the Run window ⌘4 (macOS), Alt+4 (Windows/Linux), you can check the logs to ensure that your Tomcat server is being deployed, however, IntelliJ IDEA automatically opens a browser when the URL of the application’s root context — http://localhost:8080/HelloWorldApp_war_exploded/. You should receive a 404 error:

404 Error in the browser

We get this 404 page because Tomcat is running and listening for requests, but our application has no view to display. For example, we don’t currently have an index.jsp file. (because it’s a simple service with some REST APIs). In the next step, we will figure out how to reach our application’s endpoint that displays the Hello World message.

Читайте также:  Example of HTML caption Tag

If we go back to our application code, we can find the ApplicationPath in our HelloApplication.java — which is /api . In addition, in our HelloResource.java file, our Path is set to /hello-world . This means we can make a GET request to the HelloResource by adding api/hello-world to the URL in my browser making the full URL: http://localhost:8080/HelloWorldApp_war_exploded/api/hello-world.

Now you will be able to see Hello World printed out in your browser:

Источник

Простейшее web-приложение на Java на сервере Tomcat

В статье рассказывается о том, как поднять на своем компьютере локальный Java сервер и прописать простейшее web-приложение.

Введение

Tomcat нужен для работы Java сервера с применением сервлетов. Если грубо говоря, то сервелеты это аналог тех же PHP скриптов. На сервер Tomcat от клиентов приходят запросы. В зависимости от них сервер запустит те или иные сервелеты, которые сформируют ответы в виде текстовых файлов. Чаще всего это HTML страницы.

Установка JDK

Устанавливаем JDK. Если уже до этого устанавливали, то повторно не устанавливаем.

Если у вас в папке с Java есть только папка с названием jdk , но нет с названием jre , то аналогичным способом устанавливаем jre (по ссылке JRE для Java 8):

Выбор скачиваемого файла

Папка jre в папке Java

Для работы современных версий Android Studio или IntelliJ IDEA не нужно производить дополнительные действия, чтобы программы могли найти JDK и запускать Java приложения. Но мы будем на данный момент компилировать сервлеты вручную, так что для удобства мы пропишем путь к папке JDK в системную переменную Path в Windows. Ниже приведена инструкция для Windows 10.

У меня JDK находится в папке C:\Program Files\Java\jdk1.8.0_121\bin .

Кликните правой кнопкой по иконке Этот компьютер и перейдите в Свойства :

Пункт «Свойства» контекстного меню

Дополнительные параметры системы

Переменные среды

Внимание! Не вздумайте удалять всё содержимое переменной Path . Иначе у операционной системы возникнут очень большие проблемы. Вы должны дописать в эту переменную нужный путь:

Изменение параметра Path

Добавление нового пути

Подтверждение добавления пути

Установка Apache Tomcat

Скачиваем установочный файл:

Раздел Download на сайте

Скачивание установщика

Начальное окно установщика

Соглашение с лицензией

Эти компоненты должны быть выбраны:

Выбор устанавливаемых компонентов

Для учебных целей можно параметры оставить по умолчанию:

Настройка параметров сервера

Далее нужно указать путь к JRE (устанавливается при установке JDK). Обычно программа сама находит папку:

Выбор пути к JRE

Выбор папки установки Tomcat

Установка Tomcat

Завершение установки

После этого в трее должен появиться значок запущенного сервиса:

Значок запущенного сервиса

Перейдите по адресу http://localhost:8080/. Если вы видите это, то всё хорошо:

Запущенный сервер

Кстати, потом включать (например, при перезапуске компа) сервер можно запуском программы Monitor Tomcat из Пуска :

Программа Monitor Tomcat

Запуск сервера

Создание и сборка сервлета вручную

Напишем первое web-приложение вручную без каких-либо IDE.

Перейдем в папку, где установлен Tomcat. У меня это папка C:\Program Files\Apache Software Foundation\Tomcat 9.0 . Запомните этот путь, так как он вам еще много раз пригодится.

Выше говорилось, что сервлеты чем-то похожи на PHP скрипты (упоминание для тех, кто знает PHP). Но есть одна существенная разница. В PHP можно написать файл скрипта, закинуть в соответствующую папку и web-приложение готово. С Java такой трюк не пройдет. Нам соответствующие сервлеты нужно будет скомпилировать в байт-код и уже со сгенерированными .class файлами работать.

Итак, где-нибудь создайте произвольную папку. Советовал бы не использовать русские буквы, пробелы. И в пути к папке тоже желательно обойтись без русских букв. Я на рабочем столе создал папку testapp .

В ней создайте текстовой файл TestServlet.java с таким содержимым:

package com.example; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class TestServlet extends HttpServlet  public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException  resp.setContentType("text/html;charset=utf-8"); PrintWriter pw = resp.getWriter(); pw.println("

Hello, world!

"
); > >

Это и есть код нашего сервлета. Мы создаем наследника класса HttpServlet . В нем реализуем один метод doGet() , в котором вначале сообщаем что сервлет будет выдавать HTML документ. Потом вытаскиваем из resp ссылку на экземпляр PrintWriter . И то, что мы будем писать в нем, будет отдано сервером на запрос от клиента.

Первое, на что нужно обратить внимание. Кодировка файла TestServlet.java должна быть UTF-8 . У многих проблема с компиляцией данного файла возникает именно из-за проблем с кодировкой. Вот так кодировка выглядит в Notepad++ :

Выбор кодировки файла

Не используйте стандартный блокнот Windows!

Второе. Класс наследуется от HttpServlet . И для компиляции программы нам будет нужен jar файл с нужными классами внутри.

В папке Tomcat есть папка lib . В ней есть файл servlet-api.jar :

Файл servlet-api.jar

Копируем его в нашу папку с Java файлом:

Файл servlet-api.jar в папке проекта

Третье. Мы разместили наш класс в пакете package com . example (у вас может быть другой). А это означает, что в папке, где лежит наш Java файл нужно создать папку com , в ней папку example , и уже туда переместить файл TestServlet.java .

У меня для наших двух файлов получились такие пути:

Теперь можем приступить к сборке. Открываем командную строку cmd :

Командная строка

Перейдем в папку, что мы создали для размещения наших файлов. Не забывайте после каждой команды в командной строке для её запуска нажимать Enter :

cd C:\Users\Harrix\Desktop\testapp 

Переход в папку проекта

И запустим сборку. Если у вас в системной переменной Path не прописан путь к JDK (описано в начале статьи), то команда не сработает:

javac -encoding UTF-8 -cp .;servlet-api.jar com\example\*.java 

Если эта команда не сработает, то используйте один из этих вариантов:

javac -classpath servlet-api.jar com\example\TestServlet.java 
javac -encoding UTF-8 -cp servlet-api.jar com\example\*.java 

Компилирование исходников

Если у вас не выведется список ошибок, а в папке с TestServlet.java файлом появится файл TestServlet.class , то всё получилось. Нам нужен будет этот файл и больше папка, созданная для сборки больше не пригодится:

Скомпилированный файл TestServlet.class

Собираем web-приложение

Перейдем опять в папку Tomcat. Там есть папка webapps с web-приложениями нашего сервера. В папке ROOT , как не сложно догадаться, располагается корневое приложение, которое вы видели при переходе на localhost:8080:

Папка webapps

В папке webapps создадим папку с названием web-приложения. Допустим, testingapp :

Созданная папка testingapp

В этой папке создайте папку WEB-INF , а в ней папку classes .

C:\Program Files\Apache Software Foundation\Tomcat 9.0\webapps\testingapp\WEB-INF\classes

В папке classes у нас должны находиться файлы байт-кода наших классов. То есть тут должен появиться файл TestServlet.class . Но мы помним, что класс был определен в пакете com.example .

Поэтому в папке classes создаем папку com , а ней папку example . И уже в эту папку кидаем файл TestServlet.class .

C:\Program Files\Apache Software Foundation\Tomcat 9.0\webapps\testingapp\WEB-INF\classes\com\example\TestServlet.class :

Файл TestServlet.class

Перейдем в папку WEB-INF . В ней создадим текстовой файл web.xml с таким содержанием:

Файл web.xml

   test com.example.TestServlet   test /test   

В тэге servlet-class мы указываем запускаемый класс сервлета, а в тэге url-pattern указываем url имя запускаемого сервлета.

Обязательно перезапустите сервер:

Остановка сервера

Запуск сервера

Всё сборка прошла успешно. Теперь можем проверить работу web-приложения. Для этого переходим по адресу:

Обратите внимание, что в адресе testingapp — это имя папки нашего приложения из папки webapps , а test — имя сервлета из тэга url-pattern из файла web.xml .

Если вы увидели в браузере это, то всё хорошо:

Работающее web-приложение

Если же увидели это, то что-то сделали не так. Проверьте свои шаги:

Ошибка 404

  • Tomcat-logo.svg by The Apache Software Foundation / (2020-02-02)

В статье рассказывается о том, как поднять на своем компьютере локальный Java сервер и прописать простейшее web-приложение.

В статье рассказывается о том, как поднять на своем компьютере локальный Java сервер и прописать простейшее web-приложение.

Harrix

Write an awesome description for your new site here. You can edit this line in _config.yml. It will appear in your document head meta (for Google search results) and in your feed.xml site description.

Источник

Оцените статью