Я создал веб-проект на Eclipse с одним классом: «HelloWorld.java», который должен иметь метод, отвечающий на запросы GET.
package javaeetutorial.hello;
// imports
@Path("base")
public class HelloWorld extends HttpServlet {
public HelloWorld() {
}
@GET
@Produces("text/html")
public String getHtml() {
return "<html lang=\"en\"><body><h1>Hello, World!!</h1></body></html>";
}
}
Затем в папке WebContent вВ каталоге WEB-INF я создал файл web.xml со следующим содержимым, чтобы сопоставить запросы с / hello url моему сервлету.
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
metadata-complete="true"
version="3.1">
<servlet>
<servlet-name>hello</servlet-name>
<servlet-class>javaeetutorial.hello.HelloWorld</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>hello</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
</web-app>
Я экспортирую проект в файл .warи затем я развертываю его с помощью Glassfish, но когда я вызываю URL, который предположительно вызывает мой веб-сервис, он показывает мне «Запрошенный ресурс () недоступен».
URL, который я вызываю: http://localhost:8080/Calculator/hello/base
Почему мой веб-сервис не вызывается?