BT

Novidades na plataforma Java EE 8

| por Rafael Sakurai em 29 jun 2015. Tempo estimado de leitura: 2 minutos |

David Delabassee, evangelista de software da Oracle, apresentou no JavaOne América Latina 2015 as possíveis novidades que teremos para o Java EE 8.

Dentre as áreas de melhorias da plataforma Java EE, as principais mudanças esperadas para a nova versão ocorreram principalmente na:

  • Melhoria da camada web e uso do HTML5;
  • Facilidade no desenvolvimento das aplicações corporativas;
  • Infraestrutura das aplicações na nuvem.

Para a camada web temos APIs novas e atualizadas como a JSON-B, nova API que converte Java para objetos JavaScript e vice versa, como por exemplo:

// Parse de JSON para objeto Java.
Produto produto = jsonb.fromJson(new File("produtos.json", Produto.class));

// Parse de objeto Java para JSON.
jsonb.toJson(produto, new File("produto.json"));

A API JSON-P (JSON Processing) 1.1 é usada para referenciar e manipular conteúdo JSON. Através da classe JsonPointer é realizado operações como adicionar, atualizar, remover, entre outros, e com JsonPatch podemos manipular arrays, adicionar, remover, mover, copiar, filtrar e testar de objetos JSON.

A nova API para camada de visualização chamada MVC 1.0 utilizará na camada de modelo CDI, Bean Validation, JPA, entre outros; para camada de view por padrão haverá JSF e JSP, mas já há suporte de outros mecanismos como Freemaker, Mustach e Velocity; e o controle será feito com base no JAX-RS.

Na API Servlet 4.0 novas funcionalidades incluem priorização de stream, push pelo servidor e a migração do HTTP 1.1 para o HTTP 2

Como melhorias na plataforma Java EE, haverá alteração na API JMS, pois atualmente no MessageDriveBean há um código muito verboso como, por exemplo:

@MessageDriven(activationConfig = {
@ActivationConfigProperty(propertyName="connectionFactoryLookup", propertyValue="jms/myConn"),
@ActivationConfigProperty(propertyName="destinationLookup", propertyValue="jms/myQueue"),
@ActivationConfigProperty(propertyName="destinationType", propertyValue="javax.jms.Queue")})
public class MyMDB implements MessageListener {
  public void onMessage(Message message) {
    // extrai e processa o corpo da mensagem.
  }
}

Tendo que informar nomes de classes como Strings, nova versão do JMS 2.1 facilitará a criação de novos MDBs, tanto ao especificar o tipo de fila como ao informar as configurações ou usar os próprios padrões da API como, por exemplo:

@MessageDriven
public class MyMessageBean implements JMSMessageDriveBean {
  @JMSListener(lookup = "java:global/Trades", type = JMSListener.Type.QUEUE)
  public void processTrade(TextMessage tradeMessage) {
    // processa a mensagem.
  }
}

As mudanças na nova versão do CDI 2.0 incluem modularidade, eventos síncronos e assíncronos e ordem de execução dos eventos.

A nova versão do Java EE 8 também está endereçando alguns desafios relacionados a infraestrutura das aplicações na nuvem, com a nova versão da API Java EE Management 2.0 e a nova Java EE Security 1.0 que agora suportará autorização via interceptadores de CDI.

Avalie esse artigo

Relevância
Estilo/Redação

Olá visitante

Você precisa cadastrar-se no InfoQ Brasil ou para enviar comentários. Há muitas vantagens em se cadastrar.

Obtenha o máximo da experiência do InfoQ Brasil.

Dê sua opinião

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão
Comentários da comunidade

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

Dê sua opinião
BT