:index-group: Frameworks
:jbake-type: page
:jbake-status: published

== Plataforma Vaadin Mais Recente - WebApp Simples Em Java

Essa demo vai mostrar como iniciar um webapp simples do Vaadin Flow, baseada na API pura do Java executando no TomEE (webprofile). A versão atual do Vaadin Flow, que foi usada nessa demo é a mais recente. Se você procurar por versões LTS, dê uma olhada nos Exemplos Vaadin nesse repositório com o prefixo LTS. 

A plataforma Vaadin é OpenSource e está disponível no
https://github.com/vaadin/platform[Github]

=== Build desse exemplo

Para 'buildar' esse exemplo, apenas execute _mvn clean install tomee:run_ Você encontrará o app executando em http://localhost:8080

=== Implementação

Essa implementação está usando a https://vaadin.com/flow[Flow API] da plataforma Vaadin.

[source,java]
----
@Route("")
public class HelloVaadinV10 extends Composite<Div> {
    public HelloVaadinV10() {
        final VerticalLayout layout = new VerticalLayout();
        layout
            .add(new Button("click me",
                            event -> layout.add(new Label("clicked again"))
            ));
        //set the main Component
        getContent().add(layout);
    }
}
----

A documentação da plataforma Vaadin atual está disponível
https://vaadin.com/docs/[aqui]

=== Informações de Suporte

A partir do Vaadin 10, o Vaadin está mudando para um modelo de release train com quatro grandes releases todo ano. Isso permite á eles trazerem novos recursos mais rapidamente para desenvolvedores. O Vaadin continua o seu compromisso com a estabilidade á longo prazo com os releases long-term support (LTS). Os releases LTS virão aproximadamente a cada dois anos e serão oferecidos cinco anos de suporte.
