Frameworks RIA para JSF lado a lado

Tamanho: px
Começar a partir da página:

Download "Frameworks RIA para JSF lado a lado"

Transcrição

1 Maykon Junior Vaz é graduando em Bacharelado em Sistemas de Informação na Universidade do Estado de Minas Gerais Frutal, onde desenvolveu diversos projetos Web utilizando tecnologia JSF. Sylvio Barbon Junior é formado em Engenharia, Ciência da Computação. Mestre em Física Computacional e atualmente doutorando em Física Computacional pelo IFSC/ USP. Possui certificação SCJP, é docente na Universidade do Estado de Minas Gerais (UEMG) e na FATEC de São José do Rio Preto. Frameworks RIA para JSF lado a lado Entrada de Dados Uma comparação detalhada dos componentes RIA mais populares do JSF: RichFaces, IceFaces, PrimeFaces como os seus componentes de Entrada de Dados. O desenvolvimento para Web com Java está repleto de opções de tecnologias das mais variadas finalidades, tais como produtividade, robustez e flexibilidade. Considerando estas finalidades, o JSF é uma das soluções mais adotadas pelo mercado. O objetivo deste artigo é apresentar as principais características dos componentes de entrada de dados (famosos inputs de formulários HTML) dos frameworks IceFaces, RichFaces e PrimeFaces, que ajudam a tornar a camada de apresentação ainda mais rica e repleta de recursos. Com isso, espera-se que os desenvolvedores tenham uma base para escolher dentre um desses frameworks para utilizar em sua aplicação. 35

2 : : : : Podemos dizer que a interatividade é uma das características que mais chama a atenção dos usuários na web. Devido a esta necessidade, os sites dinâmicos devem apresentar cada vez componentes mais interativos, que são chamados de RIA (Rich Internet Applications). Na plataforma Java EE, a tecnologia JSF (JSR 314) estabelece um padrão para aplicações Web fundamentadas em componentes de interface, que junto com o uso de Ajax, proporcionam uma experiência cada vez mais próxima de um software desktop. Assim, JSF é um framework criado para facilitar o desenvolvimento de aplicações web com interfaces de usuário sofisticadas. Isso é feito com componentes de interface gráfica que interagem com os objetos de negócio de forma simples. Esta tecnologia faz uso do padrão MVC para Web e se relaciona com características de interface gráfica orientada a eventos. Esse padrão MVC é recomendado pela Sun Microsystems para o desenvolvimento Web com Java EE. Outra característica do JSF, atualmente em sua versão 2.0 (assunto abordado na MundoJ número 40), é a clara separação entre as camadas de lógica de negócio e a camada de interface de usuário. Para facilitar o uso do JSF com Ajax e adicionar componentes diferenciado baseados na JSR-314, três bibliotecas de componentes destacam-se: org); chfaces); Estas bibliotecas assemelham-se em funcionalidades e recursos, porém diferenciam-se principalmente em design de interface e variedade de componentes. Este artigo apresentará o funcionamento básico de bibliotecas sobre o JSF versão 1.2, pois nem todos os frameworks possuem versão estável para o JSF 2.0. Na sequência, serão apresentados componentes dos três frameworks agrupados segundo critérios baseados no uso e função dos componentes. O objetivo é que o desenvolvedor possa escolher com mais critério que framework utilizar em sua aplicação. O escopo deste artigo, por questões de espaço, abrange apenas componentes para a Interface de Entrada de Dados. Futuramente outros artigos irão abordar outros tipos de componente. Funcionamento dos frameworks baseados em JSF Os frameworks abordados neste artigo adicionam funcionalidades Ajax às páginas sem que o desenvolvedor necessite escrever uma linha de código JavaScript. Em muitos casos nem mesmo é preciso modificar o componente faces utilizado, bastando acrescentar um componente que adiciona a funcionalidade Ajax, como, por exemplo, o <a4j:support> do RichFaces. Na figura 1 podemos ver toda arquitetura de uma página JSF junto à utilização de um Framework baseado na implementação citada, neste caso o RichFaces. A principal característica da tecnologia Ajax é sua capacidade de troca de mensagens de forma assíncrona, em que a informação não fica restrita à requisição e resposta de todo conteúdo de uma página ao cliente. É possível a troca de informação entre o cliente e o servidor sem necessidade de reenvio de toda a página Web, o que possibilita a manipulação de alguns trechos da página e na execução de procedimentos como validações e cálculos, sem a necessidade da atualização de todo o conteúdo renderizado ao cliente (navegador), garantindo uma maior interatividade entre a aplicação e o usuário. A figura 1 contempla a troca de mensagens entre um cliente e um servidor através de mensagens Ajax. É possível observar que toda máquina Ajax está localizada no cliente e é manipulada pela linguagem Javascript, que encaminha uma requisição e também é responsável pela sua recepção. No caso da utilização de Ajax pelo framework RichFaces, uma camada (Ajax4jsf) está situada entre o kernel JSF e o cliente, assim é possível reconhecer requisições XML (padrão Ajax) e construir respostas na linguagem citada, sem modificar o padrão JSF, garantindo a sua sequência normal de fases independentemente do uso ou não da tecnologia assíncrona. Figura 1. Arquitetura Cliente Servidor com Ajax (retirada do RichFaces Developer Guide ver referências). Outra característica importante é a presença de atributos específicos para Ajax na grande maioria dos componentes, o que o torna encapsulado e configurável o uso dessa tecnologia diretamente por cada componente. Um exemplo é o componente <p:commandbutton> do pacote PrimeFaces, no qual através dos atributos onstart e oncomplete é possível especificar uma ação a ser realizada quando a requisição Ajax for iniciada e finalizada. A Listagem 1 apresenta o componente citado, que exibe um alert JavaScript com mensagens específicas para início e final da requisição assíncrona. Listagem 1. Implementação de atributos Ajax em um componente commandbutton. <p:commandbutton value= Ajax Submit update= display onstart= alert( Starting ) oncomplete= alert( Done ) /> O desenvolvedor que optar por um framework específico não precisa substituir o uso dos componentes JSF tradicionais. O framework deve ser utilizado como complemento, adicionando as funcionalidades propiciadas pelos novos componentes. Isso é devido ao framework encapsular a especificação faces e disponibilizar o uso dos componentes do padrão JSF. A figura 2 exibe o kernel JSF (JSF Application) encapsulado pelo framework IceFaces, identificado como 1 ICEfaces Framework, que possibilita a comunicação via Ajax através do Ajax Bridge sem modificar a estrutura tradicional do JSF. Como resposta a requisição, destacado como 3 ICEfaces Components, é possível observar o uso dos componentes do framework na renderização e manipulação do DOM, que são os objetos disponíveis pela linguagem HTML, como, por exemplo, os objetos de formulário Web.Considerando os navegadores indicados para o uso dos frameworks, temos: 36

3 Listagem 3. Configuração do RichFaces no web.xml. <context-param> <param-name>org.richfaces.skin</param-name> <param-value>bluesky</param-value> </context-param> <context-param> <param-name>org.richfaces.control_skinning</param-name> <param-value>enable</param-value> </context-param> Figura 2. Encapsulamento do JSF pelo Framework IceFaces (retirada do ICEFaces DataSheet ver referências). Para Saber Mais A edição 14 da MundoJ traz o artigo Ajax Desenvolvendo uma Web mais interativa. No qual se apresenta conceitos desta tecnologia, como também usos e vantagens. A edição 22 da MundoJ também trata do assunto. Configuração dos frameworks Listagem 2. Configuração do IceFaces no web.xml. <servlet> <servlet-name>persistent Faces Servlet</servlet-name> <servlet-class>com.icesoft.faces.webapp.xmlhttp.persistentfacesservlet</ servlet-class> <load-on-startup> 1 </load-on-startup> </servlet> <servlet> <servlet-name>blocking Servlet</servlet-name> <servlet-class>com.icesoft.faces.webapp.xmlhttp.blockingservlet</ servlet-class> <load-on-startup> 1 </load-on-startup> </servlet> <servlet-name>faces Servlet</servlet-name> <url-pattern>*.jspx</url-pattern> <servlet-name>persistent Faces Servlet</servlet-name> <url-pattern>*.iface</url-pattern> <servlet-name>persistent Faces Servlet</servlet-name> <url-pattern>/xmlhttp/*</url-pattern> <servlet-name>blocking Servlet</servlet-name> <url-pattern>/block/*</url-pattern> <filter> <display-name>richfaces Filter</display-name> <filter-name>richfaces</filter-name> <filter-class>org.ajax4jsf.filter</filter-class> </filter> <filter-mapping> <filter-name>richfaces</filter-name> <servlet-name>faces Servlet</servlet-name> <dispatcher>request</dispatcher> <dispatcher>forward</dispatcher> <dispatcher>include</dispatcher> </filter-mapping> Para que o framework desejado seja utilizado, é necessário o registro da Servlet específica de cada biblioteca. Como qualquer outro aplicativo Java Web, deve-se mapear a Servlet, nomeá-la internamente e publicamente no web.xml. As Listagens 2, 3 e 4 apresentam as configurações necessárias para os frameworks IceFaces, RichFaces e PrimeFaces, respectivamente. É possível verificar algumas diferenças já no mapeamento das bibliotecas, RichFaces é baseado em Filters e IceFaces e PrimeFaces em Servlets, além da possibilidade de especificar um Skin (padrão de cores, fontes e formatos) diretamente pelo arquivo de configuração. Vale a pena destacar que no caso do RichFaces, este framework apresenta um componente Skin, que mesmo tendo sua associação no web.xml permite a mudança dinâmica de layout pelo usuário baseado em uma série de Skins predefinidos. Listagem 4. Configuração do PrimeFaces no web.xml. <servlet> <servlet-name>resource Servlet</servlet-name> <servlet-class>org.primefaces.resource.resourceservlet</servlet-class> </servlet> <servlet-name>resource Servlet</servlet-name> <url-pattern>/primefaces_resource/*</url-pattern> O uso de mais de um framework com a mesma função, como, por exemplo, comunicação Ajax, não é recomendado pelos próprios fornecedores dos frameworks, uma vez que todos encapsulam o kernel JSF e não estão preparados para manipular outras filtragens, o que pode gerar diferentes erros nas requisições. Finalizando as configurações dos frameworks, deve-se ajustar a taglib no caso de integração com JSP de cada framework para realizar a importação da tecnologia para as páginas e disponibilizar os componentes na camada de view. 37

4 : : : : IceFaces PrimeFaces Taglib Prefix Framework RichFaces rich Tabela 1. Taglib dos frameworks Icefaces, Primefaces e Richfaces. Caso o projeto utilize como padrão a camada de apresentação baseada em Facelets, os seguintes namespaces devem ser acrescentados, na ordem Icefaces, RichFaces e PrimeFaces: xmlns:ice= xmlns:a4j= xmlns:rich= xmlns:p= Mais detalhes e características das configurações podem ser encontradas nas documentações referenciadas ao final deste artigo. Componentes de interface para entrada de dados Uma das maiores preocupações em aplicações Web é o suporte à requisição de informação, uma vez que os já tradicionais formulários HTML não garantem entrada de dados com qualidade e facilidade. Problemas relacionados à eficiência de uso, facilidade de aprendizado e funcionalidade correta são abordados pelos componentes descritos nessa seção. Serão discutidos componentes com equivalências HTML a <input>, <select> e <textarea>. O framework IceFaces apresenta os componentes: <ice:inputtext>, <ice:inputsecret>, <ice:inputhidden>, <ice:inputtextarea>, <ice:inputrichtext>, <ice:selectoneradio>, <ice:selectonelistbox>, <ice:selectbooleancheckbox>, <ice:selectmanycheckbox>, <ice:selectmanylistbox> e <ice:selectinputdate>. Cada um com seu respectivo similar HTML, uma característica importante destes componentes são os atributos valuechangelistener e partialsubmit. O primeiro especifica um método a ser disparado quando modificado o conteúdo do input, já o segundo especifica um campo único a ser enviado na requisição. Já o PrimeFaces apresenta uma quantidade menor de componentes para entrada de dados, sendo eles: <p:inputmask>, <p:password>, <p:autocomplete>, <p:editor>, <p:calendar>, <p:spinner>, <p:slider> e <p:inplace>. Diferente do IceFaces, o PrimeFaces não possui os componentes próprios para input de texto simples, porém os três primeiros componentes citados possuem atributos de validação e auxílio ao usuário. Finalmente, o Framework RichFaces com seus: <rich:editor>, <rich:combobox>, <rich:calendar>, <rich:inputnumberspinner>, <rich:inputnumberslider>, <rich:inplaceinput>, <rich:suggestionbox> e <rich:inplaceselect> apresentam componentes semelhantes aos do PrimeFaces. ice p a4j Os componentes básicos do JSF, representados pelo prefixo h, representam as tags HTML. Portanto, independentemente do framework que esteja sendo usado, podemos utilizar os códigos simples de HTML através das tags do JSF. A tabela 1 exibe a lista de componentes para o framework que não possui um componente especifico, a tabela exibe um similar HTML (componente h). Para facilitar a diferenciação dos componentes, separamos por cor. IceFaces = verde, PrimeFaces = turquesa, RichFaces = vermelho e componentes padrões JSF = amarelo. IceFaces PrimeFaces RichFaces <ice:inputtext> <h:inputtext> <h:inputtext> <ice:inputsecret> <p:password> <h:inputsecret> <ice:inputhidden> <h:inputhidden> <h:inputhidden> <ice:inputtextarea> <h:inputtextarea> <h:inputtextarea> <ice:inputrichtext> <p:editor> <rich:editor> <ice:selectoneradio> <h:selectoneradio> <h:selectoneradio> <ice:selectonelistbox> <h:selectonelistbox> <h:selectonelistbox> <ice:selectbooleancheckbo> <h:selectbooleancheckbox> <h:selectbooleancheckbox> <ice:selectmanycheckbox> <h:selectmanycheckbox> <h:selectmanycheckbox> <ice:selectmanylistbox> <h:selectmanylistbox> <h:selectmanylistbox> <ice:selectonemenu> <h:selectonemenu> <rich:combobox> <ice:selectinputdate> <p:calendar> <rich:calendar> <p:spinner> <p:slider> <p:inplace> <rich:inputnumberspinner> <rich:inputnumberslider> <rich:inplaceinput> <ice:selectinputtext> <p:autocomplete> <rich:suggestionbox> <p:inputmask> <rich:inplaceselect> Tabela 2. Componentes de entrada. Para exemplificar a criação de um formulário, a Listagem 5 apresenta um Cadastro de Usuário, onde são utilizados componentes de entrada de dados que responderão à requisição HTML com o retorno de <input> dos tipos text e password, um <select> e um <textarea>. Neste exemplo, foi utilizado um ManagedBean chamado usuariobean. Esse exemplo usa apenas os componentes padrão disponibilizados pelo próprio JSF. A figura 3 exibe a saída renderizada pelo navegador da implementação apresentada pela Listagem 5. Listagem 5. Exemplo com JSF (prefix h). <h1><h:outputtext value= Cadastro de Usuário /></h1> <h:panelgrid columns= 2 > <h:outputtext value= Nome: /> <h:inputtext value= #{usuariobean.usuario.nome /> <h:outputtext value= Senha: /> <h:inputsecret value= #{usuariobean.usuario.senha /> <h:outputtext value= Categoria: /> <h:selectonemenu id= Categoria value= #{usuariobean.usuario. categoria > <f:selectitems value= #{usuariobean.listacategoira /> </h:selectonemenu> <h:outputtext value= Descrição: /> <h:inputtextarea value= #{usuariobean.usuario.descricao /> 38

5 Baseado na implementação da Listagem 6, a figura 4 exibe os componentes renderizados pelo navegador. O componente exibido à direita na figura 4, <ice:inputrichtext> apresenta suas versões RichFaces e PrimeFaces, conforme listado na tabela 1, que são, respectivamente, <p:editor> e <rich:editor>. Figura 4. Componentes de entrada com IceFaces. Editores de texto Listagem 6. Exemplo com IceFaces. <ice:panelgrid columns= 2 > <ice:panelgrid columns= 2 > <ice:outputtext value= Nome /> <ice:inputtext/> <ice:outputtext value= Senha /> <ice:inputsecret/> <ice:outputtext value= Categoria /> <ice:selectonemenu value= Teste > Figura 3. Componentes de entrada com JSF. A Listagem 6 apresenta uma implementação similar utilizando o Framework IceFaces, onde o mesmo formulário Cadastro de Usuário é implementado, porém agora com os componentes IceFaces. Em adição ao código da Listagem 5, a implementação IceFaces exibida pela Listagem 6 apresenta o componente <ice:inputrichtext>, cuja função é acrescentar funcionalidade de edição e formatação de texto tal qual um editor de texto desktop. Com o uso deste componente é possível verificar que com o uso de apenas alguns atributos no componente é possível disponibilizar ao usuário uma interface rica com abundantes opções. A Listagem 7 apresenta a codificação para inserir o componente <rich:editor>. Este componente possui o atributo theme que caso não seja configurado como advanced, será renderizado o editor de texto na forma básica, com poucos recursos. Além dos recursos apresentados na versão advanced, o framework RichFaces possibilita a adição de novos recursos, como gravar, abrir arquivo, entre outros. Para mais opções de configuração deve-se acessar o guia do desenvolvedor referenciado no fim do artigo. Listagem 7. Trecho de código para adicionar <rich:editor> framework RichFaces. <rich:panel style= width: 500px; > <h:outputtext value= Editor de Texto Completo /> <rich:editor theme= advanced language= pt ></rich:editor> A figura 5 exibe as duas variações de editores de texto (rich:editor), deixando bem clara a quantidade de recursos disponibilizados para o usuário que, segundo critérios de usabilidade, devem adaptar-se de acordo com o conteúdo e características do usuário e sistema. <f:selectitem value= Aluno itemlabel= Aluno /> <f:selectitem value= Professor itemlabel= Professor /> <f:selectitem value= Administrador itemlabel= Administrador /> </ice:selectonemenu> <ice:outputtext value= Descrição /> <ice:inputtextarea rows= 10 /> </ice:panelgrid> <ice:panelgrid width= 600 > <ice:inputrichtext toolbar= Default value= Digite aqui o seu Comentario!!! /> </ice:panelgrid> </ice:panelgrid> Figura 5. Componente <rich:editor> (à esquerda sem declarar o theme e à direita declarado como advanced). Já o componente <p:editor> do framework PrimeFaces apresentado na Listagem 8 não possui a opção de editor básico, como representado pela figura 6, isto faz com que o mesmo não esteja preparado para qualquer tipo de aplicação, muitas vezes apresentando ao usuário opções não desejadas. Porém, como já descrito, o componente é de código aberto, o que possibilita a limitação implementada pelo desenvolvedor, através da modificação das classes básicas e css do pacote. 39

6 : : : : Listagem 8. Trecho de código para adicionar <p:editor> framework PrimeFaces. <p:editor language= pt /> Listagem 9. Componente <p:autocomplete> PrimeFaces. <h:panelgrid columns= 2 width= 200 > <h:panelgrid width= 150 > <h:outputlabel value= Auto Completar Nome: for= acsimples /> <h:panelgrid width= 200 > <p:autocomplete id= acsimples value= #{usuariomanagedbean.string completemethod= #{usuariomanagedbean.listanome /> Calendários Figura 6. Componente <p:editor>. Além de componentes com recursos refinados como os editores de texto comentados, temos outro importante recurso em comum aos três frameworks discutidos: o componente de Calendário conforme representado na figura 7. Ele é essencial para evitarmos erros e filtrar corretamente a entrada de dados, uma vez que o componente vem ajustado para o uso de máscaras que auxiliam o usuário na digitação de datas. Listagem 10. Método do Managed Bean utilizado para retornar a lista de sugestão (usuariomanagedbean). public List<String> listanome(string texto) { List<String> lista = new ArrayList<String>(); usuario = new Usuario(); for (String nome : usuario.getlistanomes()) { if (nome.tolowercase().startswith(texto.tolowercase())) { lista.add(nome); return lista; Figura 7. Calendários IceFaces, RichFaces e PrimeFaces. Autocompletar Outro componente muito interessante, principalmente por apresentar conceito de usabilidade, é o de autocompletar. Este recurso pode ser muito útil para auxiliar o usuário em preencher inputs e validar a informação fornecida. Na Listagem 9 é demonstrado o uso de um managed bean chamado usuariomanagedbean para buscar uma lista de nomes para serem sugeridos conforme o usuário digite no campos. Na Listagem 10 foi criado o método responsável por retornar esta lista. A figura 8 apresenta os componentes de autocompletar do Prime Faces e do Rich Faces.Para a implementação do método listanome (Listagem 10), na linha três é realizada uma instanciação da classe Usuario. Nesta classe existe um atributo listanomes (List<String> listanomes), o qual fornece uma lista de Strings para serem comparadas com o texto digitado e adicionado na caixa de sugestão, conforme mostrado na figura 8. Nas Listagens 11 e 12 está a implementação do mesmo componente, porém para RichFaces. É possível verificar que não existe muita diferença na classe e no managedbean. A única diferença básica é a questão que o método que retorna a lista em RichFaces recebe como parâmetro um Object diferente do PrimeFaces que recebe uma String. Figura 8. Componentes de autocompletar dos frameworks PrimeFaces e RichFaces, respectivamente. Listagem 11. Componente <rich:suggestionbox> RichFaces. <rich:panel style= width:270px; > <h:outputtext value= Sugestão /> <a4j:form> <h:outputtext value= Carro: /> <h:inputtext id= car value= #{usuariomanagedbean.carro /> <rich:suggestionbox for= car var= result height= 150 width= 150 suggestionaction= #{usuariomanagedbean.listacarro > <h:column> <h:outputtext value= #{result /> </h:column> </rich:suggestionbox> </a4j:form> 40

7 Listagem 12. Método do managed bean utilizado para retornar a lista de sugestão (usuariomanagedbean). public List<String> listacarro(object texto) { usuario = new Usuario(); List<String> listacarro = new ArrayList<String>(); for (String nome : usuario.getlistacarro()) { if (nome.tolowercase().startswith(((string) texto).tolowercase())) { listacarro.add(nome); return listacarro; Na classe Usuario existe um atributo que armazena uma lista de nome de carros (List<String> listacarro), esta, encapsulada pelo método getlistacarro que é utilizado como ferramenta de comparação com o texto digitado no campo e adicionado na caixa de sugestão, conforme mostra a figura 8. Spinner e Slider Outros componentes que facilitam o preenchimento de formulários que contêm campos de incremento e decremento de valores são o Spinner e Slider, que estão presentes nos frameworks PrimeFaces e RichFaces. A Listagem 13 apresenta o componente da RichFaces, que através do pressionar do botão disponibilizado, possibilita a modificação do número fornecido. Já a Listagem 14 exibe o código para implementação do Spinner segundo a implementação Prime- Faces, muito semelhante à implementação RichFaces. A figura 9 exibe a renderização dos componentes com suas interfaces padrão. Listagem 13. Componente <rich:inputnumberspinner> do framework RichFaces. <rich:panel style= width:270px; > <h:outputtext value= Spinner /> <h:outputtext value= Componente Spinner: /> <rich:inputnumberspinner value= 50 /> Listagem 14. Componente <p:spinner> do framework Prime- Faces. <p:panel style= width: 300px; > <h:outputtext value= Spinner /> <h:outputtext value= Componente spinner: /> <p:spinner maxlength= 10 /> </p:panel> Figura 9. Componente Spinner dos frameworks RichFaces e PrimeFaces, respectivamente. Como comentado, o componente Slider é utilizado no incremento e decremento de valores, com atributos que possibilitam a configuração do passo de cada incremento, assim como a orientação e comprimento do componente podem ser ajustados de acordo com o design e necessidade do formulário. As Listagens 15 e 16 apresentam a implementação desse componente, e a renderização dos mesmos está exposta na figura 10. Listagem 15. Componente <p:slider> do framework Prime- Faces. <p:panel style= width: 300px; > <h:outputtext value= Slider /> <h:outputtext value= Componente Slider Horizontal: /> <p:slider maxvalue= 50 minvalue= 0 tickmarks= 5 type= horizontal for= cmp > <h:inputtext id= cmp /> </p:slider> <h:outputtext value= Componente Slider Vertical: /> <p:slider maxvalue= 50 minvalue= 0 tickmarks= 5 type= vertical for= cmp2 > <h:inputtext id= cmp2 /> </p:slider> </p:panel> Listagem 16. Componente <rich:inputnumberslider> do framework RichFaces. <rich:panel style= width:300px; > <h:outputtext value= Slider /> <h:outputtext value= Componente Slider Vertical: /> <rich:inputnumberslider height= 100 orientation= vertical maxlength= 30 /> <rich:spacer height= 30 /> <h:outputtext value= Componente Slider Horizontal: /> <rich:inputnumberslider value= 50 /> 41

8 : : : : Conforme mostrado na figura 11, quando o usuário clicar onde está escrito: Digite Aqui Seu Nome, aparecerão os campos conforme apresentado após o Inplace. O componente apresenta implementação com o framework RichFaces, conforme apresentado na Listagem 18. Um exemplo do resultado do inplace RichFaces é exibido na figura 12, antes e depois de pressionar o componente. Inplace Figura 10. Componente Slider dos frameworks PrimeFaces e RichFaces, respectivamente. O framework RichFaces e PrimeFaces possui outro componente em comum, não apresentado no IceFaces. O componente Inplace. A função deste componente é esconder um campo de entrada até que o usuário clique no texto do inplace. Como mostra a figura 11. O fato de esconder o componente tem justamente a função de exigir que o usuário leia o componente e indicar qual tipo de informação deve ser preenchida no campo. Listagem 17. Componente <p:inplace> do framework PrimeFaces. <h:outputtext value= Nome: /> <p:inplace label= Digite Aqui Seu Nome > <h:inputtext value= #{usuariomanagedbean.usuario.nome /> <h:outputtext value= - Maior de 21 anos: /> <h:selectbooleancheckbox/> </p:inplace> Figura 11. Componente <p:inplace> do Framework PrimeFaces. Listagem 18. Componente <rich:inplaceinput> do framework RichFaces. <rich:panel style= width:270px; > <h:outputtext value= Inplace Simples ></h:outputtext> <h:panelgrid columns= 2 > <h:outputtext value= Nome: /> <rich:inplaceinput defaultlabel= click para digitar seu nome /> <h:outputtext value= /> <rich:inplaceinput defaultlabel= click para digitar seu /> Figura 12. Componente <rich:inplaceinput> do framework RichFaces. O RichFaces tem em sua coleção de componentes um Inplace específico para componentes do tipo select, o <rich:inplaceselect>, cuja implementação pode ser vista na Listagem 19 e sua respectiva exibição na figura 13. Listagem 19. Componente <rich:inplaceselect> do framework RichFaces. <rich:panel style= width:270px; > <h:outputtext value= Inplace com Select /> <h:panelgrid columns= 2 > <h:outputtext value= Tamanho: /> <rich:inplaceselect defaultlabel= Click Aqui para Escolher > <f:selectitem itemvalue= 0 itemlabel= Mínimo /> <f:selectitem itemvalue= 1 itemlabel= Pequeno /> <f:selectitem itemvalue= 2 itemlabel= Médio /> <f:selectitem itemvalue= 3 itemlabel= Grande /> <f:selectitem itemvalue= 4 itemlabel= Gigante /> </rich:inplaceselect> Figura 13. Componente <rich:inplaceselect> do framework RichFaces. Assim, o RichFaces possui dois componentes diferentes para a função Inplace (<rich:inplaceinput> e <rich:inplaceselect>), já 42

9 PrimeFaces dispõe de apenas um componente, porém combinado com diversos outros, conforme visto na Listagem 17. Ele esconde qualquer componente, podendo ser um input, select, checkbox, calendar etc. Entradas com máscara Como último componente a ser apresentado neste artigo, o <p:inputmask> do framework PrimeFaces tem como finalidade criar máscaras para os inputtexts. Com uma grande facilidade, é possível configurar um formulário com máscaras nos campos e assim implementar validação de dados. O componente é exibido na Listagem 20 e sua saída HTML exibida na figura 14. Listagem 20. Componente <p:inputmask> do framework PrimeFaces. <h:panelgrid columns= 2 > <h:outputtext value= Data: /> <p:inputmask value= #{pedidomaskbean.pedido.date mask= 99/99/9999 /> <h:outputtext value= Telefone: /> <p:inputmask value= #{pedidomaskbean.pedido.phone mask= (999) /> <h:outputtext value= CPF: /> <p:inputmask value= #{pedidomaskbean.pedido.cpf mask= /> <h:outputtext value= SSN: /> <p:inputmask value= #{pedidomaskbean.pedido.ssn mask= /> <h:outputtext value= Codigo Produto: /> <p:inputmask value= #{pedidomaskbean.pedido.codproduto mask= a*-999-a999 /> <p:commandbutton value= Reset type= reset /> <p:commandbutton value= Submit update= form:output /> Para Saber Mais A edição 40 da MundoJ traz o artigo As novidades do JSF 2.0 sobre JSF 2.0 que aborda as características da tecnologia sem considerar o uso de frameworks, apenas as novidades lançadas na nova versão. Considerações finais Independentemente do Framework JSF utilizado, o desenvolvimento de um aplicativo RIA possibilita o uso mais eficiente do software projetado, aumentando ainda mais a usabilidade e alcançando um ponto máximo de produtividade no desenvolvimento de aplicativos enterprise Java EE. Considerando o uso pelos desenvolvedores brasileiros, em sua maioria utilizam o framework RichFaces por ser o framework mais tradicional e mantido pela popular JBoss, além de apresentar Toolkits de desenvolvimento para IDE Eclipse são distribuídos com componentes robustos e compatíveis com a maioria dos navegadores. Já o Icefaces tem seu uso estimulado diretamente pela SUN, porém não apresenta uma popularidade muito boa, devido a complexidade de configuração (comparada a outros concorrentes) e menor compatibilidade a navegadores em suas versões iniciais. Já o PrimeFaces é o caçula dos frameworks analisados, é o de mais fácil configuração apresenta componentes leves, o que torna a solução ideal para aplicações baseadas em servidores menos robustos. O desenvolvedor tem em mãos frameworks Open Source, que junto às comunidades de desenvolvimento é possível avançar a tecnologia e vivenciar inovações cada vez mais velozes. Os frameworks seguem os padrões Java EE para soluções empresariais, o que significa que independentemente da escolha, todos seguem um mesmo conceito, fato que torna a migração ou mesmo implementação em conjunto facilitada. Todos os frameworks trazem soluções de segurança, cada um com seu componente em especial, o que faz com que a utilização dos frameworks não apenas solucione dificuldades na camada de apresentação, mas também traga vantagens para outras questões. Problemas de segurança, como SQL Injection e submissão de formulários falsos (fake form submission), são facilmente tratados por eles. Não é necessária uma descrição muito prolongada sobre vantagens da utilização de Ajax com o uso dos componentes. Em resumo, basta uma tag para criar, tratar, recuperar e notificar uma requisição Ajax, sem preocupação com JavaScript e nem com compatibilidade com os diversos navegadores mais utilizados no Referências Figura 14. Componente <p:inputmask> do framework PrimeFaces. MANN, K. D. JavaServer Faces in Action. Greenwich: Manning, JACOBI, J.; FALLOWS, J. R. Pro JSF and Ajax: Building Rich Internet Components. [S.l.]: Apress, GEARY, D.; HORSTMANN, C. Core JavaServer Faces. 2ª. ed. [S.l.]: Prentice Hall, NIELSEN, J., LORANGER, H., Projetando Web Sites com Usabilidade, Campus, ICEFaces DataSheet, ICEFaces Developer s Guide, Versão 1.8, RichFaces Developer Guide, PrimeFaces User s Guide, guide_ pdf 43

Minha primeira aplicação utilizando Java Server Faces + Glassfish

Minha primeira aplicação utilizando Java Server Faces + Glassfish Minha primeira aplicação utilizando Java Server Faces + Glassfish Este tutorial apresenta de forma simples, como iniciar no desenvolvimento com o framework Java Server faces 1.2, utilizando-se o servidor

Leia mais

Desenvolvendo Portlets utilizando JSF, Ajax, Richfaces. Gustavo Lira Consultor 4Linux gustavo@4linux.com.br

Desenvolvendo Portlets utilizando JSF, Ajax, Richfaces. Gustavo Lira Consultor 4Linux gustavo@4linux.com.br Desenvolvendo Portlets utilizando JSF, Ajax, Richfaces Gustavo Lira Consultor 4Linux gustavo@4linux.com.br Desenvolvendo Portlets utilizando JSF, Ajax, Richfaces O que será apresentado é uma continuação

Leia mais

JSF2 e AJAX. Desenvolvimento Web com. Construa aplicações Web mais interativas e elegantes

JSF2 e AJAX. Desenvolvimento Web com. Construa aplicações Web mais interativas e elegantes Desenvolvimento Web com JSF2 e AJAX Construa aplicações Web mais interativas e elegantes Wagner Borges (wagner@quebrandoparadigmas.com): é formado em Sistemas de Informação pela FACID e especializado em

Leia mais

CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011

CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011 CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011 O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma

Leia mais

AJAX Reverso. Comet com DWR. baseado em

AJAX Reverso. Comet com DWR. baseado em AJAX Reverso baseado em Comet com DWR Aprenda a trabalhar com o AJAX Reverso, técnica ainda pouco explorada que proporciona aos sistemas Web a funcionalidade de atualizar os clientes conforme o servidor

Leia mais

PROJETO PEDAGÓGICO DE CURSOS

PROJETO PEDAGÓGICO DE CURSOS 1 de 6 PROJETO PEDAGÓGICO DE CURSOS BURITREINAMENTOS MANAUS-AM MARÇO / 2015 2 de 6 PACOTES DE TREINAMENTOS BURITECH A Buritech desenvolveu um grupo de pacotes de treinamentos, aqui chamados de BuriPacks,

Leia mais

MÓDULO Programação para Web 2

MÓDULO Programação para Web 2 MÓDULO Programação para Web 2 USANDO O JSF Continuação Interdependência e Injeção Instâncias de Managed Beans podem conversar entre si para dividir o processamento das requisições dos usuários de acordo

Leia mais

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES Alexandre Egleilton Araújo, Jaime Willian Dias Universidade Paranaense (Unipar) Paranavaí PR Brasil araujo.ale01@gmail.com, jaime@unipar.br Resumo.

Leia mais

Use a Cabeça! FREEMAN, Eric e Elisabeth. HTML com CSS e XHTML BASHMAN, Brian / SIERRA Kathy / BATES, Bert. Servlets & JSP

Use a Cabeça! FREEMAN, Eric e Elisabeth. HTML com CSS e XHTML BASHMAN, Brian / SIERRA Kathy / BATES, Bert. Servlets & JSP Use a Cabeça! FREEMAN, Eric e Elisabeth. HTML com CSS e XHTML BASHMAN, Brian / SIERRA Kathy / BATES, Bert. Servlets & JSP Software cliente: browser e outros Protocolo HTTP Infraestrutura de transporte

Leia mais

CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias

CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma Orientado a Objetos

Leia mais

CURSO DESENVOLVEDOR JAVA Edição 2009

CURSO DESENVOLVEDOR JAVA Edição 2009 CURSO DESENVOLVEDOR JAVA Edição 2009 O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma Orientado a Objetos e com o uso

Leia mais

CURSO DESENVOLVEDOR JAVA Edição 2010

CURSO DESENVOLVEDOR JAVA Edição 2010 CURSO DESENVOLVEDOR JAVA Edição 2010 O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma Orientado a Objetos e com o uso

Leia mais

DESENVOLVENDO APLICAÇÕES UTILIZANDO JAVASERVER FACES E MVC

DESENVOLVENDO APLICAÇÕES UTILIZANDO JAVASERVER FACES E MVC DESENVOLVENDO APLICAÇÕES UTILIZANDO JAVASERVER FACES E MVC Felipe Moreira Decol Claro 1, Késsia Rita da Costa Marchi 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil felipe4258@hotmail.com, kessia@unipar.br

Leia mais

Java Server Faces 2.0 Rich Faces 4.0

Java Server Faces 2.0 Rich Faces 4.0 DEPARTAMENTO DE INFORMÁTICA - DI Java Server Faces 2.0 Rich Faces 4.0 Quais as novidades e alterações nas novas versões das tecnologias? Pablo Bruno de Moura Nóbrega Analista de Sistemas pablo.nobrega@uece.br

Leia mais

ABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE

ABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE ABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE Amarildo Aparecido Ferreira Junior 1, Ricardo Ribeiro Rufino 1 ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil aapfjr@gmail.com

Leia mais

MÓDULO Programação para Web 2

MÓDULO Programação para Web 2 MÓDULO Programação para Web 2 Sistemas Web na JEE OBJETIVO DO MÓDULO Arquitetura Web em aplicações JEE Conceitos iniciais Desenvolvimento Web Aplicações web tornam-se mais e mais importantes Mais e mais

Leia mais

Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate

Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate Tiago Peres Souza 1, Jaime Willian Dias 1,2 ¹Universidade paranaense (Unipar) Paranavaí PR Brasil tiagop_ti@hotmail.com 2 Universidade

Leia mais

Associação Carioca de Ensino Superior Centro Universitário Carioca

Associação Carioca de Ensino Superior Centro Universitário Carioca Desenvolvimento de Aplicações Web Lista de Exercícios Métodos HTTP 1. No tocante ao protocolo de transferência de hipertexto (HTTP), esse protocolo da categoria "solicitação e resposta" possui três métodos

Leia mais

PROGRAMAÇÃO PARA INTERNET RICA RICH INTERNET APPLICATIONS

PROGRAMAÇÃO PARA INTERNET RICA RICH INTERNET APPLICATIONS PROGRAMAÇÃO PARA INTERNET RICA RICH INTERNET APPLICATIONS Prof. Dr. Daniel Caetano 2012-1 Objetivos Apresentar o que é uma Aplicação Rica para Internet Contextualizar tais aplicações na Web e os desafios

Leia mais

Melhorando o desempenho de aplicações em JSF

Melhorando o desempenho de aplicações em JSF capa_ Melhorando o desempenho de aplicações em JSF Aumente a escalabilidade através de configurações e refatorações efetivas Adriano Castro adrianocastro189@gmail.com é formado em Ciência da Computação

Leia mais

Desenvolvendo Aplicações Web com NetBeans

Desenvolvendo Aplicações Web com NetBeans Desenvolvendo Aplicações Web com NetBeans Aula 3 Cap. 4 Trabalhando com Banco de Dados Prof.: Marcelo Ferreira Ortega Introdução O trabalho com banco de dados utilizando o NetBeans se desenvolveu ao longo

Leia mais

DESENVOLVIMENTO WEB UTILIZANDO FRAMEWORK PRIMEFACES E OUTRAS TECNOLOGIAS ATUAIS

DESENVOLVIMENTO WEB UTILIZANDO FRAMEWORK PRIMEFACES E OUTRAS TECNOLOGIAS ATUAIS DESENVOLVIMENTO WEB UTILIZANDO FRAMEWORK PRIMEFACES E OUTRAS TECNOLOGIAS ATUAIS Emanuel M. Godoy 1, Ricardo Ribeiro Rufino 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil godoymanel@gmail.com,

Leia mais

Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Felippe Scheidt IFPR Campus Foz do Iguaçu 2014/2.

Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Felippe Scheidt IFPR Campus Foz do Iguaçu 2014/2. Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Felippe Scheidt IFPR Campus Foz do Iguaçu 2014/2 Formulários Durante a navegação em websites é comum que sejam solicitadas informações

Leia mais

FACULDADE DE TECNOLOGIA SENAC GOIÁS CONTROLE DE ACESSO USANDO O FRAMEWORK RICHFACES. 5º PERÍODO Gestão da Tecnologia da Informação

FACULDADE DE TECNOLOGIA SENAC GOIÁS CONTROLE DE ACESSO USANDO O FRAMEWORK RICHFACES. 5º PERÍODO Gestão da Tecnologia da Informação FACULDADE DE TECNOLOGIA SENAC GOIÁS CONTROLE DE ACESSO USANDO O FRAMEWORK RICHFACES 5º PERÍODO Gestão da Tecnologia da Informação Alunos: Alessandro Aparecido André Alexandre Bruno Santiago Thiago Castilho

Leia mais

JSF e PrimeFaces. Professor: Ricardo Luis dos Santos IFSUL Campus Sapucaia do Sul

JSF e PrimeFaces. Professor: Ricardo Luis dos Santos IFSUL Campus Sapucaia do Sul JSF e PrimeFaces Professor: Ricardo Luis dos Santos IFSUL 2015 Agenda Introdução Desenvolvimento Web Java Server Faces Exercício 2 Introdução Ao longo dos anos diversas linguagens de programação foram

Leia mais

Programando em PHP. Conceitos Básicos

Programando em PHP. Conceitos Básicos Programando em PHP www.guilhermepontes.eti.br lgapontes@gmail.com Conceitos Básicos Todo o escopo deste estudo estará voltado para a criação de sites com o uso dos diversos recursos de programação web

Leia mais

JavaServer Faces (JSF) Leonardo Murta (leomurta@ic.uff.br)

JavaServer Faces (JSF) Leonardo Murta (leomurta@ic.uff.br) JavaServer Faces (JSF) Leonardo Murta (leomurta@ic.uff.br) Especificação/IDE/Implementação Esse curso foi preparado em 03/2015 usando a seguinte especificação, IDE e implementação Especificação JavaServer

Leia mais

INTRODUÇÃO À TECNOLOGIA SERVLETS

INTRODUÇÃO À TECNOLOGIA SERVLETS PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB INTRODUÇÃO À TECNOLOGIA SERVLETS Prof. Dr. Daniel Caetano 2012-1 Objetivos Apresentar o conceito aplicações orientada a serviços via web Apresentar o papel dos contentores

Leia mais

UM ESTUDO SOBRE ARQUITETURA PARA DESENVOLVIMENTO DE SOFTWARE WEB UTILIZANDO NOVAS TECNOLOGIAS

UM ESTUDO SOBRE ARQUITETURA PARA DESENVOLVIMENTO DE SOFTWARE WEB UTILIZANDO NOVAS TECNOLOGIAS UM ESTUDO SOBRE ARQUITETURA PARA DESENVOLVIMENTO DE SOFTWARE WEB UTILIZANDO NOVAS TECNOLOGIAS Edi Carlos Siniciato ¹, William Magalhães¹ ¹ Universidade Paranaense (Unipar) Paranavaí PR Brasil edysiniciato@gmail.com,

Leia mais

SISTEMA DE GESTÃO DE PRODUÇÃO DE EVENTOS

SISTEMA DE GESTÃO DE PRODUÇÃO DE EVENTOS SISTEMA DE GESTÃO DE PRODUÇÃO DE EVENTOS Rodrigo das Neves Wagner Luiz Gustavo Galves Mählmann Resumo: O presente artigo trata de um projeto de desenvolvimento de uma aplicação para uma produtora de eventos,

Leia mais

ORDEM DE SERVIÇO OS 003/DINFO/2013 16/09/2013

ORDEM DE SERVIÇO OS 003/DINFO/2013 16/09/2013 A DIRETORIA DE INFORMÁTICA DINFO DA UNIVERSIDADE DO ESTADO DO RIO DE JANEIRO -UERJ, no uso de suas atribuições legais, estabelece: Art. 1º: Para fins de normatização do Desenvolvimento Tecnológico na UERJ

Leia mais

Anotações e Navegação no JSF 2.0

Anotações e Navegação no JSF 2.0 1/16 Anotações e Navegação no JSF 2.0 Simplifique a navegação e a configuração XML com o JSF 2.0 Aprenda a utilizar anotações e navegações implícita e condicional em suas aplicações JSF 2.0 MARCEL TOKARSKI

Leia mais

Além do JSF: Matriz de Campos com Recursos e Práticas Incomuns

Além do JSF: Matriz de Campos com Recursos e Práticas Incomuns Décio Heinzelmann Luckow (decioluckow@gmail.com): é bacharel em Sistemas de Informação pela Univille e pósgraduando em Gestão de Projetos pela Sustentare Escola de Negócios. Já trabalhou com as linguagens

Leia mais

Introdução a Servlets

Introdução a Servlets Linguagem de Programação para Web Introdução a Servlets Prof. Mauro Lopes 1-31 21 Objetivos Iniciaremos aqui o estudo sobre o desenvolvimento de sistemas web usando o Java. Apresentaremos nesta aula os

Leia mais

JavaServer Faces. Parte 2

JavaServer Faces. Parte 2 JavaServer Faces Parte 2 Recapitulando Aplicações web são aplicações que executam em um servidor Recebem requisições de usuários Retornam respostas ao usuário Browsers só entendem e exibem html O servidor

Leia mais

Desenvolvimento de Aplicações para Internet

Desenvolvimento de Aplicações para Internet Desenvolvimento de Aplicações para Internet Aula 03 Celso Olivete Júnior olivete@fct.unesp.br Na aula de hoje... Javascript: introdução, operadores lógicos e matemáticos, comandos condicionais. Javascript:

Leia mais

Aula 03 - Projeto Java Web

Aula 03 - Projeto Java Web Aula 03 - Projeto Java Web Para criação de um projeto java web, vá em File/New. Escolha o projeto: Em seguida, na caixa Categorias selecione Java Web. Feito isso, na caixa à direita selecione Aplicação

Leia mais

Arquitetura de uma Webapp

Arquitetura de uma Webapp Arquitetura de uma Webapp Arquitetura J2EE Containers e componentes MVC: introdução Frederico Costa Guedes Pereira 2006 fredguedespereira@gmail.com Plataforma J2EE World Wide Web e a Economia da Informação

Leia mais

FEMA Tópicos avançados em programação Prof: Domingos OBJETIVOS / COMPETÊNCIAS

FEMA Tópicos avançados em programação Prof: Domingos OBJETIVOS / COMPETÊNCIAS FEMA Tópicos avançados em programação Prof: Domingos OBJETIVOS / COMPETÊNCIAS 1 - Desenvolver aplicativos para Desktop usando Swing, gerenciamento de Layouts, componentes swing, conectar a um banco de

Leia mais

Programação Web Aula 12 - Java Web Software

Programação Web Aula 12 - Java Web Software Programação Web Aula 12 - Java Web Software Bruno Müller Junior Departamento de Informática UFPR 25 de Maio de 2015 1 Java 2 Java Web Software 3 Servlets Modelo de Trabalho Funcionamento API Java Código

Leia mais

Servlets & JSP x JavaServer Faces 2.1: Comparação do desenvolvimento de aplicações web baseado no modelo MVC

Servlets & JSP x JavaServer Faces 2.1: Comparação do desenvolvimento de aplicações web baseado no modelo MVC ISSN 2316-2872 T.I.S. São Carlos, v. 4, n. 1, p. 41-50, jan-abr 2015 Tecnologias, Infraestrutura e Software Servlets & JSP x JavaServer Faces 2.1: Comparação do desenvolvimento de aplicações web baseado

Leia mais

Mais sobre uso de formulários Site sem Ajax

Mais sobre uso de formulários Site sem Ajax Mais sobre uso de formulários Site sem Ajax Página com busca padrão 1 Página com o resultado da busca carregada no local da anterior (o formulário está vazio) Site com Ajax 2 Site usando Ajax para preencher

Leia mais

Geração e execução de scripts de teste em aplicações web a partir de casos de uso direcionados por comportamento 64

Geração e execução de scripts de teste em aplicações web a partir de casos de uso direcionados por comportamento 64 direcionados por comportamento 64 5 Estudo de caso Neste capítulo serão apresentadas as aplicações web utilizadas na aplicação da abordagem proposta, bem como a tecnologia em que foram desenvolvidas, o

Leia mais

5 Detalhes da Implementação

5 Detalhes da Implementação Detalhes da Implementação 101 5 Detalhes da Implementação Neste capítulo descreveremos detalhes da implementação do Explorator que foi desenvolvido usando o paradigma MVC 45 e o paradigma de CoC 46 (Convention

Leia mais

UNIVERSIDADE FEDERAL DE SANTA CATARINA. Informatização de farmácias publicas utilizando software livre.

UNIVERSIDADE FEDERAL DE SANTA CATARINA. Informatização de farmácias publicas utilizando software livre. UNIVERSIDADE FEDERAL DE SANTA CATARINA Informatização de farmácias publicas utilizando software livre. MURILO NUNES ELIAS FLORIANÓPOLIS SC 2007/2 UNIVERSIDADE FEDERAL DE SANTA CATARINA DEPARTAMENTO DE

Leia mais

Desenvolvimento Web XHTML Formulários. Prof. Bruno E. G. Gomes

Desenvolvimento Web XHTML Formulários. Prof. Bruno E. G. Gomes Desenvolvimento Web XHTML Formulários Prof. Bruno E. G. Gomes 2014 Introdução Um recurso bastante utilizado no desenvolvimento Web é o envio de dados de uma página para o servidor quando fornecemos informações,

Leia mais

SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE. Aluno: Roberto Reinert Orientador: Everaldo A. Grahl

SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE. Aluno: Roberto Reinert Orientador: Everaldo A. Grahl SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE Aluno: Roberto Reinert Orientador: Everaldo A. Grahl Roteiro de apresentação Introdução Objetivos Fundamentação Teórica Workflow Processo

Leia mais

Aula 2: RIA - Aplicações Ricas para Internet Fonte: Plano de Aula Oficial da Disciplina

Aula 2: RIA - Aplicações Ricas para Internet Fonte: Plano de Aula Oficial da Disciplina Programação para Internet Rica 1 Aula 2: RIA - Aplicações Ricas para Internet Fonte: Plano de Aula Oficial da Disciplina Objetivo: Identificar as principais características de uma Aplicação Internet Rica.

Leia mais

Parte I. Demoiselle Vaadin

Parte I. Demoiselle Vaadin Parte I. Demoiselle Vaadin O Vaadin é um framework para construção de interfaces web que aplica ideias inovadoras. Apesar de usar o GWT como mecanismo para a exibição de seus componentes, eles tem características

Leia mais

Boas Práticas de Desenvolvimento Seguro

Boas Práticas de Desenvolvimento Seguro Boas Práticas de Desenvolvimento Seguro Julho / 2.012 Histórico de Revisões Data Versão Descrição Autor 29/07/2012 1.0 Versão inicial Ricardo Kiyoshi Página 2 de 11 Conteúdo 1. SEGURANÇA DA INFORMAÇÃO

Leia mais

Programação para Internet I

Programação para Internet I Programação para Internet I Aulas 09 e 10 Fernando F. Costa nando@fimes.edu.br Formulários O formulário representa o modo mais importante de interatividade que a linguagem HTML oferece. Um formulário pode

Leia mais

INTRODUÇÃO E CONFIGURAÇÃO DO PRIMEFACES MOBILE EM APLICAÇÕES JSF

INTRODUÇÃO E CONFIGURAÇÃO DO PRIMEFACES MOBILE EM APLICAÇÕES JSF INTRODUÇÃO E CONFIGURAÇÃO DO PRIMEFACES MOBILE EM APLICAÇÕES JSF Guilherme Macedo, Jaime Willian Dias Universidade Paranaense (Unipar) Paranavaí PR Brasil guilhermemacedo28@gmail.com, jaime@unipar.br Resumo.

Leia mais

Introdução ao Javascript

Introdução ao Javascript Programação WEB I Introdução ao Javascript Apresentação da Disciplina,Introdução a linguagem Javascript Objetivos da Disciplina Apresentar os principais conceitos da linguagem Javascript referente à programação

Leia mais

Conteúdo Dinâmico. Introdução. Interação Browser x Servidor Web. Interação Browser x Servidor Web

Conteúdo Dinâmico. Introdução. Interação Browser x Servidor Web. Interação Browser x Servidor Web Introdução Formulários rios & Conteúdo Dinâmico Mário Antonio Meireles Teixeira Dept o. de Informática - UFMA A Web surgiu inicialmente como uma nova forma de comunicação de informações, fazendo uso de

Leia mais

UFG - Instituto de Informática

UFG - Instituto de Informática UFG - Instituto de Informática Especialização em Desenvolvimento de Aplicações Web com Interfaces Ricas EJB 3.0 Prof.: Fabrízzio A A M N Soares professor.fabrizzio@gmail.com Aula 5 Servidores de Aplicação

Leia mais

Produto IV: ATU SAAP. Manual de Referência

Produto IV: ATU SAAP. Manual de Referência Produto IV: ATU SAAP Manual de Referência Pablo Nogueira Oliveira Termo de Referência nº 129275 Contrato Número 2008/000988 Brasília, 30 de outubro de 2008 1 Sistema de Apoio à Ativideade Parlamentar SAAP

Leia mais

Este livro é dedicado a minha esposa Edna e a todos os desenvolvedores que fizeram do software livre um meio profissional levado a sério.

Este livro é dedicado a minha esposa Edna e a todos os desenvolvedores que fizeram do software livre um meio profissional levado a sério. EDSON GONÇALVES Este livro é dedicado a minha esposa Edna e a todos os desenvolvedores que fizeram do software livre um meio profissional levado a sério. AGRADECIMENTOS Primeiramente gostaria de agradecer

Leia mais

Os componentes de um formulário são: Form, Input, Select e AreaText

Os componentes de um formulário são: Form, Input, Select e AreaText HTML Formulário O elemento FORM, da HTML, é o responsável por prover documentos interativos no ambiente WWW de forma que uma pagina web exibida a um usuário possa submeter um conjunto de dados, informados

Leia mais

TECNOLOGIAS E FRAMEWORKS PARA O DESENVOLMENTO DE INTERFACES WEB

TECNOLOGIAS E FRAMEWORKS PARA O DESENVOLMENTO DE INTERFACES WEB TECNOLOGIAS E FRAMEWORKS PARA O DESENVOLMENTO DE INTERFACES WEB Marcelo Rodrigo da Silva Ribeiro 1, Ricardo Ribeiro Rufino 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil marcelo.rodrigo@live.com,

Leia mais

Java EE 6. A revolução do. Um overview sobre as novidades da JSR 316. a r t i g o

Java EE 6. A revolução do. Um overview sobre as novidades da JSR 316. a r t i g o a r t i g o Pedro Henrique S. Mariano (pedro.mariano@caelum.com.br) técnologo em Análise e Desenvolvimento de Sofware pela FIAP, possui as certificações SCJP 6 e SCRUM master.trabalha como consultor e

Leia mais

Grupo de Usuários Java http://www.guj.com.br JavaServer Faces: A mais nova tecnologia Java para desenvolvimento WEB

Grupo de Usuários Java http://www.guj.com.br JavaServer Faces: A mais nova tecnologia Java para desenvolvimento WEB JavaServer Faces: A mais nova tecnologia Java para desenvolvimento WEB Talita Pitanga Conheça um pouco sobre a mais nova tecnologia para desenvolvimento de aplicações WEB: JavaServer Faces. Introdução

Leia mais

INTRODUÇÃO AO DESENVOLVIMENTO WEB

INTRODUÇÃO AO DESENVOLVIMENTO WEB INTRODUÇÃO AO DESENVOLVIMENTO WEB PROFª. M.Sc. JULIANA H Q BENACCHIO Formulários Os formulários em HTML são usados para selecionar diferentes tipos de entradas do usuário. Um formulário é uma área que

Leia mais

Linguagem de. Aula 06. Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br

Linguagem de. Aula 06. Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br Linguagem de Programação IV -PHP Aula 06 Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br Criação de Formulários o Um formulário consiste em uma série de campos que são preenchidos pelo usuário

Leia mais

Aula 9: Fundamentos do JQuery Fonte: Plano de Aula Oficial da Disciplina

Aula 9: Fundamentos do JQuery Fonte: Plano de Aula Oficial da Disciplina Programação para Internet Rica 1 Aula 9: Fundamentos do JQuery Fonte: Plano de Aula Oficial da Disciplina Objetivo: Capacitar o aluno para o trabalho com o framework JQuery. INTRODUÇÃO JQuery é uma biblioteca

Leia mais

UM ESTUDO SOBRE OS FRAMEWORKS JSF E PRIMEFACES NO DESENVOLVIMENTO DE SOFTWARE WEB

UM ESTUDO SOBRE OS FRAMEWORKS JSF E PRIMEFACES NO DESENVOLVIMENTO DE SOFTWARE WEB UM ESTUDO SOBRE OS FRAMEWORKS JSF E PRIMEFACES NO DESENVOLVIMENTO DE SOFTWARE WEB Adriano Schulter Moenster 1, Tiago Piperno Bonetti 1 ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil adrmoenster@gmail.com,

Leia mais

O código JavaScript deve ser colocado entre tags de comentário para ficar escondido no caso de navegadores antigos que não reconhecem a linguagem.

O código JavaScript deve ser colocado entre tags de comentário para ficar escondido no caso de navegadores antigos que não reconhecem a linguagem. 1 - O que é JAVASCRIPT? É uma linguagem de script orientada a objetos, usada para aumentar a interatividade de páginas Web. O JavaScript foi introduzido pela Netscape em seu navegador 2.0 e posteriormente

Leia mais

Aplicativo web para definição do modelo lógico no projeto de banco de dados relacional

Aplicativo web para definição do modelo lógico no projeto de banco de dados relacional Aplicativo web para definição do modelo lógico no projeto de banco de dados relacional Juarez Bachmann Orientador: Alexander Roberto Valdameri Roteiro Introdução Objetivos Fundamentação teórica Desenvolvimento

Leia mais

Lista de Revisão. 3. Analise a afirmativa a seguir como verdadeira ou falsa e justifique.

Lista de Revisão. 3. Analise a afirmativa a seguir como verdadeira ou falsa e justifique. Lista de Revisão 1. Nos sistemas web, geralmente os usuários apresentam dois problemas típicos, a desorientação e a sobrecarga cognitiva. Discorra sobre esses problemas. 2. Apresente as principais diferenças

Leia mais

PROGRAMAÇÃO WEB DO LADO DO CLIENTE

PROGRAMAÇÃO WEB DO LADO DO CLIENTE PROGRAMAÇÃO WEB DO LADO DO CLIENTE FORMULÁRIO Na linguagem HTML é permitido que o usuário interaja com o servidor através de formulários ligados a scripts desenvolvidos em linguagens como PHP, Servlets,

Leia mais

Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração

Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração Desenvolvimento em PHP usando Frameworks Elton Luís Minetto Agenda Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração Ambiente Web É o ambiente formado

Leia mais

Introdução. HyperText Markup Language HTML. Formulário. Fluxo do Formulário. Fluxo do Formulário. Fluxo do Formulário. Fluxo do Formulário

Introdução. HyperText Markup Language HTML. Formulário. Fluxo do Formulário. Fluxo do Formulário. Fluxo do Formulário. Fluxo do Formulário Introdução HyperText Markup Language HTML Formulário Prof. Luis Nícolas de Amorim Trigo nicolas.trigo@ifsertao-pe.edu.br http://professor.ifsertao-pe.edu.br/nicolas.trigo/ O usuário interage com os serviços

Leia mais

Projetos do MyFaces 1/12

Projetos do MyFaces 1/12 1/12 JSF com MyFaces e Tomahawk Aprenda a utilizar os recursos do MyFaces FRANCISCO CALAÇA XAVIER Uma das implementações do JavaServer Faces mais utilizada atualmente é o MyFaces, um projeto da Apache

Leia mais

PROJETO FINANCEIROWEB GRADUAÇÃO TECNOLÓGICA EM GESTÃO DA TECNOLOGIA DA INFORMAÇÃO

PROJETO FINANCEIROWEB GRADUAÇÃO TECNOLÓGICA EM GESTÃO DA TECNOLOGIA DA INFORMAÇÃO FACULDADE DE TECNOLOGIA SENAC GOIÁS PROJETO FINANCEIROWEB GRADUAÇÃO TECNOLÓGICA EM GESTÃO DA TECNOLOGIA DA INFORMAÇÃO PROFº.: FABRICIO LEONARD PROGRAMAÇÃO COM FRAMEWORKS - MÓDULO V - GOIÂNIA - JUNHO ELABORAÇÃO

Leia mais

Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração O livro

Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração O livro Desenvolvimento em PHP usando Frameworks Elton Luís Minetto Agenda Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração O livro Ambiente Web É o ambiente

Leia mais

Conceitos de Ajax Exemplos de uso do Ajax no braço, muitos exemplos, muito código (HTML, CSS, JavaScript, PHP, XML, JSON)

Conceitos de Ajax Exemplos de uso do Ajax no braço, muitos exemplos, muito código (HTML, CSS, JavaScript, PHP, XML, JSON) Márcio Koch 1 Currículo Formado na FURB em Ciência da Computação Pós graduado em Tecnologias para o desenvolvimento de aplicações web Mestrando em Computação Gráfica na UDESC Arquiteto de software na Senior

Leia mais

Curso - Padrões de Projeto Módulo 5: Model-View- Controller

Curso - Padrões de Projeto Módulo 5: Model-View- Controller Curso - Padrões de Projeto Módulo 5: Model-View- Controller Vítor E. Silva Souza vitorsouza@gmail.com http://www.javablogs.com.br/page/engenho http://esjug.dev.java.net Sobre o Instrutor Formação: Java:

Leia mais

SISTEMA DE AGENDAMENTO E GERENCIAMENTO DE CONSULTAS CLÍNICAS

SISTEMA DE AGENDAMENTO E GERENCIAMENTO DE CONSULTAS CLÍNICAS SISTEMA DE AGENDAMENTO E GERENCIAMENTO DE CONSULTAS CLÍNICAS Pablo dos Santos Alves Alexander Roberto Valdameri - Orientador Roteiro da apresentação Introdução Objetivos Motivação Revisão bibliográfica

Leia mais

Programação Java para a Web Décio Heinzelmann Luckow Alexandre Altair de Melo

Programação Java para a Web Décio Heinzelmann Luckow Alexandre Altair de Melo Programação Java para a Web Décio Heinzelmann Luckow Alexandre Altair de Melo Novatec Copyright 2010 da Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida

Leia mais

ARQUITETURA DO SISTEMA ERP PEGASUS

ARQUITETURA DO SISTEMA ERP PEGASUS ARQUITETURA DO SISTEMA ERP PEGASUS Elaborado por: Bruno Duarte Nogueira Arquiteto de Software Data: 05/03/2012 1 Sumário 1. Introdução... 3 2. Tecnologias... 3 2.1. Web Tier... 3 2.1.1. Facelets 1.1.14...

Leia mais

Mini-curso de PHP. Aulas ministradas por: André Luis de Paula Arthur Kalsing Diego Silva

Mini-curso de PHP. Aulas ministradas por: André Luis de Paula Arthur Kalsing Diego Silva Mini-curso de PHP Aulas ministradas por: André Luis de Paula Arthur Kalsing Diego Silva Aula 1 Breve introdução de HTML, Conceitos básicos de PHP, Sintaxe, Separador de instruções e Comentários (Cap 1

Leia mais

UNIVERSIDADE FEDERAL DO CEARÁ - UFC DEPARTAMENTO DE COMPUTAÇÃO - DC ESPECIALIZAÇÃO EM TECNOLOGIA DA INFORMAÇÃO. Trabalho Final

UNIVERSIDADE FEDERAL DO CEARÁ - UFC DEPARTAMENTO DE COMPUTAÇÃO - DC ESPECIALIZAÇÃO EM TECNOLOGIA DA INFORMAÇÃO. Trabalho Final UNIVERSIDADE FEDERAL DO CEARÁ - UFC DEPARTAMENTO DE COMPUTAÇÃO - DC ESPECIALIZAÇÃO EM TECNOLOGIA DA INFORMAÇÃO Disciplina: Desenvolvimento de Software para Web Turma: ETI 2008 Prof.: Dr. José Maria Monteiro

Leia mais

Desenvolvendo Portlets utilizando JSF, Ajax, Richfaces. Gustavo Lira Consultor 4Linux gustavo@4linux.com.br

Desenvolvendo Portlets utilizando JSF, Ajax, Richfaces. Gustavo Lira Consultor 4Linux gustavo@4linux.com.br Desenvolvendo Portlets utilizando JSF, Ajax, Richfaces Gustavo Lira Consultor 4Linux gustavo@4linux.com.br Especificação para os Portlets Os padrões para Portlets Java EE são definidos por duas JSRs: 168,

Leia mais

As Novidades do JSF 2.0

As Novidades do JSF 2.0 artigo As Novidades do JSF 2.0 Conheça a nova versão do JSF que traz inúmeras vantagens em relação ao seu antecessor. O JSF é hoje a principal ferramenta no mundoj para desenvolvimento Web, principalmente

Leia mais

SCE-557. Técnicas de Programação para WEB. Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello mello@icmc.usp.br

SCE-557. Técnicas de Programação para WEB. Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello mello@icmc.usp.br SCE-557 Técnicas de Programação para WEB Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello mello@icmc.usp.br 1 Cronograma Fundamentos sobre servidores e clientes Linguagens Server e Client side

Leia mais

Scriptlets e Formulários

Scriptlets e Formulários 2 Scriptlets e Formulários Prof. Autor: Daniel Morais dos Reis e-tec Brasil Programação Avançada Para Web Página1 Meta Permitir ao aluno aprender a criar um novo projeto Java para web no Netbeans IDE,

Leia mais

Aula 05 HTML FORMULÁRIOS Prof. Daniela Pires Sumário

Aula 05 HTML FORMULÁRIOS Prof. Daniela Pires Sumário Sumário FORMULÁRIO EM HTML... 2 FORM... 2 ACTION... 2 METHOD... 2 INPUT... 2 INPUT TYPE TEXT... 2 INPUT TYPE PASSWORD... 2 CHECKBOX - Múltipla escolha... 4 RADIO - Escolha única... 4 Botões de ação...

Leia mais

Universidade da Beira Interior

Universidade da Beira Interior Universidade da Beira Interior Relatório Apresentação Java Server Pages Adolfo Peixinho nº4067 Nuno Reis nº 3955 Índice O que é uma aplicação Web?... 3 Tecnologia Java EE... 4 Ciclo de Vida de uma Aplicação

Leia mais

Manual de Procedimentos para Desenvolvimento de Softwares

Manual de Procedimentos para Desenvolvimento de Softwares Manual de Procedimentos para Desenvolvimento de Softwares Secretaria Geral de Informática Sin Universidade Federal de São Carlos - UFSCar Versão 2.1 O(s) critério(s) de escolha pelas tecnologias para desenvolvimento

Leia mais

WWW - World Wide Web

WWW - World Wide Web WWW World Wide Web WWW Cap. 9.1 WWW - World Wide Web Idéia básica do WWW: Estratégia de acesso a uma teia (WEB) de documentos referenciados (linked) em computadores na Internet (ou Rede TCP/IP privada)

Leia mais

ANEXO 05 ARQUITETURAS TECNOLÓGICAS PROCERGS

ANEXO 05 ARQUITETURAS TECNOLÓGICAS PROCERGS ANEXO 05 ARQUITETURAS TECNOLÓGICAS PROCERGS Este anexo apresenta uma visão geral das seguintes plataformas: 1. Plataforma Microsoft.NET - VB.NET e C#; 2. Plataforma JAVA; 3. Plataforma Android, ios e Windows

Leia mais

Conteúdo Programático de PHP

Conteúdo Programático de PHP Conteúdo Programático de PHP 1 Por que PHP? No mercado atual existem diversas tecnologias especializadas na integração de banco de dados com a WEB, sendo o PHP a linguagem que mais se desenvolve, tendo

Leia mais

PÓS-GRADUAÇÃO EM MATEMÁTICA COMPUTACIONAL INFORMÁTICA INSTRUMENTAL

PÓS-GRADUAÇÃO EM MATEMÁTICA COMPUTACIONAL INFORMÁTICA INSTRUMENTAL PÓS-GRADUAÇÃO EM MATEMÁTICA COMPUTACIONAL INFORMÁTICA INSTRUMENTAL Formulários HTML Aula 07: Formulários e Frames HTML Os formulários HTML são utilizados, geralmente, como entradas de dados prépreenchimento,

Leia mais

SISTEMA DE CONTROLE INTERNO DE FLUXO DE CAIXA DO SETOR DE APOIO FINANCEIRO (ULBRA GUAÍBA)

SISTEMA DE CONTROLE INTERNO DE FLUXO DE CAIXA DO SETOR DE APOIO FINANCEIRO (ULBRA GUAÍBA) SISTEMA DE CONTROLE INTERNO DE FLUXO DE CAIXA DO SETOR DE APOIO FINANCEIRO (ULBRA GUAÍBA) Alessandra Lubbe 1 Alexandre Evangelista 2 Jeandro Perceval 3 José Ramiro Pereira 4 Luiz Gustavo Mahlmann 5 RESUMO

Leia mais

LINGUAGEM DE PROGRAMAÇÃO WEB

LINGUAGEM DE PROGRAMAÇÃO WEB LINGUAGEM DE PROGRAMAÇÃO WEB GABRIELA TREVISAN Formulários e Aula 3 Relembrando HTML 5 Tag Form o Utilizada para marcar a região do formulário. o Os atributos mais importantes são o method e o action.

Leia mais

Experiência em missão crítica de missão crítica

Experiência em missão crítica de missão crítica 2 / 49 Experiência em missão crítica de missão crítica Pioneira no ensino de Linux à distância Parceira de treinamento IBM Primeira com LPI no Brasil + de 30.000 alunos satisfeitos Reconhecimento internacional

Leia mais

Tecnologias Web. Java Enterprise Edition

Tecnologias Web. Java Enterprise Edition Tecnologias Web Java Enterprise Edition Cristiano Lehrer, M.Sc. Introdução Java Enterprise Edition (JEE): Plataforma de tecnologias para o desenvolvimento de aplicações corporativas distribuídas. É uma

Leia mais

BCValidador VALIDAÇÃO DE ARQUIVOS XML RECEBIDOS PELO BANCO CENTRAL DO BRASIL

BCValidador VALIDAÇÃO DE ARQUIVOS XML RECEBIDOS PELO BANCO CENTRAL DO BRASIL BCValidador VALIDAÇÃO DE ARQUIVOS XML RECEBIDOS PELO BANCO CENTRAL DO BRASIL Deinf/Dine4 Versão 1.3 20/05/2013 Histórico de Revisão Data Versão Descrição Autor 06/11/2007 1.0 Elaboração da primeira versão

Leia mais

Prova Específica Cargo Desenvolvimento

Prova Específica Cargo Desenvolvimento UNIVERSIDADE FEDERAL DO PIAUÍ Centro de Educação Aberta e a Distância CEAD/UFPI Rua Olavo Bilac 1148 - Centro CEP 64.280-001 Teresina PI Brasil Fones (86) 3215-4101/ 3221-6227 ; Internet: www.uapi.edu.br

Leia mais

NOME DA APRESENTAÇÃO

NOME DA APRESENTAÇÃO 25 DE MAIO @MICROSOFT Novidades de Java EE 7 Ernest Duarte NOME DA APRESENTAÇÃO Nome (Nick no Fórum) About me! Nickname na Comunidade Ernest Duarte Profissão Instrutor em Ciências e Tecnologias Numéricas

Leia mais