Post on 28-Nov-2014
description
Rogério Fontes – UaiJUG Leader @rogeriofontes
WildFly – Jboss 8
http://www.wildfly.org/
WildFly – Jboss 8
http://www.wildfly.org/
O Servidor Jboss , chega a sua versão 8, tem o um novo nome: Jboss WildFly 8.
“Ele chega prometendo voar rápido assim como uma borboleta
selvagem”
"Fly Fast, and Free"
WildFly – Jboss 8 Download
http://www.wildfly.org/
Para fazermos o download do Wildfly Application Server, temos que ir no novo site do projeto.
Este é hostiado no http://www.wildfly.org.
WildFly – Jboss 8 Desenvolvimento
http://www.wildfly.org/
O desenvolvimento não teve uma mudança radical comparado ao Jboss 7 (Que mudou radicalmente), o que mais sentimos de diferença visível é que o novo servidor suporta a especificação
completa do JEE7, que foi recentemente liberada: (http://java.net/projects/javaee-spec/downloads).
WildFly – Jboss 8 Desenvolvimento
http://www.wildfly.org/
Junto com isso você precisa estar ciente que no novo servidor contém um novo modulo de layout para filesystem (Que foi
introduzido no JBoss EAP 6.1, basicamente o novo modulo de sistemas de arquivo é organizado em:
WildFly – Jboss 8 Desenvolvimento
http://www.wildfly.org/
WildFly – Jboss 8 Desenvolvimento
http://www.wildfly.org/
O modulo de administração é usado separadamente da distribuição base e outros módulos. A vantagem disso é que você pode customizar entrega do seu aplicativo.
WildFly – Jboss 8 Desenvolvimento
http://www.wildfly.org/
Por causa do novo modulo de distribuição do sistema de arquivos do WildFly o plugin de configuração do Jboss 7 do jboss tools não é mais utilizado para no jboss 8, para isso precisará baixa o JBoss Tools 4.1.1 sobre o Eclipse Kepler 4.3.1, para ter a nova configuração em vigor.
Jboss Tools e WildFly
Jboss Tools e WildFly
Jboss Tools e WildFly Demo
Vamos criar uma simples com maven para usar a especificação do EJB 3.2.
Para saber mais:
http://www.infoq.com/br/news/2012/08/ejb-3.2-inicial
http://pt.slideshare.net/arungupta1/java-ee7-webinar
Jboss Tools e WildFly Demo
Crie uma app maven javaee7-webapp
Criando o projeto maven:
mvn archetype:generate -DgroupId=br.com.psi.exwildfly \
-DartifactId=example-wildfly-webapp \
-Dpackage=br.com.psi \
-Dversion=1.0-SNAPSHOT
Adicionar suporte ao eclipse:
mvn eclipse:eclipse -Dwtpversion=2.0
Após isso vá em: File=>New=>Other=>Maven=>Import Maven Project e importe seu projeto.
Jboss Tools e WildFly Nota
Você tem que criar uma Eclipse Java project e não uma Java Project.
Muita gente confunde, se usarmos somente o comando: mvn eclipse:eclipse, isto irá converter somente para uma projeto Java project, adicionanto o argumento extra -Dwtpversion=2.0 isso criará o projeto com as configurações necessárias do Eclipse web project.
Jboss Tools e WildFly Demo
• Crie uma classe chamada NoPassivation, dentro do pacote: package br.com.psi.service. Com o seguinte conteúdo:
package br.com.psi.service;
@javax.ejb.Stateful(passivationCapable=false) public class NoPassivation { int total =0; public void sum(int i) { total+=i; } public int getTotal() { return total; } }
Jboss Tools e WildFly Demo
Para testar nosso EJB, vamos criar uma servlet simples para chamos o NoPassivation EBJ algumas vezes:
package br.com.psi.controller;
@EJB NoPassivation ejb; protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { ejb.sum(5); ejb.sum(5); PrintWriter out = response.getWriter(); out.println("Hello from EJB 3.2 on WildFly"); out.println("Total "+ejb.getTotal()); out.close(); }
Jboss Tools e WildFly Demo
• Por ultimo vamos criar nosso pom.xml, usando a especificacao do JEE7 jboss-javaee-7.0 e o EJB 3.2 usando a implementação da jboss: jboss-ejb-api_3.2_spec.
Jboss Tools e WildFly Demo
• Acrescente no seu pom.xml.
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<!-- maven-compiler-plugin -->
<maven.compiler.target>1.7</maven.compiler.target>
<maven.compiler.source>1.7</maven.compiler.source>
</properties>
Jboss Tools e WildFly Demo
• Acrescente no seu pom.xml.
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.jboss.spec</groupId>
<artifactId>jboss-javaee-7.0</artifactId>
<version>1.0.0.Final-SNAPSHOT</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
Jboss Tools e WildFly Demo
• Acrescente no seu pom.xml.
<dependencies> <dependency> <groupId>org.jboss.spec.javax.ejb</groupId> <artifactId>jboss-ejb-api_3.2_spec</artifactId> <scope>provided</scope> </dependency> <!-- Import the Common Annotations API (JSR-250) --> <dependency> <groupId>org.jboss.spec.javax.annotation</groupId> <artifactId>jboss-annotations-api_1.2_spec</artifactId> <scope>provided</scope> </dependency> </dependencies>
Jboss Tools e WildFly Demo
• Acrescente no seu pom.xml.
<build>
<finalName>${project.artifactId}</finalName>
<plugins>
<plugin>
<groupId>org.wildfly.plugins</groupId>
<artifactId>wildfly-maven-plugin</artifactId>
<version>1.0.0.Beta1</version>
</plugin>
</plugins>
</build>
Jboss Tools e WildFly
Obrigado
Fonte: http://www.mastertheboss.com/wildfly-8/wildfly-8-introduction