1 de outubro de 2014

Dynamic Web on Java

Olá, hoje vou escrever o básico de uma configuração simples para se criar uma "página" usando Java.
Estou em um Ubuntu 14.04, com java 7 e eclipse Luna. Conto com maven e o objetivo secundário desse post é ser simples e direto.

Existem MUITAS maneiras de se criar uma página dinâmica usando Java, e para cada uma dessas maneiras existem várias formas de ser configuradas. a seguir aprento uma simples e direta.




  1. Abra o Eclipse e crie um novo Dynamic web project.

  2. Clique com botão direito vá no menú configurações e converter para MAVEN.
  3. altere o conteúdo do arquivo pom.xml para ficar assim: <properties> <spring .version="">4.0.7.RELEASE</spring> <jdk .version="">1.7</jdk> </properties> <dependencies> <dependency> <groupid>org.springframework</groupid> <artifactid>spring-core</artifactid> <version>${spring.version}</version> </dependency> <dependency> <groupid>org.springframework</groupid> <artifactid>spring-web</artifactid> <version>${spring.version}</version> </dependency> <dependency> <groupid>org.springframework</groupid> <artifactid>spring-webmvc</artifactid> <version>${spring.version}</version> </dependency> <dependency> <groupid>junit</groupid> <artifactid>junit</artifactid> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies> <build> <sourcedirectory>src</sourcedirectory> <plugins> <plugin> <artifactid>maven-compiler-plugin</artifactid> <version>3.1</version> <configuration> <source></source>1.7 <target>1.7</target> </configuration> </plugin> <plugin> <artifactid>maven-war-plugin</artifactid> <version>2.4</version> <configuration> <warsourcedirectory>WebContent</warsourcedirectory> <failonmissingwebxml>false</failonmissingwebxml> </configuration> </plugin> <plugin> <groupid>org.apache.tomcat.maven</groupid> <artifactid>tomcat7-maven-plugin</artifactid> <version>2.1</version> <configuration> <url>http://localhost:8080/manager/text</url> <server>my-tomcat</server> <path>/SampleSpringMaven</path> </configuration> </plugin> <plugin> <groupid>org.apache.maven.plugins</groupid> <artifactid>maven-compiler-plugin</artifactid> <version>3.0</version> <configuration> <source></source>${jdk.version} <target>${jdk.version}</target> </configuration> </plugin> </plugins> </build>
  4. Edite o arquivo WebContent/WEB-INF/web.xml <span quot="" xx-small=""><span eeeeee="" quot=""><web-app http:="" id="&quot;WebApp_ID&quot;" java.sun.com="" javaee="" ns="" quot="" version="&quot;3.0&quot;" web-app_3_0.xsd="" xml="" xmlns:xsi="&quot;http://www.w3.org/2001/XMLSchema-instance&quot;" xmlns="&quot;http://java.sun.com/xml/ns/javaee&quot;" xsi:schemalocation="&quot;http://java.sun.com/xml/ns/javaee"> <display-name>Transparência Brasil</display-name> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <servlet> <servlet-name>mvc-dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>mvc-dispatcher</servlet-name> <url-pattern>*.htm</url-pattern> </servlet-mapping> <context-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/mvc-dispatcher-servlet.xml</param-value> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> </web-app> </span></span>
  5. Adicione o arquivo: /WebContent/WEB-INF/mvc-dispatcher-servlet.xml: <beans beans="" context="" http:="" quot="" schema="" spring-beans-3.0.xsd="" spring-context-3.0.xsd="" www.springframework.org="" xmlns:context="&quot;http://www.springframework.org/schema/context&quot;" xmlns:xsi="&quot;http://www.w3.org/2001/XMLSchema-instance&quot;" xmlns="&quot;http://www.springframework.org/schema/beans&quot;" xsi:schemalocation="&quot;"> <context:component-scan base-package="&quot;controller&quot;"> <bean class="&quot;org.springframework.web.servlet.view.InternalResourceViewResolver&quot;"> <property name="&quot;prefix&quot;"> <value>/WEB-INF/pages/</value> </property> <!-- <property name="suffix"> --> <!-- <value>.jsp</value> --> <!-- </property> --> </bean> </context:component-scan></beans>
  6. Crie um pacote chamado controller e dentro dele crie uma classe chamado CtrlHello.java. seu conteúdo é: <span style="font-size: xx-small;"><span style="background-color: #eeeeee;">package controller; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; @Controller public class CtrlHello { @RequestMapping("/hello.htm") public String testeServlet(){ System.out.println("CtrlHello"); return "hello"; } }</span></span>
  7. Crie o arquivo hello.jsp no caminho: /ServerOne/WebContent/WEB-INF/pages/hello.jsp <span style="font-size: xx-small;"><span style="background-color: #eeeeee;"><html> <head> <script src="jquery-1.2.6.min.js" type="text/javascript"></script> <title>Being Java Guys | Hello World</title> </head> <body> <center> <h2> Being Java Guys | Hello World</h2> <h4> ${message}</h4> </center> </body> </html> </span></span>
Ok, admito ficou muito dificil de ser lido mas como esse blog deixou de ser de um grupo para se tornar o repositorio das coisas que preciso então acho que esta ótimo.
Tenho certeza, que de quebra, alguem será ajudado por esse post.