Facelets

10 respostas
G

tenho uma aplicação funcionando com richfaces/tomahawk/facelets/spring

minha configuração da app, não possibilitava o uso do componente fileupload do richfaces, então tive que dar uma boa arrumada no web.xml, de modo que eu pudesse usar o componente, ficou assim:
<?xml version="1.0"?>

<web-app version="2.5" 

                xmlns="http://java.sun.com/xml/ns/javaee"

                xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 

                xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

<display-name>Greeter</display-name>

  

<context-param>

   <param-name>javax.faces.STATE_SAVING_METHOD</param-name>

   <param-value>server</param-value>

</context-param>


 <!-- **************************************************FACELETS -->  
<context-param>
    <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
    <param-value>.xhtml</param-value>
  </context-param>
  
  <!-- Special Debug Output for Development -->
  <context-param>
    <param-name>facelets.DEVELOPMENT</param-name>
    <param-value>true</param-value>
  </context-param>
	  
  <!-- Optional JSF-RI Parameters to Help Debug -->
  <context-param>
    <param-name>com.sun.faces.validateXml</param-name>
    <param-value>true</param-value>
  </context-param>
  <context-param>
    <param-name>com.sun.faces.verifyObjects</param-name>
    <param-value>true</param-value>
  </context-param>
 <!-- ***************************************************FACELETS -->
 
 
 
 
<!-- ****************************************************RICHFACES --> 
<context-param>

   <param-name>org.richfaces.SKIN</param-name>

   <param-value>blueSky</param-value>

</context-param>



<context-param>

      <param-name>org.richfaces.CONTROL_SKINNING</param-name>

      <param-value>enable</param-value>

</context-param>

 

<filter> 

   <display-name>RichFaces Filter</display-name> 

   <filter-name>richfaces</filter-name> 

   <filter-class>org.ajax4jsf.Filter</filter-class> 
   
   <init-param>
            <param-name>createTempFiles</param-name>
            <param-value>true</param-value>
        </init-param>
        <init-param>
            <param-name>maxRequestSize</param-name>
            <param-value>20000000</param-value>
        </init-param>

</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>
<!-- ****************************************************RICHFACES -->





<!-- ****************************************************TOMAHAWK -->
  <filter>
	<filter-name>MyFacesExtensionsFilter</filter-name>
	<filter-class>org.apache.myfaces.webapp.filter.ExtensionsFilter</filter-class>
    <init-param>
        <param-name>uploadMaxFileSize</param-name>
        <param-value>20m</param-value>
        
    </init-param>
</filter>

<!-- extension mapping for adding <script/>, <link/>, and other resource tags to JSF-pages  -->
<filter-mapping>
    <filter-name>MyFacesExtensionsFilter</filter-name>
    <!-- servlet-name must match the name of your javax.faces.webapp.FacesServlet entry -->
    <servlet-name>Faces Servlet</servlet-name>
</filter-mapping>

<!-- extension mapping for serving page-independent resources (javascript, stylesheets, images, etc.)  -->
<filter-mapping>
    <filter-name>MyFacesExtensionsFilter</filter-name>
    <url-pattern>/faces/myFacesExtensionResource/*</url-pattern>
</filter-mapping>
<!-- ****************************************************TOMAHAWK -->


<listener>
   <listener-class>com.sun.faces.config.ConfigureListener</listener-class>
</listener>



<!-- *******************************************************SPRING -->
<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
 </listener>
<!-- *******************************************************SPRING -->  
  

<!-- Faces Servlet -->

<servlet>

   <servlet-name>Faces Servlet</servlet-name>

   <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>

   <load-on-startup>1</load-on-startup>

</servlet>

 

<!-- Faces Servlet Mapping -->

<servlet-mapping>

   <servlet-name>Faces Servlet</servlet-name>

   <url-pattern>*.jsf</url-pattern>

</servlet-mapping>

  

<login-config>

   <auth-method>BASIC</auth-method>

   </login-config>

</web-app>
ja testei em outro projeto e funciona. Ao implantar esse xml no meu atual projeto(o q precisa do fileupload), não consigo visualizar nenhum xhtml, ficam todos em branco.
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
	  xmlns:f="http://java.sun.com/jsf/core"
	  xmlns:a4j="http://richfaces.org/a4j"
      xmlns:rich="http://richfaces.org/rich">
<f:view>  
	<head><title>Login</title></head>  
    <body >
    <h:form id="form">
    			
    			<!-- h:commandLink value="Busca" action="{mbLogin.setaPathBusca}" style="position: absolute; right:90px; top:70px;font-size:15px;" immediate="true"/-->      
      			<rich:panel header="Login" style="width:15em; margin:0 auto; margin-top:20%;">
				<!-- se der o restoreViewException é so tira o a4j status -->
      			
      				<h:panelGrid columns="2" id="loginGrid">
      					<h:outputLabel for="usuario" value="Usuario"/>
      					<h:inputText id="usuario" value="#{mbLogin.usuario.usuario}" 
      								required="true" requiredMessage="informe um usuario!"/>        										
      					<h:outputLabel for="senha" value="Senha"/>
      					<h:inputSecret id="senha" value="#{mbLogin.usuario.senha}" 
      								required="true" requiredMessage="informe uma senha!"/>        								
      					<center><h:commandButton action="#{mbLogin.login}" reRender="loginGrid" value="Login"
      								/></center>
      					<h:messages  style="text-decoration: none; color:red; font-size:10pt;"/> 
      				</h:panelGrid>
      			</rich:panel>
      </h:form>
    </body>
</f:view>
</html>
essa é o xhtml de login, primeira tela, e fica em branco, assim como todas as outras telas do sistema... nenhuma exception é lançada, talvez eu esteja esquecendo de alguma configuração ?

10 Respostas

Guilherme_Gomes

Eu dei uma olhada na net e achei isso.

Mas só por garantia, tenta mudar a configuração de *.jsf para *.xhtml e acessa a URL com final xhtml.

G

continua em branco …
quanto ao link, ja havia lido a respeito disso ^^, mas se tiver mais alguma informação, será bem vinda.

Guilherme_Gomes

Realmente, eu uso uma configuração na minha aplicação muito parecida com a sua… Mas eu acabei banindo o tomahawk do meu projeto por causa desse tipo de conflito.

G

pois é, mas eu preciso usar o tomahawk ^^

Guilherme_Gomes

Então faça aquilo que diz no link que eu te passei… Sobrescreva um dos filtros (no seu caso, do tomahawk) e tire a parte que trata do upload. Veja se pára o conflito.

G

naum… o problema do conflito ja foi resolvido kra, o filtro do richfaces tem q ser declarado antes do filtro do myfacesExtensions, o problema é que com essa nova config q eu fiz, não consigo visualizar meus xhtml’s, ficam em branco, porem nenhuma excpetion ou mensagem é lançada…

Guilherme_Gomes

O que tem de diferente entre esse seu projeto e o outro que funciona (incluindo versão de JARs)?

G

o uso de templates, um utiliza templates, e outro, oq fiz a titulo de teste, somente faz referencia a um arquivo xhtml

Guilherme_Gomes

Faz assim, cria um arquivo HTML normal só com algumas porcarias dentro e acessa ele. Depois me fala se acessou!

sauron_fight

Estou com um problema quero usar Richfaces e facelets.

coloquei no xhtml : xmlns:rich=“http://richfaces.org/rich

dentro do arquivo xhtml chamo o compomente richfaces: <rich:calendar></rich:calendar>

mais dentro dos componente richfaces não tenho acesso aos atributos, so tendo acesso ao atributo id, estou usando
facelets 1.1.14 e richfaces 3.3.0

Como esta :<rich:calendar></rich:calendar>

Como deveria esta <rich:calendar converter="" currentDate="" dayStyleClass=""> </rich:calendar>

Desde ja agradeco a todos.

Criado 17 de julho de 2009
Ultima resposta 25 de jun. de 2010
Respostas 10
Participantes 3