Bom, testei teu código e realmente não tava dando certo.
Mudei um pouco e agora está funcionando aqui:
web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="WebApp_ID" version="2.5">
<display-name>agenda</display-name>
<servlet>
<servlet-name>Oi</servlet-name>
<servlet-class>OiMundo</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Oi</servlet-name>
<url-pattern>/oi</url-pattern>
</servlet-mapping>
</web-app>
Servlet OiMundo.class:
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 OiMundo extends HttpServlet {
private static final long serialVersionUID = 5594330465046634984L;
@Override
protected void service(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
PrintWriter out = response.getWriter();
out.println("<html>");
out.println("<body>");
out.println("Primeira servlet");
out.println("</body>");
out.println("</html>");
}
}
Aqui também funcionou.
Andrei, o que estava errado?
Obrigado.
Acredito que seja seu web.xml.
Estava mapeado errado:
Você não fechava a tag para então começar a tag :
[quote]<?xml version="1.0"?>
servletOiMundo
OiMundo
servletOiMundo
/oi
[/quote]
Deveria ser assim:
[code]
Oi
OiMundo
<servlet-mapping>
<servlet-name>Oi</servlet-name>
<url-pattern>/oi</url-pattern>
</servlet-mapping> [/code]
Eu fiz da forma como estava na apostila da Caelum, o exemplo da apostila consta somente isso:
<servlet>
<servlet-name>Oi</servlet-name>
<servlet-class>OiMundo</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Oi</servlet-name>
<url-pattern>/oi</url-pattern>
</servlet-mapping>
Desculpa a ignorância, é que estou começando mexer com web e não entendi esse monte de código do .xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="WebApp_ID" version="2.5">
Isso é obrigatório?
Obrigado.
Sim, é obrigatório.[code] <?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_5.xsd"
version="2.5">
<servlet>
<servlet-name>oi</servlet-name>
<servlet-class>OiMundo</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>oi</servlet-name>
<url-pattern>/oi</url-pattern>
</servlet-mapping>
</web-app>[/code]
Obrigado pessoal, pela ajuda e pela paciência.