<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Marcos Sousa's Blog &#187; Java Server Faces</title>
	<atom:link href="http://www.marcossousa.com/tag/java-server-faces/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.marcossousa.com</link>
	<description>Blog sobre desenvolvimento de software</description>
	<lastBuildDate>Sun, 06 Jun 2010 22:05:49 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Vídeo Aula: Seam Extras &#8211; Gerando PDF</title>
		<link>http://www.marcossousa.com/2008/07/31/video-aula-seam-extras-gerando-pdf/</link>
		<comments>http://www.marcossousa.com/2008/07/31/video-aula-seam-extras-gerando-pdf/#comments</comments>
		<pubDate>Thu, 31 Jul 2008 13:11:30 +0000</pubDate>
		<dc:creator>Marcos Sousa</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Java EE]]></category>
		<category><![CDATA[Java Server Faces]]></category>
		<category><![CDATA[Jboss Seam]]></category>
		<category><![CDATA[Vídeo Aulas]]></category>
		<category><![CDATA[Itext]]></category>
		<category><![CDATA[Java Magazine]]></category>
		<category><![CDATA[Java Vídeo Magazine]]></category>
		<category><![CDATA[jboss-seam-itext]]></category>
		<category><![CDATA[JSF]]></category>
		<category><![CDATA[Seam PDF]]></category>
		<category><![CDATA[Vídeo Aula]]></category>

		<guid isPermaLink="false">http://www.marcossousa.com/?p=101</guid>
		<description><![CDATA[Foi publicada no portal Java Magazine  a parte 5ª da série de vídeo aulas sobre os extras Seam Framework.
Esta parte mostra um passo-a-passo para criar documentos em PDF usando o módulo de integração do Seam Framework com o iText. Na vídeo aula, são apresentadas algumas das tags descritas na publicação Gere PDF de Qualidade [...]]]></description>
			<content:encoded><![CDATA[<p>Foi publicada no portal <a href="http://www.javamagazine.com.br/">Java Magazine</a>  a parte 5ª da série de vídeo aulas sobre os extras <a href="http://www.seamframework.org/">Seam Framework</a>.</p>
<p>Esta parte mostra um passo-a-passo para criar documentos em PDF usando o módulo de integração do <a href="http://www.seamframework.org/">Seam Framework</a> com o <a href="http://www.lowagie.com/iText">iText</a>. Na vídeo aula, são apresentadas algumas das tags descritas na publicação <a href="http://www.marcossousa.com/2008/07/01/gere-pdf-de-qualidade-em-10-minutos/">Gere PDF de Qualidade em 10 minutos</a>, o documento resultante gera um PDF que contém imagens, títulos, texto HTML formatado e um rodapé contendo texto e numeração.</p>
<p>As próximas vídeo aulas abordarão o envio de e-mails, CAPTCHA e agendamento de tarefas. <img src='http://www.marcossousa.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a href='http://www.marcossousa.com/wp-content/uploads/2008/07/newsmanager.zip'>Arquivos Fontes</a><br />
<a href="http://www.devmedia.com.br/articles/viewcomp.asp?comp=9759">Vídeo aula</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.marcossousa.com/2008/07/31/video-aula-seam-extras-gerando-pdf/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Vídeo Aulas: Seam Extras parte 4</title>
		<link>http://www.marcossousa.com/2008/07/29/video-aulas-seam-extras-parte-4/</link>
		<comments>http://www.marcossousa.com/2008/07/29/video-aulas-seam-extras-parte-4/#comments</comments>
		<pubDate>Tue, 29 Jul 2008 11:57:16 +0000</pubDate>
		<dc:creator>Marcos Sousa</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Java EE]]></category>
		<category><![CDATA[Java Server Faces]]></category>
		<category><![CDATA[Jboss Seam]]></category>
		<category><![CDATA[Vídeo Aulas]]></category>
		<category><![CDATA[Java Magazine]]></category>
		<category><![CDATA[Java Vídeo Magazine]]></category>
		<category><![CDATA[JSF]]></category>

		<guid isPermaLink="false">http://www.marcossousa.com/?p=99</guid>
		<description><![CDATA[Foi publicada no portal Java Magazine  a parte 4ª da série de vídeo aulas sobre os extras Seam Framework.
Nesta parte não foi demonstrado nenhum recurso especial do Seam Framework, porém foi demonstrado o uso do componente input suggestion. 
Link da Vídeo Aula
Arquivos fontes
As próximas partes abordarão a geração de PDF e envio de e-mails. [...]]]></description>
			<content:encoded><![CDATA[<p>Foi publicada no portal <a href="http://www.javamagazine.com.br/">Java Magazine</a>  a parte 4ª da série de vídeo aulas sobre os extras <a href="http://www.seamframework.org/">Seam Framework</a>.</p>
<p>Nesta parte não foi demonstrado nenhum recurso especial do <a href="http://www.seamframework.org/">Seam Framework</a>, porém foi demonstrado o uso do componente <a href="http://livedemo.exadel.com/richfaces-demo/richfaces/suggestionBox.jsf?c=suggestionBox">input suggestion</a>. </p>
<p><a href="http://www.devmedia.com.br/articles/viewcomp.asp?comp=9700">Link da Vídeo Aula</a><br />
<a href='http://www.marcossousa.com/wp-content/uploads/2008/07/newsmanager.rar'>Arquivos fontes</a></p>
<p>As próximas partes abordarão a geração de PDF e envio de e-mails. <img src='http://www.marcossousa.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.marcossousa.com/2008/07/29/video-aulas-seam-extras-parte-4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Seam &#8211; Getting started: Converters!</title>
		<link>http://www.marcossousa.com/2008/05/16/seam-getting-started-converters/</link>
		<comments>http://www.marcossousa.com/2008/05/16/seam-getting-started-converters/#comments</comments>
		<pubDate>Fri, 16 May 2008 21:35:35 +0000</pubDate>
		<dc:creator>Marcos Sousa</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Java EE]]></category>
		<category><![CDATA[Java Server Faces]]></category>
		<category><![CDATA[Jboss Seam]]></category>
		<category><![CDATA[GET]]></category>
		<category><![CDATA[JSF]]></category>
		<category><![CDATA[Page Actions]]></category>
		<category><![CDATA[Seam Framework]]></category>

		<guid isPermaLink="false">http://www.marcossousa.com/2008/05/16/seam-getting-started-converters/</guid>
		<description><![CDATA[Na série de vídeo-aulas que eu fiz para o portal DevMedia sobre o Seam Framework, eu mostrei como podem ser usadas as anotações para registro de Conversores JSF. A notação é bastante simples. Imagine que você tenha um cadastro de produtos.
Veja o código do conversor:

@Name(&#34;productConverter&#34;)
@BypassInterceptors
@Converter(forClass=Product.class)
public class ProductConverter implements javax.faces.convert.Converter{

public Object getAsObject(FacesContext arg0, UIComponent arg1, String [...]]]></description>
			<content:encoded><![CDATA[<p>Na série de vídeo-aulas que eu fiz para o portal <a href="http://www.devmedia.com.br">DevMedia </a>sobre o <a href="http://www.seamframework.org">Seam Framework</a>, eu mostrei como podem ser usadas as anotações para registro de Conversores <a href="http://java.sun.com/javaee/javaserverfaces/">JSF</a>. A notação é bastante simples. Imagine que você tenha um cadastro de produtos.</p>
<p>Veja o código do conversor:</p>
<pre class="brush: java;">
@Name(&quot;productConverter&quot;)
@BypassInterceptors
@Converter(forClass=Product.class)
public class ProductConverter implements javax.faces.convert.Converter{

public Object getAsObject(FacesContext arg0, UIComponent arg1, String arg2) {
// Insira o código que transforme a string no objeto desejado (Product)
}

public String getAsString(FacesContext arg0, UIComponent arg1, Object arg2) {
// Insira o código que transforme o objeto desejado (Product)    em String
}

}  </pre>
<p>Para registrar um conversor temos que usar as anotações:<br />
@Name &#8211; Registra o conversor como um componente Seam<br />
@BypassInterceptors &#8211; Indica que o conversor não deve sofrer ação dos intercetadores SEAM.<br />
@Converter &#8211; Registra o conversor no contexto <a href="http://java.sun.com/javaee/javaserverfaces/">JSF</a>, o atributo forClass indica a classe que iremos converter.</p>
<p>Também poderíamos cria o conversor usando um identificador, porém eu fiz alguns testes e para determinados comportamentos são gerados erros relacionados ao controle de estado.  Se você também teve estas experiências, compartilhe-as!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.marcossousa.com/2008/05/16/seam-getting-started-converters/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Vídeo Aula Jboss Seam: Seam Gen parte 3</title>
		<link>http://www.marcossousa.com/2008/04/30/video-aula-jboss-seam-seam-gen-parte-3/</link>
		<comments>http://www.marcossousa.com/2008/04/30/video-aula-jboss-seam-seam-gen-parte-3/#comments</comments>
		<pubDate>Wed, 30 Apr 2008 02:53:19 +0000</pubDate>
		<dc:creator>Marcos Sousa</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Java EE]]></category>
		<category><![CDATA[Java Server Faces]]></category>
		<category><![CDATA[Jboss Seam]]></category>
		<category><![CDATA[Vídeo Aulas]]></category>
		<category><![CDATA[@Converter]]></category>
		<category><![CDATA[Converters]]></category>
		<category><![CDATA[Java Magazine]]></category>
		<category><![CDATA[Java Vídeo Magazine]]></category>
		<category><![CDATA[Jboss]]></category>
		<category><![CDATA[Jboss Developer Studio]]></category>
		<category><![CDATA[JPA]]></category>
		<category><![CDATA[JSF]]></category>
		<category><![CDATA[RHDS]]></category>
		<category><![CDATA[Seam Framework]]></category>
		<category><![CDATA[Seam-gen]]></category>
		<category><![CDATA[Vídeo Aula]]></category>

		<guid isPermaLink="false">http://www.marcossousa.com/2008/04/30/video-aula-jboss-seam-seam-gen-parte-3/</guid>
		<description><![CDATA[Foi publicada no portal Java Magazine a 10ª  vídeo aula da série sobre Seam Framework.  Nesta vídeo aula eu mostrei como criar conversores de dados JSF usando anotações do Seam Framework. Esta maneira apresentada não requer a configuração dos conversores no arquivo de configuração do JSF, o faces-config.xml.
Na vídeo aula foram criados dois [...]]]></description>
			<content:encoded><![CDATA[<p>Foi publicada no portal <a href="http://www.javamagazine.com.br/">Java Magazine</a> a 10ª  vídeo aula da série sobre <a href="http://www.seamframework.org/">Seam Framework</a>.  Nesta vídeo aula eu mostrei como criar conversores de dados <a href="http://java.sun.com/javaee/javaserverfaces/">JSF</a> usando anotações do <a href="http://www.seamframework.org/">Seam Framework</a>. Esta maneira apresentada não requer a configuração dos conversores no arquivo de configuração do <a href="http://java.sun.com/javaee/javaserverfaces/">JSF</a>, o faces-config.xml.</p>
<p>Na vídeo aula foram criados dois conversores de dados <a href="http://java.sun.com/javaee/javaserverfaces/">JSF</a> para as entidades de Produto e Categoria. Estes conversores são usados nos combos de produto (página MovimentEdit.xhtml) e categorias (Página ProductEdit.xhtml). Estes combos recebem listas de SelectItem, métodos criados na <a href="http://www.marcossousa.com/2008/04/23/video-aula-jboss-seam-seam-gen-parte-2/">parte 9</a>, contendo como valor a instância de produto e categoria. Para finalizar foi criada uma ação para calcular o valor total do movimento.</p>
<p>Esta foi a última vídeo aula da série que introduz os recursos do <a href="http://www.seamframework.org/">Seam Framework</a>. Ao logo da série foi abordado a configuração da aplicação, criação de chamadas de ações usando parâmetros, a criação de page actions permitindo fazer o bind de parâmetros GET com propriedades de Managed Beans, criação de URL User Friendly, integração com Spring e por fim a exploração do Seam-Gen.</p>
<p>Espero que tenham gostado. Caso tenha alguma crítica e sugestão serão sempre bem vindas.</p>
<p><a href="http://www.devmedia.com.br/articles/viewcomp.asp?comp=8829" title="Visualizar vídeo aula"> Vídeo Aula</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.marcossousa.com/2008/04/30/video-aula-jboss-seam-seam-gen-parte-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Vídeo Aula Jboss Seam: Seam Gen parte 2</title>
		<link>http://www.marcossousa.com/2008/04/23/video-aula-jboss-seam-seam-gen-parte-2/</link>
		<comments>http://www.marcossousa.com/2008/04/23/video-aula-jboss-seam-seam-gen-parte-2/#comments</comments>
		<pubDate>Wed, 23 Apr 2008 19:20:13 +0000</pubDate>
		<dc:creator>Marcos Sousa</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Java EE]]></category>
		<category><![CDATA[Java Server Faces]]></category>
		<category><![CDATA[Jboss Seam]]></category>
		<category><![CDATA[RAD]]></category>
		<category><![CDATA[Vídeo Aulas]]></category>
		<category><![CDATA[Java Magazine]]></category>
		<category><![CDATA[Java Vídeo Magazine]]></category>
		<category><![CDATA[Jboss]]></category>
		<category><![CDATA[Jboss Developer Studio]]></category>
		<category><![CDATA[JPA]]></category>
		<category><![CDATA[JSF]]></category>
		<category><![CDATA[RHDS]]></category>
		<category><![CDATA[Seam Framework]]></category>
		<category><![CDATA[Seam-gen]]></category>
		<category><![CDATA[Vídeo Aula]]></category>

		<guid isPermaLink="false">http://www.marcossousa.com/2008/04/23/video-aula-jboss-seam-seam-gen-parte-2/</guid>
		<description><![CDATA[Foi publicada no portal Java Magazine a 9ª  vídeo aula da série sobre JBoss Seam.  Nesta vídeo aula eu mostrei como pode ser adicionados novos serviços dentro da aplicação gerada pelo Seam-Gen usando o Jboss Developer Studio.
Na vídeo aula foram criados métodos para cálculo de saldo de estoque e métodos para geração dos [...]]]></description>
			<content:encoded><![CDATA[<p>Foi publicada no portal <a href="http://www.javamagazine.com.br/">Java Magazine</a> a 9ª  vídeo aula da série sobre <a href="http://www.seamframework.org/">JBoss Seam</a>.  Nesta vídeo aula eu mostrei como pode ser adicionados novos serviços dentro da aplicação gerada pelo Seam-Gen usando o <a href="http://www.redhat.com/developer_studio/">Jboss Developer Studio</a>.</p>
<p>Na vídeo aula foram criados métodos para cálculo de saldo de estoque e métodos para geração dos itens dos combos para Categorias, Produtos e Tipos de Movimentos. Na próxima parte será mostrada a criação de Conversores <a href="http://java.sun.com/javaee/javaserverfaces/">JSF</a> usando as anotações do <a href="http://www.seamframework.org/" title="Seam Framework">Seam</a>. Vale a pena conferir!</p>
<p><a href="http://www.devmedia.com.br/articles/viewcomp.asp?comp=8702" title="Visualizar vídeo aula"> Vídeo Aula</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.marcossousa.com/2008/04/23/video-aula-jboss-seam-seam-gen-parte-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Vídeo Aula Jboss Seam: Seam Gen</title>
		<link>http://www.marcossousa.com/2008/04/22/video-aula-jboss-seam-seam-gen/</link>
		<comments>http://www.marcossousa.com/2008/04/22/video-aula-jboss-seam-seam-gen/#comments</comments>
		<pubDate>Tue, 22 Apr 2008 04:31:43 +0000</pubDate>
		<dc:creator>Marcos Sousa</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Java EE]]></category>
		<category><![CDATA[Java Server Faces]]></category>
		<category><![CDATA[Jboss Seam]]></category>
		<category><![CDATA[RAD]]></category>
		<category><![CDATA[Vídeo Aulas]]></category>
		<category><![CDATA[Java Magazine]]></category>
		<category><![CDATA[Java Vídeo Magazine]]></category>
		<category><![CDATA[Jboss]]></category>
		<category><![CDATA[Jboss Developer Studio]]></category>
		<category><![CDATA[JSF]]></category>
		<category><![CDATA[RHDS]]></category>
		<category><![CDATA[Seam Framework]]></category>
		<category><![CDATA[Seam-gen]]></category>
		<category><![CDATA[Vídeo Aula]]></category>

		<guid isPermaLink="false">http://www.marcossousa.com/2008/04/22/video-aula-jboss-seam-seam-gen/</guid>
		<description><![CDATA[Foi publicada no portal Java Magazine a 8ª  vídeo aula da série sobre JBoss Seam.  Nesta vídeo aula eu mostrei como é gerada uma aplicação a partir do Seam-Gen usando o Jboss Developer Studio.
Na vídeo aula foi criada uma aplicação de controle de estoque com cadastros de categorias, produtos e de movimentações de [...]]]></description>
			<content:encoded><![CDATA[<p>Foi publicada no portal <a href="http://www.javamagazine.com.br/">Java Magazine</a> a 8ª  vídeo aula da série sobre <a href="http://www.seamframework.org/">JBoss Seam</a>.  Nesta vídeo aula eu mostrei como é gerada uma aplicação a partir do Seam-Gen usando o <a href="http://www.redhat.com/developer_studio/">Jboss Developer Studio</a>.</p>
<p>Na vídeo aula foi criada uma aplicação de controle de estoque com cadastros de categorias, produtos e de movimentações de estoque. Após a criação da aplicação fiz uma explicação da estrutura que foi gerada após executar e testar o que foi gerado.</p>
<p><a href="http://www.devmedia.com.br/articles/viewcomp.asp?comp=8660" title="Visualizar vídeo aula"> Vídeo Aula</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.marcossousa.com/2008/04/22/video-aula-jboss-seam-seam-gen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Jboss Seam &#8211; Getting started: Navigation Cases!</title>
		<link>http://www.marcossousa.com/2008/04/14/jboss-seam-getting-started-navigation-cases/</link>
		<comments>http://www.marcossousa.com/2008/04/14/jboss-seam-getting-started-navigation-cases/#comments</comments>
		<pubDate>Mon, 14 Apr 2008 02:54:24 +0000</pubDate>
		<dc:creator>Marcos Sousa</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Java EE]]></category>
		<category><![CDATA[Java Server Faces]]></category>
		<category><![CDATA[Jboss Seam]]></category>
		<category><![CDATA[GET]]></category>
		<category><![CDATA[JSF]]></category>
		<category><![CDATA[Navigation Cases]]></category>
		<category><![CDATA[Page Actions]]></category>

		<guid isPermaLink="false">http://www.marcossousa.com/2008/04/14/jboss-seam-getting-started-navigation-cases/</guid>
		<description><![CDATA[No post Jboss Seam &#8211; 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 [...]]]></description>
			<content:encoded><![CDATA[<p>No post <a href="http://www.marcossousa.com/2008/03/01/jboss-seam-getting-started-page-actions/">Jboss Seam &#8211; Getting started: Page Actions</a>, 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.</p>
<p>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.</p>
<p>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:</p>
<pre class="brush: xml;">
&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;pages xmlns=&quot;http://jboss.com/products/seam/pages&quot;
xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;
xsi:schemaLocation=&quot;http://jboss.com/products/seam/pages

http://jboss.com/products/seam/pages-2.0.xsd&quot;&gt;

&lt;page view-id=&quot;/news/EditNews.xhtml&quot;&gt;
&lt;param name=&quot;newsId&quot; value=&quot;#{newsBean.news.newsId}&quot;/&gt;
&lt;action execute=&quot;#{newsBean.loadNewsById(newsBean.news.newsId)}&quot;/&gt;

&lt;rule if-outcome=&quot;error&quot;&gt;
&lt;redirect view-id=&quot;/news/list.xhtml&quot;/&gt;
&lt;/rule&gt;
&lt;/page&gt;
&lt;/pages&gt;
</pre>
<p>Assim, caso o identificador for nulo ou inválido a action  loadNewsById retornará o outcome <strong>error</strong>. 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?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.marcossousa.com/2008/04/14/jboss-seam-getting-started-navigation-cases/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Jboss Seam &#8211; Getting started: Page Actions!</title>
		<link>http://www.marcossousa.com/2008/03/01/jboss-seam-getting-started-page-actions/</link>
		<comments>http://www.marcossousa.com/2008/03/01/jboss-seam-getting-started-page-actions/#comments</comments>
		<pubDate>Sat, 01 Mar 2008 21:55:56 +0000</pubDate>
		<dc:creator>Marcos Sousa</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Java Server Faces]]></category>
		<category><![CDATA[Jboss Seam]]></category>
		<category><![CDATA[GET]]></category>
		<category><![CDATA[JSF]]></category>
		<category><![CDATA[Page Actions]]></category>

		<guid isPermaLink="false">http://www.marcossousa.com/2008/03/01/jboss-seam-getting-started-page-actions/</guid>
		<description><![CDATA[Um dos grandes problemas que os desenvolvedores JSF tem é lidar basicamente com 2 situações relacionadas com GET: Passar parâmetros e executar ações via GET. Vou dar dois exemplos clássicos:
1° &#8211; Você tem um sistema de cadastro de notícias. Dentro deste sistema você tem uma página que faz a listagem das notícias cadastradas. Para listar [...]]]></description>
			<content:encoded><![CDATA[<p>Um dos grandes problemas que os desenvolvedores <a href="http://java.sun.com/javaee/javaserverfaces/">JSF</a> tem é lidar basicamente com 2 situações relacionadas com <a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html">GET</a>: Passar parâmetros e executar ações via <a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html">GET.</a> Vou dar dois exemplos clássicos:<br />
1° &#8211; Você tem um sistema de cadastro de notícias. Dentro deste sistema você tem uma página que faz a listagem das notícias cadastradas. Para listar estas notícias cadastradas assim que carregasse a página você tinha duas saídas: uma seria fazer o controle no método get de seu datatable:<br />
- No Managed Bean</p>
<pre class="brush: java;">
private List&lt;News&gt; newsList;
...
public List&lt;News&gt; getNewList() {
if (newsList == null) {
newsList = myService.listNews();
}
return newsList;
}
</pre>
<p>Na página seria algo:</p>
<pre class="brush: xml;">
&lt;h:dataTable value=&quot;#{newBean.newsList}&quot;&gt;
&lt;!-- colunas da tabela --&gt;
&lt;/h:dataTable&gt;
</pre>
<p>A outra forma você teria que criar a ação de listagem e para acessar a página você teria que chamar a página de um componente <a href="http://java.sun.com/javaee/javaserverfaces/">jsf</a>: um menu ou um botão que fizesse uma requisição post invocando a ação.</p>
<p>Usando o recurso de Page Actions do <a href="http://www.seamframework.org/">Jboss Seam</a> você não precisa mais usar estas &#8220;soluções alternativas&#8221; para executar ações e passar parâmetros para um Managed Bean via <a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html">GET.</a> Dentro de seu projeto o <a href="http://www.seamframework.org/">Seam</a> irá reconhecer todos arquivos xml que sigam o padrão:  *.page.xml ou o arquivo pages.xml dentro da pasta WEB-INF. Veja um exemplo do arquivo:</p>
<pre class="brush: xml;">
&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;pages xmlns=&quot;http://jboss.com/products/seam/pages&quot;
xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;
xsi:schemaLocation=&quot;http://jboss.com/products/seam/pages

http://jboss.com/products/seam/pages-2.0.xsd&quot;&gt;

&lt;page view-id=&quot;/news/list.xhtml&quot;
action=&quot;#{newsBean.listNews}&quot;
conversation-required=&quot;false&quot;/&gt;

&lt;page view-id=&quot;/news/EditNews.xhtml&quot;&gt;
&lt;param name=&quot;newsId&quot; value=&quot;#{newsBean.news.newsId}&quot;/&gt;
&lt;action execute=&quot;#{newsBean.loadNewsById(newsBean.news.newsId)}&quot;
if=&quot;#{newsBean.news.newsId != null}&quot;/&gt;
&lt;/page&gt;
&lt;/pages&gt;
</pre>
<p>O código acima chama a ação <a href="http://java.sun.com/javaee/javaserverfaces/">JSF</a> listNews antes de renderizar a página /news/list.jsf, que pode ser chamada via <a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html">GET</a> ou <a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html">POST</a>. O mesmo acontece para a edição de notícias /news/EditNews.jsf?newsId=9. Primeiro será vinculado o valor do parâmetro newsId com propriedade <em>newsBean.news.newsId </em>e após será chamada a ação loadNewsById que carrega a notícia recebendo como parâmetro o identificador da notícia.</p>
<p>Sem dúvida nenhuma o recurso de Page Actions é bem legal para se trabalhar com <a href="http://java.sun.com/javaee/javaserverfaces/">JSF</a>. Vale a pena usar! Em breve mostrarei mais dicas de Page Actions!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.marcossousa.com/2008/03/01/jboss-seam-getting-started-page-actions/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Vídeo Aula Jboss Seam: Integração Spring parte 2</title>
		<link>http://www.marcossousa.com/2008/02/14/video-aula-jboss-seam-integracao-spring-parte-2/</link>
		<comments>http://www.marcossousa.com/2008/02/14/video-aula-jboss-seam-integracao-spring-parte-2/#comments</comments>
		<pubDate>Thu, 14 Feb 2008 15:31:45 +0000</pubDate>
		<dc:creator>Marcos Sousa</dc:creator>
				<category><![CDATA[Hibernate]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Java Server Faces]]></category>
		<category><![CDATA[Jboss Seam]]></category>
		<category><![CDATA[Spring]]></category>
		<category><![CDATA[Vídeo Aulas]]></category>
		<category><![CDATA[Java Magazine]]></category>
		<category><![CDATA[Java Vídeo Magazine]]></category>
		<category><![CDATA[Jboss]]></category>
		<category><![CDATA[JSF]]></category>
		<category><![CDATA[RHDS]]></category>
		<category><![CDATA[Spring Framework]]></category>
		<category><![CDATA[URL Rewrite]]></category>
		<category><![CDATA[Variable Resolver]]></category>
		<category><![CDATA[Vídeo Aula]]></category>

		<guid isPermaLink="false">http://www.marcossousa.com/2008/02/14/video-aula-jboss-seam-integracao-spring-parte-2/</guid>
		<description><![CDATA[Foi publicada no portal Java Magazine a 7ª  vídeo aula da série sobre JBoss Seam.  Nesta vídeo aula eu continuei mostrando os passos para a integração entre o Seam e o Spring Framework.
Como havia dito no post anterior, o  Seam suporta a injeção de objetos presentes no contexto JSF. Nesta vídeo aula [...]]]></description>
			<content:encoded><![CDATA[<p>Foi publicada no portal <a href="http://www.javamagazine.com.br/">Java Magazine</a> a 7ª  vídeo aula da série sobre <a href="http://www.jboss.com/products/seam">JBoss Seam</a>.  Nesta vídeo aula eu continuei mostrando os passos para a integração entre o <a href="http://www.jboss.com/products/seam">Seam</a> e o <a href="http://www.springframework.org">Spring Framework</a>.</p>
<p>Como havia dito no <a href="http://www.marcossousa.com/2008/02/08/video-aula-jboss-seam-integracao-spring-parte-1/" title="Visualizar o post anterior">post anterior</a>, o  <a href="http://www.jboss.com/products/seam">Seam</a> suporta a injeção de objetos presentes no contexto <a href="http://java.sun.com/javaee/javaserverfaces/">JSF.</a> Nesta vídeo aula foi mostrado como configurar o components.xml, VariableResolver  do <a href="http://www.springframework.org">Spring</a> e criado um bean de persistência de usuários para persistir usuários.</p>
<p><a href="http://www.marcossousa.com/wp-content/uploads/2008/02/seamtest-part7.zip" title="Direct link to file">Download dos Fontes Vídeo Aula</a><br />
<a href="http://www.devmedia.com.br/articles/viewcomp.asp?comp=7841" title="http://www.devmedia.com.br/articles/viewcomp.asp?comp=7888"> Vídeo Aula</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.marcossousa.com/2008/02/14/video-aula-jboss-seam-integracao-spring-parte-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Vídeo Aula Jboss Seam: Integração Spring parte 1</title>
		<link>http://www.marcossousa.com/2008/02/08/video-aula-jboss-seam-integracao-spring-parte-1/</link>
		<comments>http://www.marcossousa.com/2008/02/08/video-aula-jboss-seam-integracao-spring-parte-1/#comments</comments>
		<pubDate>Fri, 08 Feb 2008 14:49:06 +0000</pubDate>
		<dc:creator>Marcos Sousa</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Java Server Faces]]></category>
		<category><![CDATA[Jboss Seam]]></category>
		<category><![CDATA[Spring]]></category>
		<category><![CDATA[Spring Annotations]]></category>
		<category><![CDATA[Vídeo Aulas]]></category>
		<category><![CDATA[Java Magazine]]></category>
		<category><![CDATA[Java Vídeo Magazine]]></category>
		<category><![CDATA[Jboss]]></category>
		<category><![CDATA[JSF]]></category>
		<category><![CDATA[RHDS]]></category>
		<category><![CDATA[Spring Framework]]></category>
		<category><![CDATA[URL Rewrite]]></category>
		<category><![CDATA[Variable Resolver]]></category>
		<category><![CDATA[Vídeo Aula]]></category>

		<guid isPermaLink="false">http://www.marcossousa.com/2008/02/08/video-aula-jboss-seam-integracao-spring-parte-1/</guid>
		<description><![CDATA[Foi publicada no portal Java Magazine a 6ª  vídeo aula da série sobre JBoss Seam.  Nesta vídeo aula eu mostrei como é feita a integração entre o Seam e o Spring Framework.
O fato do  Seam suportar a injeção de objetos presentes no contexto JSF permite que os beans declarados com contexto do [...]]]></description>
			<content:encoded><![CDATA[<p>Foi publicada no portal <a href="http://www.javamagazine.com.br/">Java Magazine</a> a 6ª  vídeo aula da série sobre <a href="http://www.jboss.com/products/seam">JBoss Seam</a>.  Nesta vídeo aula eu mostrei como é feita a integração entre o <a href="http://www.jboss.com/products/seam">Seam</a> e o <a href="http://www.springframework.org">Spring Framework</a>.</p>
<p>O fato do  <a href="http://www.jboss.com/products/seam">Seam</a> suportar a injeção de objetos presentes no contexto <a href="http://java.sun.com/javaee/javaserverfaces/">JSF</a> permite que os beans declarados com contexto do <a href="http://www.springframework.org">Spring</a> sejam facilmente consumidos pelos componentes<a href="http://www.jboss.com/products/seam"> Seam</a>. Aí surgiria um problema, como fazer os beans presentes no contexto Spring ficar disponíveis no contexto JSF? Simples, o <a href="http://www.springframework.org">Spring</a> possui um VariableResolver que disponibiliza os beans existentes dentro do contexto <a href="http://www.springframework.org">Spring</a>.<br />
<a href="http://www.marcossousa.com/wp-content/uploads/2008/02/seamtest-part7.zip" title="Direct link to file">Download dos Fontes Vídeo Aula</a><br />
<a href="http://www.devmedia.com.br/articles/viewcomp.asp?comp=7841"> Vídeo Aula</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.marcossousa.com/2008/02/08/video-aula-jboss-seam-integracao-spring-parte-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
