Erro Inexplicável no jsf

3 respostas
diegowebby

Tenho estes dois beans.
No bena matriculaN declaro uma referência para o bean aluno.

<managed-bean>
		<managed-bean-name>aluno</managed-bean-name>
		<managed-bean-class>br.ufpb.nti.bean.Aluno</managed-bean-class>
		<managed-bean-scope>session</managed-bean-scope>
</managed-bean>

<managed-bean>
	    <managed-bean-name>matriculaN</managed-bean-name>
		<managed-bean-class>br.ufpb.nti.bean.MatriculaNormalBean</managed-bean-class>
		<managed-bean-scope>session</managed-bean-scope>
		<managed-property>
			<property-name>aluno</property-name>
			<value>#{aluno}</value>
		</managed-property>
		<managed-property>
			<property-name>aplicacao</property-name>
			<value>#{app}</value>
		</managed-property>
</managed-bean>

Está dando este erro estranho dizendo que aluno é do tipo request…,só que o mesmo é do tipo session

javax.servlet.ServletException: Unable to create managed bean matriculaN.  The following problems were found:

- The scope of the object referenced by expression #{aluno}, request, is shorter than the referring managed beans (matriculaN) scope of session

javax.faces.webapp.FacesServlet.service(FacesServlet.java:277)

org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:177)

org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:267)

org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:380)

org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:507)

Alguém já teve este problema ou sabe como resolver?

3 Respostas

Rafael_Carneiro

Salve o seu arquivo faces-context.xml e reinicie o contexto da aplicação.

diegowebby

faces-context.xml?, não seria faces-config?
Mas eu salvei, limpei o work, dei um clean e nada.

Rafael_Carneiro

diegowebby:
faces-context.xml?, não seria faces-config?
Mas eu salvei, limpei o work, dei um clean e nada.

Desculpe-me, o correto é faces-config.xml.

O erro está bem claro:

  • The scope of the object referenced by expression #{aluno}, request, is shorter than the referring managed beans (matriculaN) scope of session

Porém os seus dois Managed Beans estão configurados com escopo session, então era para funcionar. Por isso que pedi para reiniciar o contexto da sua aplicação.

Criado 22 de janeiro de 2009
Ultima resposta 22 de jan. de 2009
Respostas 3
Participantes 2