Desenvolvimento - Java

Java Web Applications

De acordo com a especificação J2EE, uma aplicação web é uma coleção de servlets, isto é, páginas html, classes, e outros recursos que possibilitam o correto funcionamento desta em multiplos containers, ou resumidamente, que reside na camada web de uma aplicação...

por Eric C M Oliveira



De acordo com a especificação J2EE, uma aplicação web é uma coleção de servlets, isto é, páginas html, classes, e outros recursos que possibilitam o correto funcionamento desta em multiplos containers, ou resumidamente, que reside na camada web de uma aplicação.

Uma das principais caracteristicas de uma aplicação web é seu relacionamento com o ServletContext. Cada aplicação tem somente um único ServletContext. Este relacionamento é controlado pelo container de servlet.

Podemos encontrar os seguintes itens em uma aplicação web:

  • Servlets
  • JavaServer Pages
  • Utility Classes
  • Documentos Estáticos, como XHTML, images, etc.
  • Client side classes
  • Meta information sobre a aplicação web

O primeiro passo para a criação de uma aplicação web é criar a estrutura de diretórios de maneira correta, permitindo assim seu perfeito funcionamento junto ao container.

Abaixo podemos observar como deve ser essa estrutura e qual a funcionalidade de cada diretório. O nome da nossa aplicação exemplo será LinhaCodigo. Cada um dos diretórios deve ser criado abaixo do <SERVER_ROOT> do container. Por exemplo, no Servidor Tomcat, esse diretório é /jakarta-tomcat-4.0/webapps.

O Web application deployment descriptor pode ser considerado o "coração" de uma aplicação web. Trata-se de um arquivo XML chamado web.xml que descreve informações de configurações de toda a aplicação web.

Nesse arquivo, podemos encontrar informações referentes a:

  • Parâmetros de Inicialização do ServletContext
  • Configuração de Session
  • Definições de Servlet / JSP
  • Mappings de Servlet / JSP
  • Páginas de Erros
  • Segurança

Abaixo temos um pequeno exemplo de um web application deployment descriptor:

<web-app>
  <display-name>Linha de Codigo</display-name>
  <session-timeout>30</session-timeout>
  <servlet>
    <servlet-name>ServletLinhaCodigo</servlet-name>
    <servlet-class>com.linhacodigo.ServletLinhaCodigo</servlet-class>
    <load-on-startup>1</load-on-startup>
    <init-param>
      <param-name>name</param-name>
      <param-value>value</param-value>
    </init-param>
  </servlet>
</web-app>

Após tomarmos contato com uma aplicação web, é possível empacotar a aplicação para o deployment. O método padrão é criar uma WAR file (Web ARchive file). A ferramenta JAR pode criar o WAR file com o seguinte comando:

jar cvf LinhaCodigo.war

Usando o Elipse, por exemplo, basta usar SeuProjeto / Exportar / WAR file.

Após isso, será gerada um arquivo chamado LinhaCodigo.war, que irá conter toda sua aplicação. Esse war.file deve ser copiado, por exemplo, no Tomcat, em /jakarta-tomcat-4.0/webapps. Basta então apenas "restartar" o servidor. Sua aplicação foi "instalada" no servidor e deve estar rodando corretamente.

Referências:

- http://www.onjava.com/pub/ct/33

- http://java.sun.com/j2ee/5.0/index.jsp

Eric C M Oliveira

Eric C M Oliveira - Bacharel em Ciencia da Computação/FASP e Comunicação/Unesp, tem experiência em desenvolvimento Java nas plataformas J2SE, J2EE e J2ME, além de atividades ligadas a disciplina de testes, engenharia e qualidade de software. Tem certificações Java SCJP 1.3, SCJP 1.4, Rational Test Management, Rational Robot e RUP (Rational Unified Process).