Я пытаюсь реализовать очень простое веб-приложение со стороной на стороне Джерси. Я не использую Maven или eclipse или какой-либо другой инструмент. Я называю URL ниже:Простой веб-приложение с возвратом Джерси 404
http://server:port/RestfulExample/hello
Я держу след файла журнала, это то, что я вижу:
GET/RestfulExample/привет HTTP/1.1" 404 5
Я посмотрел на многие другие должности, я пытался убедиться, что мой шаблон URL сопрягает с тем, что я имею в Main.java, web.xml и URL я называю. я первоначально был следующий учебник vogella в here.
Main.java Класс:
package com.unitask.web;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
//Sets the path to base URL + /hello
@Path("/hello")
public class main{
@GET
@Produces(MediaType.TEXT_PLAIN)
public String sayPlainTextHello(){
return "Hello Jersey";
}//end of hello
// This method is called if HTML is request
@GET
@Produces(MediaType.TEXT_HTML)
public String sayHtmlHello() {
return "<html> " + "<title>" + "Hello Jersey" + "</title>"
+ "<body><h1>" + "Hello Jersey" + "</body></h1>" + "</html> ";
}
}//end of class
web.xml:
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4">
<display-name>Restful Application Example</display-name>
<description>
Restful Server App Sample using Jersey.
</description>
<servlet>
<servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
<servlet-name>Jersey Web App</servlet-name>
<init-param>
<param-name>jersey.config.server.provider.classnames</param-name>
<param-value>com.unitask.web.main</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Jersey Web App</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
</web-app>
Нет ли другого сообщения об ошибке в журнале, кроме 404? –
На самом деле есть, я только что обнаружил в catalina.out :: SEVERE: Parse Fatal Error в строке 2 столбца 6: Целевое задание команды обработки [xX] [mM] [lL] "не разрешено. org.xml.sax.SAXParseException; systemId: jndi: /localhost/RestfulExample/WEB-INF/web.xml; lineNumber: 2; col umnNumber: 6; Согласование целевой команды обработки «[xX] [mM] [lL]» недопустимо. Я не понимаю, хотя мой web.xml выглядит корректно для меня – melis
В начале моего web.xml была пустая строка. Я избавился от этой линии. Он больше не вызывает никаких ошибок. Но код HTTP превратился в 503. @Luiggi Mendoza благодарит за указание сообщений об ошибках. – melis