<?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; Seam-gen</title>
	<atom:link href="http://www.marcossousa.com/tag/seam-gen/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>Generator do Seam 2.1 não é compativel com 2.0.x</title>
		<link>http://www.marcossousa.com/2009/03/28/generator-do-seam-21-nao-e-compativel-com-20x/</link>
		<comments>http://www.marcossousa.com/2009/03/28/generator-do-seam-21-nao-e-compativel-com-20x/#comments</comments>
		<pubDate>Sat, 28 Mar 2009 22:30:33 +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[JSF]]></category>
		<category><![CDATA[Seam Framework]]></category>
		<category><![CDATA[Seam-gen]]></category>

		<guid isPermaLink="false">http://www.marcossousa.com/?p=169</guid>
		<description><![CDATA[Fazendo alguns testes com o Seam acabei descobrindo uma falha de compatibilidade do Seam Generator da versão 2.1 com as versões anteriores. O problema reside nos filtros que são criados nas páginas de listagens.
Nas versões anteriores, o componente para as páginas de listagens sobrescreviam os métodos:
- getEjbql: Consulta EJB QL usada para a listagem.
- getMaxResults: [...]]]></description>
			<content:encoded><![CDATA[<p>Fazendo alguns testes com o Seam acabei descobrindo uma falha de compatibilidade do Seam Generator da versão 2.1 com as versões anteriores. O problema reside nos filtros que são criados nas páginas de listagens.</p>
<p>Nas versões anteriores, o componente para as páginas de listagens sobrescreviam os métodos:<br />
- <strong>getEjbql</strong>: Consulta EJB QL usada para a listagem.<br />
- <strong>getMaxResults</strong>: Define a quantidade de registros a serem retornados pela listagem.<br />
- <strong>getRestrictions</strong>: Retorna lista de restrições a serem adicionadas a consulta.</p>
<p>Porém na versão 2.1 estes métodos deixaram de ser usados na geração do código. O problema é que o método <strong>getRestrictions </strong>teve o retorno aterado. Nas versões anteriores ele retornava uma lista de Strings, já na versão 2.1 o tipo de retorno foi alterado para uma lista de ValueExpression.</p>
<p>Com isto um código gerado na versão na versão 2.0.3, por exemplo, gera ClassCastException ao tentar converter String em ValueExpression. Solução? Atualizar o código, veja o antes e o depois:</p>
<pre class="brush: java;">@Name(&quot;userList&quot;)
public class UserList extends EntityQuery {

private static final String[] RESTRICTIONS = {
&quot;lower(user.login) like concat(lower(#{userList.user.login}),'%')&quot;,
&quot;lower(user.name) like concat(lower(#{userList.user.name}),'%')&quot;};

private final User user = new User();
@Override
public String getEjbql() {
return &quot;select user from User user&quot;;
}

@Override
public Integer getMaxResults() {
return 25;
}

public User getUser() {
return user;
}

@Override
public List&lt;string&gt; getRestrictions() {
return Arrays.asList(RESTRICTIONS);
}

}</pre>
<p>A versão 2.1 o código gerado é algo semelhante a:</p>
<pre class="brush: java;">@Name(&quot;userList&quot;)
public class UserList extends EntityQuery&lt;user&gt; {

private static final String EJBQL = &quot;select user from User user&quot;;

private static final String[] RESTRICTIONS = {
&quot;lower(user.login) like concat(lower(#{userList.user.login}),'%')&quot;,
&quot;lower(user.name) like concat(lower(#{userList.user.name}),'%')&quot;};

private final User user = new User();

public UserList() {
setRestrictionExpressionStrings(Arrays.asList(RESTRICTIONS));
setMaxResults(25);
setEjbql(EJBQL);
}

public User getUser() {
return user;
}
}</pre>
<p>Até que seja corrigido o problema fica a dica.</user></string></p>
]]></content:encoded>
			<wfw:commentRss>http://www.marcossousa.com/2009/03/28/generator-do-seam-21-nao-e-compativel-com-20x/feed/</wfw:commentRss>
		<slash:comments>8</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>
	</channel>
</rss>
