Erro ao acessar aplicação: JSF 1.2 + Apache Tomcat 6 + RichFaces

2 respostas
D

Olá amigos...

estou batendo cabeça já há algumas horas...

Construi minha aplicação com base em:

Apache 6
Java 1.5
Rich Faces 3.3
JSF 1.2

Após implementar a aplicação ao tentar iniciá-la, me deparo com a exceção:

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

javax.servlet.ServletException: Illegal attempt to set ViewHandler after a response has been rendered.
	javax.faces.webapp.FacesServlet.service(FacesServlet.java:325)
	org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:206)
	org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
	org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:388)
	org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:515)

root cause

java.lang.IllegalStateException: Illegal attempt to set ViewHandler after a response has been rendered.
	com.sun.faces.application.ApplicationImpl.setViewHandler(ApplicationImpl.java:563)
	org.ajax4jsf.event.InitPhaseListener.beforePhase(InitPhaseListener.java:92)
	com.sun.faces.lifecycle.Phase.handleBeforePhase(Phase.java:228)
	com.sun.faces.lifecycle.Phase.doPhase(Phase.java:99)
	com.sun.faces.lifecycle.RestoreViewPhase.doPhase(RestoreViewPhase.java:111)
	com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
	javax.faces.webapp.FacesServlet.service(FacesServlet.java:312)
	org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:206)
	org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
	org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:388)
	org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:515)

note The full stack trace of the root cause is available in the Apache Tomcat/6.0.30 logs.

Meu web.xml

<?xml version="1.0" encoding="UTF-8"?>
<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">
    <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>

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

    <session-config>
        <session-timeout>
            30
        </session-timeout>
    </session-config>
    <welcome-file-list>
        <welcome-file>faces/welcomeJSF.jsp</welcome-file>
    </welcome-file-list>

    <!-- Skin selecionado para a aplicacao -->
    <context-param>
        <param-name>org.ajax4jsf.SKIN</param-name>
        <param-value>DEFAULT</param-value>
    </context-param>

    <!-- Filtro para o uso de Ajax -->
    <filter>
        <display-name>Ajax4jsf Filter</display-name>
        <filter-name>ajax4jsf</filter-name>
        <filter-class>org.ajax4jsf.Filter</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>ajax4jsf</filter-name>
        <servlet-name>Faces Servlet</servlet-name>
        <dispatcher>REQUEST</dispatcher>
        <dispatcher>FORWARD</dispatcher>
        <dispatcher>INCLUDE</dispatcher>
    </filter-mapping>

</web-app>
Meu faces-config.xml
<?xml version='1.0' encoding='UTF-8'?>

<!DOCTYPE faces-config PUBLIC
"-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
"http://java.sun.com/dtd/web-facesconfig_1_1.dtd">

<faces-config>

	<managed-bean>
		<description>UsernName Bean</description>
		<managed-bean-name>user</managed-bean-name>
		<managed-bean-class>demo.user</managed-bean-class>
		<managed-bean-scope>request</managed-bean-scope>
		<managed-property>
			<property-name>name</property-name>
			<property-class>java.lang.String</property-class>
			<value />
		</managed-property>
	</managed-bean>

</faces-config>

Ao tentar acessar a aplicação através da URL: http://localhost:8080/aps-web/index.jsf, o erro em questão é disparado.

Caso alguém tenha conhecimento do que possa ser, ou já tenha sofrido com este problema, por favor me ajude =D

Com certeza, deve ser algo bem simples e estou aqui me debatendo para descobrir!

Abs.
Daniel

2 Respostas

D

Complementando…

Em anexo as bibliotecas do projeto =D


D

Caros,

complementando ainda mais…

removi os 3 jars do richfaces, fiz a devidas adequações no web.xml e a aplicação funcionou perfeitamente…

Por favor me ajudem =D

Abs.
Daniel

Criado 31 de janeiro de 2011
Ultima resposta 31 de jan. de 2011
Respostas 2
Participantes 1