Marcos Sousa’s Blog

Blog sobre desenvolvimento de software
  • rss
  • Home
  • Sobre

Jboss Seam – Getting started: Navigation Cases!

Marcos Sousa | April 14, 2008

No post Jboss Seam – Getting started: Page Actions, eu havia mostrado um caso simples de listagem e edição de notícias. Mas há casos exigem a criação casos de navegação para que não haja erros na execução.

Voltando ao exemplo de cadastro de notícias, o que aconteceria se o usuário por engano digitar um código que não existe na URL: /news/EditNews.jsf?newsId=9? Bom a página de edição apareceria com o formulário em branco ou geraria uma exceção.

A solução para este caso seria, caso o método gere um OUTCOME de erro, redireciona para a página de edição. Veja o exemplo:

<?xml version="1.0" encoding="UTF-8"?>
<pages xmlns="http://jboss.com/products/seam/pages"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://jboss.com/products/seam/pages

http://jboss.com/products/seam/pages-2.0.xsd">

<page view-id="/news/EditNews.xhtml">
<param name="newsId" value="#{newsBean.news.newsId}"/>
<action execute="#{newsBean.loadNewsById(newsBean.news.newsId)}"/>

<rule if-outcome="error">
<redirect view-id="/news/list.xhtml"/>
</rule>
</page>
</pages>

Assim, caso o identificador for nulo ou inválido a action loadNewsById retornará o outcome error. Assim, a execução será redirecionada a página lista.xhtml evitando que erros sejam gerados e evitando quebra de dados no formulário. Simples não?

Categories
Java, Java EE, Java Server Faces, Jboss Seam
Tags
GET, Java, Java Server Faces, Jboss Seam, JSF, Navigation Cases, Page Actions
Comments rss
Comments rss
Trackback
Trackback

« Anotando beans no Spring 2.5 Vídeo Aula Jboss Seam: Seam Gen »

Leave a Reply

Click here to cancel reply.

Núvens de tags

Agile Agile Conference Facelets GET Hibernate incompatiblidades Itext Java Java EE Java Magazine Java Server Faces JavaServer Faces Java Vídeo Magazine Jboss jboss-seam-itext Jboss Developer Studio Jboss Seam JDBC type: 7 JPA JSF linux mare marébh maré de agilidade Microsoft No Dialect mapping for JDBC type: 7 Page Actions PostGreSQL RHDS rich:fileUpload RichFaces Rich Faces RichFaces 3.2 Scrum Seam-gen Seam Framework Seam PDF Spring Spring Framework TDD URL Rewrite URL User Friendly Variable Resolver Vídeo Aula XP

Meus últimos tweets

  • @acarlos1000 This site should help you: http://www.mandarintools.com/numbers.html ;) 3 days ago
  • My new toys. Now I have cool things to read. #epicwin http://yfrog.com/mwub1zj 1 week ago
  • rs RT @gisahcorrea: geralmente, acho que estar na TPM é um saco. mas daí eu olho pro tamanho que meus peitos ficam e penso "é, vale a pena." 2 weeks ago
  • Bom livro grátis escrito por quem fez o Prawn e o Ruport, para quem já sabe Ruby http://rubybestpractices.com/ (via @lucabastos) 2 weeks ago
  • Parabéns!!! RT @rodrigoy: Aha... just bought http://kanbansket.ch domain! #KanbanSketch #ProjetoAgileBrazil #Switzerland 2 weeks ago
  • @pac_man Parabéns pelo projeto, o delay é muito pequeno! Menor que o da NET! 2 weeks ago
  • Algumas fotos do mini-curso de rails ontem na Una http://tinyurl.com/25vjen4 #railsuna 2 weeks ago
  • @danielvlopes Desenvolver em rails o ajuda a se tornar um desenvolvedor melhor #railsuna http://yfrog.com/3mafappj 2 weeks ago
  • ;) @joaovitor Pegadinha do malandro em Ruby http://gist.github.com/470707 #railsuna se alguém escrever algo assim na sua equipe dá um pedala 2 weeks ago
  • Django 1.2 template application for appengine: http://tinyurl.com/36nuqzz 2 weeks ago

Anúcios

Categorias

  • .net
  • Agile
  • Agile Conference 2009
  • Artigos
  • Atualidades
  • c++
  • cinema
  • Django
  • DRY
  • Eventos
  • Flex
  • Formula 1
  • Hibernate
  • IDE
  • Inutilidades
  • Java
  • Java EE
  • Java Server Faces
  • Jboss Seam
  • linux
  • Mac OS
  • Microsoft
  • Open-source
  • Palestras
  • Python
  • RAD
  • RIA
  • RichFaces
  • Scrum
  • Software Livre
  • Spring
  • Spring Annotations
  • TDD
  • Testes
  • Uncategorized
  • Vídeo Aulas

Links recomendados

  • AJ Soluções
  • Ary Júnior
  • Erko Bridee
  • Fragmental
  • Fragmental TW
  • Guilherme Chapiewski
  • Handerson Frota
  • Jeveaux
  • Juliano Carniel
  • Onipresente
  • Passes de Letra
  • PortalJava.com
  • Rafael Carneiro
  • Rafael Pontes

DevMedia Post’s

Get Adobe Flash playerPlugin by wpburn.com wordpress themes
rss Comments rss valid xhtml 1.1 design by jide powered by Wordpress get firefox