![]() |
|
||||
![]() Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
Você está aqui: Java Servlets ::: Dicas & Truques ::: Passos Iniciais |
Como criar o seu primeiro Java Servlet usando apenas o Bloco de Notas e o Apache TomcatQuantidade de visualizações: 1884 vezes |
Sim, é isso mesmo. Nesta dica mostrarei como montar a estrutura de uma aplicação Java Web e como executá-la no servidor Apache Tomcat. A idéia aqui é entender como este processo funciona antes de ficarmos totalmente dependentes de IDEs tais como Eclipse, NetBeans, etc. É claro que as IDEs agilizam muito o nosso trabalho, nos poupando de várias tarefas intermediárias. O problema em escrever uma aplicação Java Web usando IDEs é que muitos dos detalhes ficam ocultos pelas IDEs. Dessa forma, quando algum problema sério ocorre nós temos que excluir todo o projeto e recomeçar do zero ou gastar horas e horas tentando descobrir o que pode ter acontecido de errado. Aqui eu falei Bloco de Notas, mas você pode usar o seu editor de códigos favorito. Então, vamos começar. O primeiro passo é fazer uma instalação do servidor web Apache Tomcat. Se você ainda não sabe como fazer isso, basta seguir este link aqui: Como instalar o Apache Tomcat - Como baixar, instalar e testar o servidor web Apache Tomcat. Como criar a estrutura da aplicação Java Web Com o Apache Tomcat instalado e já testado, vá até o diretório "C:\Tomcat_10\webapps" e crie uma pasta chamada "estudos". Agora, dentro da pasta "estudos", crie uma pasta chamada "WEB-INF" e, dentro da pasta "WEB-INF", crie duas pastas, uma chamada "lib" e a outra chamada "classes". No final, sua estrutura deve ficar parecida com a imagem abaixo: ![]() Essa estrutura é a mais comum para aplicações Java Web. Os mais importantes aqui são o arquivo descritor de deployement web.xml (dentro do diretório WEB-INF) e os servlets, que são colocados sempre dentro do diretório "classes". Como escrever um Java Servlet usando apenas o Bloco de Notas Vamos escrever nosso Java Servlet então? Eu vou usar o Bloco de Notas, mas fique à vontade para usar o seu editor de códigos favorito. Assim, crie um arquivo chamado MensagemServlet.java com o seguinte conteúdo: import java.io.*; import jakarta.servlet.*; import jakarta.servlet.http.*; public class MensagemServlet extends HttpServlet{ public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{ response.setContentType("text/html"); ...... Note que nesta dica eu já troquei o pacote "javax.servlet" por "jakarta.servlet". Dependendo da sua versão do Apache Tomcat você deverá deixar "javax" mesmo. Para este tutorial nós podemos salvar o nosso Java Servlet dentro da pasta "classes" da nossa aplicação, visto que o nosso propósito é só estudar mesmo. Em uma aplicação do mundo real lembre-se de excluir os arquivos .java antes de distribuir o seu código. Como compilar o Java Servlet pela linha de comando Chegou a hora de compilar o nosso Java Servlet usando a linha de comando. Sim, isso mesmo. Nós vamos invocar o javac. Para isso, abra uma nova janela de comando e dispare os comandos: 1) C:\Users\Osmar>cd C:\Tomcat_10\webapps\estudos\WEB-INF\classes 2) C:\Tomcat_10\webapps\estudos\WEB-INF\classes>javac MensagemServlet.java Quando você pressionar Enter, é 99% certeza que você verá as seguintes mensagens de erro: MensagemServlet.java:5: error: cannot find symbol public class MensagemServlet extends HttpServlet{ ^ symbol: class HttpServlet MensagemServlet.java:6: error: cannot find symbol public void doGet(HttpServletRequest request, ^ symbol: class HttpServletRequest location: class MensagemServlet MensagemServlet.java:7: error: cannot find symbol HttpServletResponse response) throws ServletException, ^ symbol: class HttpServletResponse location: class MensagemServlet MensagemServlet.java:7: error: cannot find symbol HttpServletResponse response) throws ServletException, ^ symbol: class ServletException location: class MensagemServlet MensagemServlet.java:2: error: package jakarta.servlet does not exist import jakarta.servlet.*; ^ MensagemServlet.java:3: error: package jakarta.servlet.http does not exist import jakarta.servlet.http.*; ^ 6 errors Isso aconteceu porque nós precisamos do servlet-api.jar para compilar os Java Servlets. Você pode baixar este JAR na internet ou usar o servlet-api.jar que já vem com o Tomcat. Assim, basta mudar o comando de compilação: C:\Tomcat_10\webapps\estudos\WEB-INF\classes>javac -classpath "C:\Tomcat_10\lib\servlet-api.jar" MensagemServlet.java Se os caminhos informados no comando javac estiverem todos corretos, o Java Servlet será compilado e você encontrará um arquivo MensagemServlet.class no diretório "C:\Tomcat_10\webapps\estudos\WEB-INF\classes". Como criar o Arquivo Descritor de Deployment web.xml O Deployment Descriptor (DD) é um arquivo (ou documento) XML usado pelo contâiner web para executar Java Servlets e páginas JSP. Sua função, entre outras, é mapear URLs para as classes Servlets, inicializar parâmetros, definir páginas de erro, definir regras de segurança, declarar bibliotecas de tags, etc. Então, crie um arquivo web.xml, dentro do diretório WEB-INF, com o seguinte conteúdo: <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://java.sun.com/xml/ns/j2ee" version="2.4" 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"> <display-name>Estudos</display-name> <display-name>Um simples Java Servlet</display-name> <description>Mostra apenas uma mensagem</description> ...... Pronto! Já temos tudo pronto. Chegou a hora de executar o Java Servlet a partir do Apache Tomcat. Como executar o Java Servlet no Apache Tomcat Se o Apache Tomcat não estiver sendo executado, inicie o serviço, vá até a URL http://localhost:8080/estudos e veja o resultado. Se tudo correr bem, você verá o seguinte resultado: Estou estudando Servlets Algumas vezes pode ser necessário você se certificar de que a aplicação Java Web foi instalada corretamente no Apache Tomcat. Isso pode ser feito pelo Application Manager, na URL http://localhost:8080/manager/html. É nessa tela que temos todas uma lista com as aplicações instaladas e as opções de parar, reiniciar o contexto da aplicação, etc. Agora é só aprofundar os seus estudos de Java Servlets. Boa jornada! |
![]() |
Java Servlets ::: Dicas & Truques ::: URLs, Documentos e Páginas |
Como compartilhar dados entre um Java Servlet e uma página JSP usando a requisição HttpServletRequestQuantidade de visualizações: 8344 vezes |
Quando usamos o método forward() da interface RequestDispatcher para direcionar para um outro Java Servlet ou página JSP, tanto o objeto de requisição ServletRequest quanto o objeto de resposta ServletResponse são enviados também. Assim, podemos tirar proveito desta funcionalidade para compartilhar dados entre um servlet e uma página JSP usando a requisição. Vamos ver como isso é possível. Comece analisando o seguinte servlet: package estudos; import java.io.*; import jakarta.servlet.*; import jakarta.servlet.http.*; public class MeuServlet extends HttpServlet{ public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{ // cria uma instância da classe Pessoa Pessoa p = new Pessoa(); ...... Note que aqui eu já estou usando o pacote jakarta.servlet em vez de javax.servlet. Confirme se você está usando o Java EE ou Jakarta EE. Veja que no método doGet() deste Servlet nós temos a criação de uma instância da classe Pessoa (Pessoa.java). Esta classe tem a seguinte estrutura: package estudos; public class Pessoa{ private String nome; public String getNome(){ return this.nome; ...... Depois de criada a instância da classe nós a colocamos na requisição atual usando: // vamos colocar o objeto p na requisição ...... O passo seguinte é direcionar a requisição atual para a página exibir.jsp (a View do MVC). Veja o código para esta página: <jsp:useBean id="pessoaBean" scope="request" type="estudos.Pessoa" /> <html> <head> <title>Estudos Servlet</title> <meta http-equiv="Content-Type" content="text/html; ...... Aqui nós estamos usando <jsp:getProperty> para acessar um dos atributos do bean pessoaBean. Poderíamos usar JSTL e EL. Veja: <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <jsp:useBean id="pessoaBean" scope="request" type="estudos.Pessoa" /> <html> <head> <title>Estudos Servlet</title> ...... Fiz o mapeamento deste Java Servlet para a URL http://localhost:8080/estudos/meuservlet. Ao chamá-la nós teremos o seguinte resultado: Nome da pessoa: Osmar J. Silva |
Veja mais Dicas e truques de Java Servlets |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |