Configurando RichFaces e Ajax4JSF

novembro 17, 2008

Trabalhar com RichFaces e Ajax4JSF é simples. Para configurar sua aplicação, basta colocar nas bibliotecas de sua aplicaçãos os jars:

richfaces-api-*.jar; richfaces-impl-*.jar; richfaces-ui-*.jar

que podem ser baixados em: http://www.jboss.org/jbossrichfaces/downloads/

Escolha a versão mais nova, que atualmente é: richfaces-ui-3.2.2.GA-bin.zip

Depois, basta configurar o arquivo web.xml para trabalhar com Ajax e Richfaces. Para definir o skin do RichFaces:


<context-param>
<param-name>org.richfaces.SKIN</param-name>
<param-value>blueSky</param-value>
 </context-param>

e definir o filtro que trabalhará com o RichFaces:

<!-- Filtro do RichFaces -->

<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>

Finalmente, em toda página JSF lembre-se de “importar” os componentes do Rich Faces assim:

<%@taglib prefix=”rich” uri=”http://richfaces.org/rich”%&gt;

Uma ótima fonte de exemplos de vários componentes do RichFaces e do Ajax4JSF é essa: http://livedemo.exadel.com/richfaces-demo/index.jsp

Configurando JBoss

Como o projeto RichFaces usa alguns componentes de outros projetos, precisamos colocar algumas bibliotecas, especificamente algumas do projeto Apache Commons, no JBoss para que suas aplicações RichFaces funcionem. As bibliotecas necessárias são: commons-digester e  commons-beanutils. Para inserir no JBoss , basta colocar na pasta lib da área de deployment de sua preferência. Por exemplo, se você usa o diretório {JBOSS_HOME}/server/default/deploy para implantar suas aplicações, você deve colocar essas bibliotecas em {JBOSS_HOME}/server/default/lib.

Essas bibliotecas podem ser encontradas aqui:

Definindo um skin para suas aplicações

Skin, ou pele, é a área onde se define as configurações de cores e tamanhos dos elementos gráficos de uma página JSF. O RichFaces, como vimos anteriormente, já vem com alguns skins preconfigurados (bluesky, classic, deepMarine, etc).

Para definir seu próprio, basta criar um arquivo <nome>.skin.properties, e colocá-lo no diretório raiz do código fonte de sua aplicação, com os valores que desejar dos atributos abaixo (os valores abaixo são do skin blueSky):


#Colors
 headerBackgroundColor=#BED6F8
 headerGradientColor=#F2F7FF
 headerTextColor=#000000
 headerWeightFont=bold

generalBackgroundColor=#FFFFFF
 generalTextColor=#000000
 generalSizeFont=11px
 generalFamilyFont=Arial, Verdana, sans-serif

controlTextColor=#000000
 controlBackgroundColor=#ffffff
 additionalBackgroundColor=#ECF4FE

shadowBackgroundColor=#000000
 shadowOpacity=1

panelBorderColor=#BED6F8
 subBorderColor=#ffffff

tabBackgroundColor=#C6DEFF
 tabDisabledTextColor=#8DB7F3

trimColor=#D6E6FB

tipBackgroundColor=#FAE6B0
 tipBorderColor=#E5973E

selectControlColor=#E79A00

generalLinkColor=#0078D0
 hoverLinkColor=#0090FF
 visitedLinkColor=#0090FF

# Fonts
 headerSizeFont=11px
 headerFamilyFont=Arial, Verdana, sans-serif

tabSizeFont=11
 tabFamilyFont=Arial, Verdana, sans-serif

buttonSizeFont=11
 buttonFamilyFont=Arial, Verdana, sans-serif

tableBackgroundColor=#FFFFFF
 tableFooterBackgroundColor=#cccccc
 tableSubfooterBackgroundColor=#f1f1f1
 tableBorderColor=#C0C0C0
 tableBorderWidth=1px

#Calendar colors
 calendarWeekBackgroundColor=#F5F5F5

calendarHolidaysBackgroundColor=#FFEBDA
 calendarHolidaysTextColor=#FF7800

calendarCurrentBackgroundColor=#FF7800
 calendarCurrentTextColor=#FFEBDA

calendarSpecBackgroundColor=#E4F5E2
 calendarSpecTextColor=#000000
 

Referências

Anúncios

2 Respostas to “Configurando RichFaces e Ajax4JSF”

  1. Junior said

    Gustavo, eu estava olhando seu tutorial e tentei configurar como mostrado acima, mas quando eu coloco as tags do RichFaces o projeto não roda mais (ERRO 404). Vc sabe pq pode estar dando esse erro??

    • gugawag said

      Olá Junior. Você colocou as bibliotecas richfaces-api-*.jar; richfaces-impl-*.jar; richfaces-ui-*.jar no WEB-INF/lib de seu projeto web, e colocou no JBoss as bibliotecas commons-digester (commons-digester*.jar) e commons-beanutils (commons-beanutils.jar) na pasta {JBOSS_HOME}/server/default/lib? Lembre-se que pós colocar essas bibliotecas no JBoss você precisa reiniciá-lo para alterar seu classpath? Se ao fazer os passos acima mesmo assim persistir o erro, olhe por favor o log do JBoss que ele vai te dar o direcionamento do que está faltando (provavelmente biblioteca), ok?
      Ah, percebi que ao invés de {JBOSS_HOME}/server/default/lib coloquei no tutorial {JAVA_HOME}/server/default/lib. Vou alterar isso.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s

%d blogueiros gostam disto: