[Richfaces] Style de Componentes não carrega

Seguinte…
Estou começando a desenvolver com richfaces, e me deparei com um problema:

Alguns botões, inputText, entre outros, não carregam o style(Blue-Sky no caso).

O principal é o “<a4j:commandButton/>”

As funções do botão funcionam perfeitamente, a questão é somente o Style. Esse é o codigo que o chama:

&lt;a4j:commandButton action="#{produtoBean.actionEditarProduto}"
	value="Editar" reRender="cadastro, tabelaProd"&gt;
	&lt;f:setPropertyActionListener value="#{prod}"
	target="#{produtoBean.produto}" /&gt;
&lt;/a4j:commandButton&gt;

E no meu web.xml está configurado como “enable” o “CONTROL_SKINNING”.

:roll:


No site:
http://livedemo.exadel.com/richfaces-demo/richfaces/graphValidator.jsf?c=graphValidator&tab=usage

Percebi que ele carrega os botões com a skin html normal, ao terminar de iniciar a pagina, a skin muda :shock: .
Tentei ver o codigo fonte, mas é como procurar a agulha no palheiro :smiley:

Se voce estiver usando Safari ou Opera, alguns componentes vao usar o skin do browser.

Percebi isso quando estava testando uma aplicacao no Safari e os botoes usavam o estilo do Safari e quando a abri no firefox todos os botoes apareceram com o estilo do richfaces.

Retirado da pagina livedemo do richfaces:

http://livedemo.exadel.com/richfaces-demo/richfaces/standardSkinning.jsf?c=StandardSkinning&tab=usage

Mas a skin não está carregando em nenhum browser aqui(Firefox, Chrome e IE7).

No chrome, tem uma gambiarra que funciona, que seria, apos carregar a pagina, ir na barra de endereço e digitar o endereço certinho da mesma jsp que estou… soh vi funcionar assim :shock:

Adicione isso ao seu web.xml

    <context-param>
        <param-name>org.richfaces.CONTROL_SKINNING</param-name>
        <param-value>enable</param-value>
    </context-param>

Ja adicionei o Control Skinning…

meu web.xml:

[code]<?xml version=“1.0” encoding=“UTF-8”?>
<web-app xmlns=“http://java.sun.com/xml/ns/javaee
xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance” version=“2.5”
xsi:schemaLocation=“http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd”>

&lt;!-- Plugging the "Blue Sky" skin into the project --&gt;
&lt;context-param&gt;
	&lt;param-name&gt;org.richfaces.SKIN&lt;/param-name&gt;
	&lt;param-value&gt;blueSky&lt;/param-value&gt;
&lt;/context-param&gt;
&lt;!-- Making the RichFaces skin spread to standard HTML controls --&gt;

&lt;context-param&gt;
    &lt;param-name&gt;org.richfaces.CONTROL_SKINNING&lt;/param-name&gt;
    &lt;param-value&gt;enable&lt;/param-value&gt;
&lt;/context-param&gt;
&lt;context-param&gt;
	&lt;param-name&gt;org.richfaces.CONTROL_SKINNING_CLASSES&lt;/param-name&gt;
	&lt;param-value&gt;enable&lt;/param-value&gt;
&lt;/context-param&gt;


&lt;!-- Defining and mapping the RichFaces filter --&gt;
&lt;filter&gt;
	&lt;display-name&gt;RichFaces Filter&lt;/display-name&gt;
	&lt;filter-name&gt;richfaces&lt;/filter-name&gt;
	&lt;filter-class&gt;org.ajax4jsf.Filter&lt;/filter-class&gt;
&lt;/filter&gt;
&lt;filter-mapping&gt;
	&lt;filter-name&gt;richfaces&lt;/filter-name&gt;
	&lt;servlet-name&gt;Faces Servlet&lt;/servlet-name&gt;
	&lt;dispatcher&gt;REQUEST&lt;/dispatcher&gt;
	&lt;dispatcher&gt;FORWARD&lt;/dispatcher&gt;
	&lt;dispatcher&gt;INCLUDE&lt;/dispatcher&gt;
&lt;/filter-mapping&gt;

&lt;context-param&gt;
	&lt;param-name&gt;javax.faces.CONFIG_FILES&lt;/param-name&gt;
	&lt;param-value&gt;/WEB-INF/faces-config.xml&lt;/param-value&gt;
&lt;/context-param&gt;
&lt;servlet&gt;
	&lt;servlet-name&gt;Faces Servlet&lt;/servlet-name&gt;
	&lt;servlet-class&gt;javax.faces.webapp.FacesServlet&lt;/servlet-class&gt;
	&lt;load-on-startup&gt;0&lt;/load-on-startup&gt;
&lt;/servlet&gt;
&lt;servlet-mapping&gt;
	&lt;servlet-name&gt;Faces Servlet&lt;/servlet-name&gt;
	&lt;url-pattern&gt;*.jsf&lt;/url-pattern&gt;
&lt;/servlet-mapping&gt;

&lt;welcome-file-list&gt;
	&lt;welcome-file&gt;index.jsp&lt;/welcome-file&gt;
&lt;/welcome-file-list&gt;

</web-app>
[/code]

Fala Hellmanss,

no meu esta funcionando perfeito, a unica diferença do meu web.xml para o seu é

não coloque o CLASSES

   <context-param>   
        <param-name>org.richfaces.CONTROL_SKINNING_CLASSES</param-name>   
        <param-value>enable</param-value>   
    </context-param>

e o meu Faces Servlet esta com load 1


   <servlet>   
        <servlet-name>Faces Servlet</servlet-name>   
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>   
        <load-on-startup>1</load-on-startup>   
    </servlet>

Qual versao do Rich vc ta usando ?

Abraços

Opaa

removi a tag… e adicionei o load 1, mas continua o mesmo problema nos navegadores.

A versão do rich é 3.0.0 GA.

Se souber mais alguma coisa para mim tentar aqui eu agradeço :slight_smile:

bom tenta a 3.3.1 é q estou usando e é a mais nova!

Abrass

outra coisa tambem, tira as tags do web.xml pra o SKIN para ele assumir o default, so para teste, ver se pelo menos no default ele carrega!

Abrass

Consegui resolver adicionando em cada botão o style dele:

tyleClass="rich-button"  
                                onmouseover="this.className='rich-button-over'"  
                                onmouseout="this.className='rich-button'"  
                                onmousedown="this.className='rich-button-press'"  
                                onmouseup="this.className='rich-button-over'" 

Estou estudando na versão 3.0.0 pq é padrão em um framework aqui na empresa. Por isso não convem utilizar a ultima versão. :?

Se alguem souber como resolver esse probleminha sem ter que por o class nos botoes posta, já vi bastante gente com o mesmo problema…

vlw e até mais!