Jee6

2.125 visualizações

Publicada em

0 comentários
1 gostou
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
2.125
No SlideShare
0
A partir de incorporações
0
Número de incorporações
15
Ações
Compartilhamentos
0
Downloads
80
Comentários
0
Gostaram
1
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Jee6

  1. 1. Java Enterpise Edition e as novidades da versão 6 Fabio Velloso fabio@soujava.org.br JAVALI@FISL10
  2. 2. FISL10 - Fórum Internacional de Software Livre / JAVALI Esta obra está licenciada sob uma Licença Creative Commons http://creativecommons.org/licenses/by-nc-sa/2.0/br/
  3. 3. FISL10 - Fórum Internacional de Software Livre / JAVALI Fabio Velloso  Bacharel em Ciência da Computação pela Universidade Federal de São Carlos-UFSCar  Fundador e Vice-Presidente do SouJava  Trabalha com tecnologia Java desde 96  Professor de SOA e Web Services do curso de Pós-Graduação "Lato-Sensu" em Desenvolvimento de Software para Web da UFSCar  Arquiteto de Integração e Sistemas na Telefonica
  4. 4. FISL10 - Fórum Internacional de Software Livre / JAVALI Agenda  Java Enterprise Edition  Java Enterprise Edition 6  Java Authentication SPI for Containers  Contexts and Dependency Injection for JavaEE (anteriormente WebBeans)  Java API for RESTful Web Services  JavaServer Faces 2.0  Servlets 3.0  EJB 3.1
  5. 5. FISL10 - Fórum Internacional de Software Livre / JAVALI Java Platform
  6. 6. FISL10 - Fórum Internacional de Software Livre / JAVALI Java Enterprise Edition  Especificação de arquitetura para a criação de aplicações para servidores, exigindo alta disponibilidade, robustez, segurança, performance, escalabilidade e interoperabilidade.
  7. 7. FISL10 - Fórum Internacional de Software Livre / JAVALI Camadas JEE
  8. 8. FISL10 - Fórum Internacional de Software Livre / JAVALI Servlet - Request e Response HTTP
  9. 9. FISL10 - Fórum Internacional de Software Livre / JAVALI Java Web Technologies
  10. 10. FISL10 - Fórum Internacional de Software Livre / JAVALI JavaServer Faces  Framework MVC padrão de JEE  JSR 128  Facilidade de desenvolvimento  Suporte visual de IDE's  Modelo de componentes Várias implementações Comunidade Open Source
  11. 11. FISL10 - Fórum Internacional de Software Livre / JAVALI Enterprise Java Beans  Definição:  “Enterprise JavaBeans is a cross-platform component architecture for the development and deployment of multi-tier, distributed, scalable, object- oriented Java applications. Enterprise JavaBeans makes it easy to write business applications as components by providing a set of automatic services to support scalable transactional application server components. Enterprise JavaBeans can be deployed on top of existing transaction processing systems including traditional transaction processing monitors, web servers, database servers, application servers, etc. “  O único padrão para desenvolvimento de componentes server side para monitores transacionais, habilitando o desenvolvimento de aplicações distribuídas, transacionais, robustas, escaláveis e seguras.
  12. 12. FISL10 - Fórum Internacional de Software Livre / JAVALI Java EE Timeline Fonte: TS-5055 (JavaOne 2009)
  13. 13. FISL10 - Fórum Internacional de Software Livre / JAVALI Agenda  Java Enterprise Edition  Java Enterprise Edition 6  Java Authentication SPI for Containers  Contexts and Dependency Injection for JavaEE (anteriormente WebBeans)  Java API for RESTful Web Services  JavaServer Faces 2.0  Servlets 3.0  EJB 3.1
  14. 14. FISL10 - Fórum Internacional de Software Livre / JAVALI Java Authentication SPI for Containers  JSR 196  Final  Define uma interface padrão para integração de containers JEE com servidores de autenticação  Possibilita delegar o processo de autenticação a um servidor/ externo  Define SPI que amplia os conceitos de JAAS  Define “profiles” que estabelecem contratos para uso da SPI
  15. 15. FISL10 - Fórum Internacional de Software Livre / JAVALI Java Authentication SPI for Containers  Suporta o modelo de segurança declarativa de JEE  Possibilita a implementação de protocolos complexos como SOAP  Tokens SAML Kerberos service tickets  X509 Certificates Liberty
  16. 16. FISL10 - Fórum Internacional de Software Livre / JAVALI Java Authentication SPI for Containers  Client  Server Verifica tokens ou  Adiciona tokens e assinaturas assinatura Extraem datos  Chama o Discovery para Adiciona ao “Security localizar o serviço Context”
  17. 17. FISL10 - Fórum Internacional de Software Livre / JAVALI Java Authentication SPI for Containers  Servlet Container Profile  LoginModule Bridge Profile Define a integração e delega o processamento de autorização de segurança a um JAAS Login Module  SOAP Profile  Profiles a definir Java Message Service  RMI/IIOP (Internet Inter-ORB Protocol)
  18. 18. FISL10 - Fórum Internacional de Software Livre / JAVALI JavaServer Faces 2.0  JSR 314  Final Approval Ballot  Incorporação de Facelets  Suporte a AJAX nativo <h:commandButton id="btnDeleteSprint" action="#{sprintManager.remove}" value="Delete" onclick="jsf.ajax.request(this, event, {execute: 'frmListSprints', render: 'frmListSprints'}); return false;"/>
  19. 19. FISL10 - Fórum Internacional de Software Livre / JAVALI JavaServer Faces 2.0  Composite Componentes: Componentes customizados mais fáceis de desenvolver  Não precisa de XML  Não precisa criar CustomTag  É um componente real, pode ter conversores e validadores
  20. 20. FISL10 - Fórum Internacional de Software Livre / JAVALI JavaServer Faces 2.0  Mínimo de configuração Mais anotações menos XML Navegação implícita Declaração e configuração de ManagedBeans em anotações  Maior flexibilidade na navegação Suporte a EL dentro do facesconfig.xml; Navegação condicional (if) no facesconfig.xml
  21. 21. FISL10 - Fórum Internacional de Software Livre / JAVALI JavaServer Faces 2.0  Processamento e atualização parcial da árvore de componentes  Melhor suporte a “Resources” como CSS, arquivos JavaScript com novas tags:  <h:outputStylesheet library="css/1_1" name="common.css"/>  <h:outputScript library="js" name="menu.js" target="head"/>  Novos escopos : CustomScope ViewScope Acesso via EL #{viewScope.attrName}
  22. 22. FISL10 - Fórum Internacional de Software Livre / JAVALI Servlet 3.0  JSR 315  Proposed Final Draft  Non-blocking I/O  Processamento assíncrono  Maior número de usuários concorrentes  Anotações para declarar Servlets, Filters, Listeners e segurança  Web.xml opcional, porém se utilizado suas definições valem sobre as anotações
  23. 23. FISL10 - Fórum Internacional de Software Livre / JAVALI Servlet 3.0  @WebServlet Classe anotada é um Servlet Precisa declarar a “URL pattern” Outros parâmetros são opcionais Exemplo: Nome é o full qualified name da classe Classe precisa declarar extends HttpServlet Métodos doGet, doPost são herdados
  24. 24. FISL10 - Fórum Internacional de Software Livre / JAVALI Servlet 3.0  Exemplos:  @WebServlet(“/hello”) public class Exemplo extends HttpServlet { public void doGet(HttpServletRequest req, HttpServletResponse res) { } }  @WebServlet(urlPatterns=“/hello”, name=”JavaliServlet”, asyncSupported=true) public class Exemplo extends HttpServlet { public void doGet(HttpServletRequest req, HttpServletResponse res) { } }
  25. 25. FISL10 - Fórum Internacional de Software Livre / JAVALI Servlet 3.0  @WebFilter Classe anotada é um filtro Precisa declarar a “URL pattern” do filtro Outros parâmetros são opcionais  Classe precisa declarar implements Filter  Exemplo:  @WebFilter(“/javaliFilter”) public class Exemplo implements Filter { public void doFilter(HttpServletRequest req, HttpServletResponse res) { } }
  26. 26. FISL10 - Fórum Internacional de Software Livre / JAVALI Servlet 3.0  Pluggability Modularidade do web.xml com fragmentos Alterar parâmetros definidos via anotações Não é necessário escrever todo o web.xml  Exemplos de uso: Logging e Filters de segurança Declarar Listeners para executar ações em diferentes pontos da aplicação
  27. 27. FISL10 - Fórum Internacional de Software Livre / JAVALI Servlet 3.0  Exemplo: <web-fragment> <servlet> <servlet-name>hello</servlet-name> <servlet-class>HelloServlet</servlet-class> </servlet> <listener> <listener-class>RequestListener</listener-class> </listener> </web-fragment>
  28. 28. FISL10 - Fórum Internacional de Software Livre / JAVALI Servlet 3.0  Fragmentos podem ser ordenados  Exemplo: web-fragment1.xml <web-fragment> <name>fragmento1</name> <ordering><after>fragmento2</after></ordering> </web-fragment>  <after> - carregado após o fragmento descrito  <before> - carregado antes do fragmento descrito  <others> - indica ordem que é carregado na lista Com <before> - no início Com <after> - ao final
  29. 29. FISL10 - Fórum Internacional de Software Livre / JAVALI Servlet 3.0  Asynchronous Servlets  Evitar gargalos com recursos como Conexão JDBC Web Services JMS Outro recurso acessado pela aplicação  Retorna o processamento ao container  Outra thread ou callback retorna o resultado paralelo executado em paralelo
  30. 30. FISL10 - Fórum Internacional de Software Livre / JAVALI Servlet 3.0  Programmatic Security Usado quando a segurança declarativa não é suficiente Métodos de HttpServletRequest interface: login logout getRemoteUser isUserInRole getUserPrincipal
  31. 31. FISL10 - Fórum Internacional de Software Livre / JAVALI Servlet 3.0  Suporte a anotações de seguranca @RolesAllowed Grupo que tem acesso ao recurso @DenyAll Recurso não acessíveis a usuário @PermitAll Recurso acessível a todos usuários @TransportProtected Uso de SSL  Aplicável a classes e métodos
  32. 32. FISL10 - Fórum Internacional de Software Livre / JAVALI Servlet 3.0  Exemplo: @WebServlet("/soujava") @RolesAllowed("users"); public class TestServlet extends HttpServlet { @PermitAll protected void doGet(HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException {} @RolesAllowed("javali") protected void doPost(HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException {} @DenyAll protected void doTrace(HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException {} }
  33. 33. FISL10 - Fórum Internacional de Software Livre / JAVALI Servlet 3.0  @WebInitParam @WebServlet(name="hello", urlPatterns={"/hello"}, initParams={ @InitParam(name="evento", value="Javali"), @InitParam(name="local", value="Porto Alegre") }) public class JavaliServlet extends javax.servlet.http.HttpServlet{ }  @MultipartConfig  Define o mime/multipart suportado pelo Request
  34. 34. FISL10 - Fórum Internacional de Software Livre / JAVALI JSR 299  Contexts and Dependency Injection for JavaEE (anteriormente WebBeans)  Public Review Ballot  Modelo unificado de injeção de dependência  Modelo para uso integração entre camada Web e transacional  Possibilita o uso direto de um EJB em páginas JSF  Define uma Service Provider Interface (SPI) para integração de novas anotações
  35. 35. FISL10 - Fórum Internacional de Software Livre / JAVALI JSR 299 O que pode ser injetado Classes Java EJB Session Beans Java EE resources (Datasources, JMS topics/queues, etc) Persistence contexts (JPA EntityManager) Referências a Web services Referências remotas a EJBs Framework é aberto a novos tipos
  36. 36. FISL10 - Fórum Internacional de Software Livre / JAVALI JSR 299  @Named(“<nome>”)  Habilita uso com Unified Expression language expressions  Nome definido em  Nome default da classe @Named public public @Named @Named(“hello”) class Hello { class Hello { public String sayHello (String name) { public String sayHello return “hello “ + name; (String name) { } return “hello “ + name; } } }
  37. 37. FISL10 - Fórum Internacional de Software Livre / JAVALI JSR 299  Unified EL Objeto pode ser usado diretamente em uma página JSP ou JSF:  <h:commandButton value=”Say Hello” action=”#{hello.sayHello}”/> <h:commandButton value=”Say Hello” action=”#{Hello.sayHello}”/>
  38. 38. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1  JSR 318 Proposed Final Draft – Março 2009 Versão final planejada para Q3 2009  Simplificar desenvolvimento  Reduzir número de interfaces  Minimizar uso de deployment descriptors  Java Persistence API (JPA) passa a ser definida em uma JSR separada (JSR 317)
  39. 39. FISL10 - Fórum Internacional de Software Livre / JAVALI JEE 6 - Empacotamento simplificado JEE 5 – WEB e EJB JEE 6 Fonte: TS-5055 (JavaOne 2009)
  40. 40. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1  Local Business Interfaces opcionais  Empacotamento simplificado  API simplificada de EJB 3.1  Portable JNDI Names  Simple Component Testing  Passam a ser opcionais CMP e JAX-RPC
  41. 41. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1  Optional Local Business Interfaces Classe simples, sem uma interface local Todos métodos públicos são acessíveis ao cliente Injeção de dependência com @EJB ou lookup para a referência do objeto Client não chama new() do bean Modelo de programação permanece igual ao com Local Business Interface
  42. 42. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1  EJB segue o mesmo modelo de desenvolvimento atual @Stateless public class HelloBean { public String sayHello(String msg) { return “Hello “ + msg; } }
  43. 43. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1  Session Bean com Local Business Interface Fonte: TS-4605 (JavaOne 2009)
  44. 44. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1  Uso no cliente por injeção de dependência  Chamando diretamente o EJB @EJB HelloBean hello; ... hello.sayHello(“FISL”);  JNDI Lookup @Resource SessionContext ctx; HelloBean hello = (HelloBean)ctx.lookup(“hello”);
  45. 45. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB “Lite”  Subset de EJB 3.1 API para Web Profiler  Expansão da portabilidade de EJBs, sem perda da portabilidade  Mesma publicação pode ser feita no “Web Profile” e “Full Profile” Sem alteração no modelo de desenvolvimento Possível pela simplificação do empacotamento .war
  46. 46. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB Profiler's Lite Full (Lite e as seguintes funcionalidades) Local Session Bean Message Driven Beans Annotations /ejb-jar.xml EJB Web Services endpoint CMT e BMT RMI-IIOP intereoperability Segurança declarativa 2.x e 3.x Remote view Interceptor 2.x Local view JPA 2.0/ JTA 1.1 Timer Service CMP e BMP Assynchronous Beans
  47. 47. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1  Portable JNDI names  Sintaxe: java:global[/<app-name>]/<module-name>/<bean- name>[!<fully-qualified-interface-name>]  Por default usa o nome do pacote do bean  Pode ser alterado no application.xml  Pode ser alterado no ejb-jar.xml ou web.xml  Simplifica Local Session lookups entre aplicações  Simplifica o mapeamento de referências a Session beans entre aplicações  Melhora a portabilidade de clientes remotos
  48. 48. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1 - Portable JNDI names  Nome único global java:global[/<app-name>]/<module- name>/<ejb-name>  Nome único na mesma aplicação java:app[/<module-name>]/<ejb-name>  Nome único no módulo java:module/<ejb-name>
  49. 49. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1  Exemplo: package org.soujava; @Stateless public class HelloBean implements Hello { ... }
  50. 50. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1  HelloBean empacotado em helloejb.jar e helloapp.ear java:global/helloapp/helloejb/HelloBean java:global/helloapp/helloejb/HelloBean! org.soujava.Hello java:app/helloejb/HelloBean java:app/helloejb/HelloBean!org.soujava.Hello java:module/HelloBean java:module/HelloBean!org.soujava.Hello
  51. 51. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1  HelloBean empacotado em helloweb.war java:global/helloweb/HelloBean java:global/helloweb/HelloBean!org.soujava.Hello java:app/HelloBean java:app/HelloBean!org.soujava.Hello java:module/HelloBean java:module/HelloBean!org.soujava.Hello
  52. 52. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1  Singleton Componente instanciado uma única vez por aplicação Criado para compartilhamento e suporte a acesso concorrente Em aplicações distribuídas em várias JVMs, existirá uma instância do componente por JVM para cada aplicação
  53. 53. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1  Exemplo Singleton  Exemplo Client @Singleton @Stateless public class SharedBean { public class FooBean { private SharedData shared; // Injeção da referência ao @PostConstruct Singleton bean private void init() { @EJB shared = ...; private SharedBean shared; } public void foo() { public int getData() { int var = shared.getData(); return shared.data; } } } }
  54. 54. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1  Singleton Necessário controlar: Concorrência Integridade de dados Dois mecanismos: Container Managed Concurrency O container controla a concorrência baseado em anotações ao nível de método Bean Managed Concurrency Container habilita acesso total a instância e delega ao desenvolvedor a responsabilidade de controle É necessário definir um dos modelos
  55. 55. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1  Singleton Container Managed Concurrency @Lock(READ) Habilita leitura a todos acessos @Lock(Write) Controla a concorrência permitindo um único acesso @AccessTimeout(value=1,unit=SECONDS) Aplicavel a classes e métodos Especifica o tempo de bloqueio antes do timeout
  56. 56. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1  Singleton  Singleton com Timeout @Singleton @Singleton @Lock(READ) public class SharedBean { public class SharedBean { private SharedData shared; private SharedData shared; @Lock(READ) @AccessTimeout(value=1, unit=SECONDS) public int getData() { public int getData() { return shared.data; return shared.data; } } @Lock(WRITE) public void update(...) { public void update(...) { // update shared data // update shared data } }
  57. 57. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1  BeanManaged Concurrency Controle pelo desenvolvedor  Exemplo: @Singleton @ConcurrencyManagement(BEAN) public class SharedBean { private SharedData shared; synchronized public int getData() { return shared.data; } synchronized public void update(...) { // update shared data } }
  58. 58. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1  Singleton é inicializado pelo container no momento mais apropriado  @Startup indica ao container que o Singleton deve ser inicializado junto com a aplicação  Exemplo @Singleton @Startup public class StartupBean { @PostConstruct private void onStartup() { } @PreDestroy private void onShutdown() { }
  59. 59. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1  @DependsOn Define um grau de dependência para sequência de inicialização de EJBs Exemplo: @Singleton public class B { ... } @DependsOn(“B”) @Singleton public class A { ... } Container deve garantir que A é inicializado após B
  60. 60. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1 – Timer Service  Calendar-based timeout (EJB 2.1)  Persistente (shutdown/restart)  Executado quando “expira”  Exemplo: ScheduleExpression schedule = new ScheduleExpression().dayOfWeek(“Sat”).hour(1); //1:00 AM Timer timer = timerService.createCalendarTimer(schedule);  Novidades com EJB 3.1 Automatic timer creation Cron-based scheduling
  61. 61. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1 – Timer Service  Calendar-based timeout Semântica similar ao Cron Criado automaticamente ou por programação Named attributes second, minute, hour (default = “0”) dayOfMonth, month, dayOfWeek, year (default = “*”)  Attribute Syntax  Single value : minute = “30”  Lista : month = “Jan, Jul, Dec”  Faixa : dayOfWeek = “Mon-Fri”  Wild card : hour = “*”  Incremental : minute = “*/10”
  62. 62. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1 – Timer Service  Exemplos de Calendar Expression: “A cada 15 segundos” (second=”*/15”, minute=”*”, hour=”*”) “Último domingo de Março às 2h.” (hour=”2”, dayOfMonth=”LastSun”,month=”Mar”) “Todo dia 2:30 p.m. U.S. Eastern Time” (minute=”30”, hour=”14”,timezone=”America/New_York”)
  63. 63. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1 – Timer Service  Automatic Timer Creation Container cria o timer automaticamente após o deployment Equivale a chamada: TimerService.createCalendarTimer() Definido por anotação ou no deployment descriptor ejb-jar.xml
  64. 64. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1 – Timer Service  Automatic Timer Creation  Container cria o timer automaticamente após o deployment Equivale a TimerService.createCalendarTimer()  Definido por anotação ou no deployment descriptor ejb- jar.xml Exemplo: @Stateless public class SendStatements { @Resource javax.mail.Session mailSession; // Callback the last day of each month at 8 a.m. @Schedule(hour=”8”, dayOfMonth=”Last”) void sendMonthlyBankStatements() { }}
  65. 65. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1 – Embeddable API  Possibilita execução de EJBs no mesmo processo de aplicações client com JSE  Mesmo comportamento e ciclo de vida quando executado em um container JEE CMT/BMT, injection, threading guarantees  Suporte mandatório mínimo é 3.1 “Lite” API Opcionalmente pode-se adicionar outras funcionalidades
  66. 66. FISL10 - Fórum Internacional de Software Livre / JAVALI EJB 3.1 – Embeddable API  Exemplo: public class BankTester { public static void main(String[] args) { EJBContainer container = EJBContainer.createEJBContainer(); // Acquire Local EJB reference Bank bank = (Bank) container.getContext(). lookup(“java:global/bank/BankBean”); testAccountCreation(bank); }
  67. 67. FISL10 - Fórum Internacional de Software Livre / JAVALI JAX-RS  Java API for RESTful Web Services  JSR 311  Objetivos: Suporte a RESTful em Java Programação declarativa Modelo de anotações Facilitar o desenvolvimento  JSE5 e JEE5 ou superior  Integrado ao JEE6 (JSR 313)
  68. 68. FISL10 - Fórum Internacional de Software Livre / JAVALI JAX-RS  @Path - Indica que o recurso é exposto como uma REST Web Services  @GET – Indica que o método Java é acessível pelo metodo GET HTTP  Exemplo:  @Path("/helloWorld") public class HelloWorldRest { @GET public String sayHello() { return "hello from Java REST; }}  http://localhost/SouJava/resources/helloWorld
  69. 69. FISL10 - Fórum Internacional de Software Livre / JAVALI JAX-RS - @Path – sub recursos  Exemplo: @Path("noticias") public class ListaNoticias { @GET @Path("esporte") public String getNewsSport() {...} @GET @Path("economia") public String getNewsEconomy() {...} } http://localhost/fisl/resources/noticias/economia
  70. 70. FISL10 - Fórum Internacional de Software Livre / JAVALI JAX-RS - EJB  EJB Session Bean como serviço REST  Disponível no JEE 6  Exemplo: @Stateless @Path("ssb") public class StatelessSessionRootResource { @Context private UriInfo ui; @GET public String get() { return "GET: " + ui.getRequestUri().toASCIIString(); }}
  71. 71. What is GlassFish ? • Open Source Community > Users, Partners, Testers, Developers, ... > Started in 2005 on java.net • Application Server > Java EE 5 and 6 Reference Implementation > Enterprise Quality and Open Source > Full Commercial Support from Sun Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 71
  72. 72. State of GlassFish • GlassFish v2 > Java EE 5 Reference Implementation > Clustering, Load Balancing, High Availability > Web-based/CLI Administration Console > .NET 3.x/4.x Web services Interoperability > Current Release: 2.1 • GlassFish v3 > Java EE 6 Reference Implementation > Modular (OSGi), Embeddable, Extensible > Java EE, Rails, Grails, Django, ... > Current Release: v3 Preview Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 72
  73. 73. FISL10 - Fórum Internacional de Software Livre / JAVALI Conclusão  Facilidade de desenvolvimento  Compatibilidade com versões anteriores  Modelo de anotações  Alterações em todas camadas  GlassFish v3 Java EE 6 Reference Implementation  Modelo robusto para desenvolvimento de aplicações corporativas
  74. 74. FISL10 - Fórum Internacional de Software Livre / JAVALI Referências  Java Comunnity Process www.jcp.org  JavaOne http://www.cplan.com/javaone2009/contentcatalog/  Glassfish https://glassfish.dev.java.net/
  75. 75. FISL10 - Fórum Internacional de Software Livre / JAVALI Obrigado Fabio Velloso fabio@soujava.org.br

×