Pagina JSF 1.2 não carrega os componentes richfaces

9 respostas
camila.java

Boa tarde

As paginas do meu projeto não estão carregando os compoentes do richfaces, caso coloque qualquer texto fora das tags do rich ele aparece perfeitamente, nem chega a dar erro, as paginas ficam em branco. Alguém sabe o que pode ser.

Meu Face-config

<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" 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>Gestão de Projetos</display-name>
 	<context-param>
		<param-name>com.sun.faces.validateXml</param-name>
		<param-value>true</param-value>
	</context-param>
	<context-param>
		<param-name>javax.faces.DEFAULT_SUFFIX</param-name>
		<param-value>.xhtml</param-value>
	</context-param>
	<context-param>
		<param-name>facelets.DEVELOPMENT</param-name>
		<param-value>false</param-value>
	</context-param>
	<context-param>
		<param-name>facelets.SKIP_COMMENTS</param-name>
		<param-value>true</param-value>
	</context-param>
	
	<!-- Estilo CSS -->
	<context-param>
		<param-name>org.richfaces.SKIN</param-name>
		<param-value>blueSky</param-value>
	</context-param>

	<!-- Making the RichFaces skin spread to standard HTML controls -->
	<context-param>
		<param-name>org.richfaces.CONTROL_SKINNING</param-name>
		<param-value>enable</param-value>
	</context-param>
	
	<!-- RichFaces filter -->
	<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>

	<servlet>
		<servlet-name>Faces Servlet</servlet-name>
		<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
		<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet-mapping>
		<servlet-name>Faces Servlet</servlet-name>
		<url-pattern>*.jsf</url-pattern>
	</servlet-mapping>
	

	
	<session-config>
		<session-timeout>30</session-timeout>
	</session-config>
	
	<welcome-file-list>
		<welcome-file>index.jsp</welcome-file>
	</welcome-file-list>
	
</web-app>

Minha pagina

<ui:composition xmlns="http://www.w3.org/1999/xhtml"
   				xmlns:ui="http://java.sun.com/jsf/facelets"
   				xmlns:a4j="http://richfaces.org/a4j"
				xmlns:rich="http://richfaces.org/rich"
   				xmlns:h="http://java.sun.com/jsf/html"
   				xmlns:f="http://java.sun.com/jsf/core"
   				template="/WEB-INF/template/template.xhtml">

 	<ui:define name="conteudo">
 	<h:form id="teste">	
 	<f:view>
 	<h:outputText id="labelNomeCurso" value="Nome *" />
 	</f:view>
 	</h:form>

	</ui:define>
</ui:composition>

Obrigada

9 Respostas

vcsmetallica

Na saida do seu servidor deve esta mostrando o erro.
Posta o erro para a turma.

camila.java

Essa é a saida do servidor

10/08/2011 17:19:12 org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files (x86)\Java\jre6\bin;.;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:/Program Files (x86)/Java/jre6/bin/client;C:/Program Files (x86)/Java/jre6/bin;C:/Program Files (x86)/Java/jre6/lib/i386;C:\oraclexe\app\oracle\product\10.2.0\server\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Grails\grails-1.4.0.M1\bin;C:\Program Files (x86)\Java\jdk1.6.0_23\bin
10/08/2011 17:19:12 org.apache.tomcat.util.digester.SetPropertiesRule begin
AVISO: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:GestaoProjeto' did not find a matching property.
10/08/2011 17:19:13 org.apache.coyote.http11.Http11Protocol init
INFO: Initializing Coyote HTTP/1.1 on http-8086
10/08/2011 17:19:13 org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 919 ms
10/08/2011 17:19:13 org.apache.catalina.core.StandardService start
INFO: Starting service Catalina
10/08/2011 17:19:13 org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0.29
10/08/2011 17:19:16 org.apache.catalina.core.StandardContext addApplicationListener
INFO: The listener "com.sun.faces.config.ConfigureListener" is already configured for this context. The duplicate definition has been ignored.
10/08/2011 17:19:16 com.sun.faces.config.ConfigureListener contextInitialized
INFO: Initializing Mojarra (1.2_12-b01-FCS) for context '/GestaoProjeto'
log4j:WARN No appenders could be found for logger (org.ajax4jsf.renderkit.ChameleonRenderKitFactory).
log4j:WARN Please initialize the log4j system properly.
10/08/2011 17:19:20 org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-8086
10/08/2011 17:19:20 org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:8019
10/08/2011 17:19:20 org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/37  config=null
10/08/2011 17:19:20 org.apache.catalina.startup.Catalina start
INFO: Server startup in 7372 ms
fabriciobraga

Oi Camila,

Você conseguiu resolver isso? Estou com o mesmo problema…

[]s
Fabricio Braga

vcsmetallica

postem o web.xml e o facesconfig.xml

Att

fabriciobraga

Valeu pela resposta. Aí vão os arquivos… mas na realidade o problema não deve ser com eles. A aplicação roda ok na minha máquina local (Tomcat 6, Java 6, Windows 7), mas o problema acontece quando subo pro servidor (o mesmo Tomcat 6, Java 6, Linux).

Cheguei a imaginar que fosse problema de permissão nas pastas, e fiz várias modificações e testes, mas não adiantou. Também editei os mapeamentos do Apache, incluindo os “*.xcss” para no mapeamento do Tomcat, além das URLs do Seam, claro. Isso também não mudou nada.

Seguem os arquivos…

[]s
Fabricio Braga

web.xml

<?xml version="1.0" ?>
<web-app 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"
	version="2.5">

	<!-- RichFaces -->

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

	<!-- Suppress spurious stylesheets -->

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

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

	<!-- Change load strategy to DEFAULT to disable sending scripts/styles as 
		packs -->

	<context-param>
		<param-name>org.richfaces.LoadStyleStrategy</param-name>
		<param-value>ALL</param-value>
	</context-param>

	<context-param>
		<param-name>org.richfaces.LoadScriptStrategy</param-name>
		<param-value>ALL</param-value>
	</context-param>

	<!-- Seam -->

	<listener>
		<listener-class>org.jboss.seam.servlet.SeamListener</listener-class>
	</listener>

	<filter>
		<filter-name>Seam Filter</filter-name>
		<filter-class>org.jboss.seam.servlet.SeamFilter</filter-class>
		<init-param>
			<param-name>createTempFiles</param-name>
			<param-value>false</param-value>
		</init-param>
	</filter>

	<filter-mapping>
		<filter-name>Seam Filter</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>

	<servlet>
		<servlet-name>Seam Resource Servlet</servlet-name>
		<servlet-class>org.jboss.seam.servlet.SeamResourceServlet</servlet-class>
	</servlet>

	<servlet-mapping>
		<servlet-name>Seam Resource Servlet</servlet-name>
		<url-pattern>/seam/resource/*</url-pattern>
	</servlet-mapping>

	<!-- Facelets development mode (disable in production) -->

	<context-param>
		<param-name>facelets.DEVELOPMENT</param-name>
		<param-value>false</param-value>
	</context-param>

	<!-- JSF -->

	<context-param>
		<param-name>javax.faces.DEFAULT_SUFFIX</param-name>
		<param-value>.xhtml</param-value>
	</context-param>

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

	<servlet-mapping>
		<servlet-name>Faces Servlet</servlet-name>
		<url-pattern>*.seam</url-pattern>
	</servlet-mapping>

	<security-constraint>
		<display-name>Restrict raw XHTML Documents</display-name>
		<web-resource-collection>
			<web-resource-name>XHTML</web-resource-name>
			<url-pattern>*.xhtml</url-pattern>
		</web-resource-collection>
		<auth-constraint />
	</security-constraint>

	<persistence-unit-ref>
		<persistence-unit-ref-name>xxxxxx/pu</persistence-unit-ref-name>
		<persistence-unit-name>xxxxxxx</persistence-unit-name>
	</persistence-unit-ref>
	
	<!-- Tempo de duracao da sessao, em minutos: -->
	<session-config>
		<session-timeout>40</session-timeout>
	</session-config>

</web-app>

faces-config.xml

<?xml version='1.0' encoding='UTF-8'?>
<faces-config version="1.2" 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-facesconfig_1_2.xsd">

	<application>
		<locale-config>
			
			<default-locale>pt</default-locale>
			
		</locale-config>
		<view-handler>com.sun.facelets.FaceletViewHandler</view-handler>
	</application>

</faces-config>
vcsmetallica

Entao isso pode ser instalação do seu tomcat no linux.

Se vc estiver usando ubuntu da uma olhada nesse link

http://www.howtogeek.com/howto/linux/installing-tomcat-6-on-ubuntu/

Att

WRYEL

Eu tive um problema parecido com esse a uns 2 anos atras, lembro que foi por distração de colocar tags em lugares errados. Como faz pelo menos 1 ano que não mecho com jsf 1, não lembro ao certo como fiz pra resolver, mas lembro que não era problema de instação do tomcar no MEU caso :slight_smile:

camila.java poste o fonte do seu template="/WEB-INF/template/template.xhtml" e o codigo fonte html gerado pelo browser do “Minha pagina”.

edit*

fabriciobraga veja o fonte gerado pelo browser, tente pegar o caminho dos .css que ele gera, e tente chamar diretamente pelo browser e veja se da algum erro

H

Altere essa linha do web.xml:

index.jsp

por

index.jsf

Isso é necessário pois foi o padrão de url definido por você no faces-config.

fabriciobraga

Pessoal,

Resolvi o problema. O que acontece é que lá no servidor o ambiente tem um Apache na frente do Tomcat, e o RichFaces adiciona arquivos JS contidos dentro do JAR dele. Como o meu servidor é dedicado e funciona como um host de hospedagens, eu preciso editar no Apache os mapeamentos que devem ser direcionados para o Tomcat.

Então editei os mapeamentos do Apache para apontar também estes JS do Richfaces, por exemplo:

“//a4j/g/3_3_3.Final/org/ajax4jsf/framework.pack.js” mapeei lá: “//a4j/*” para o Tomcat. E assim com os outros.

Feito isso, o problema acabou.

Obrigado a todos os que ajudaram!

[]s
Fabricio Braga
www.fabriciobraga.com.br

Criado 10 de agosto de 2011
Ultima resposta 8 de set. de 2011
Respostas 9
Participantes 5