Como configurar web.xml | sun-web.xml para utilizar JDBCRealm?

4 respostas
getAdicted

Boa tarde a todos,

Eu não estou conseguindo configurar o JDBCRealm no Glassfish, se bem que eu acho que o problema está nos arquivos de configuração da app.

web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
	id="WebApp_ID" version="3.0">
	<display-name>bugWeb</display-name>
	<welcome-file-list>
		<welcome-file>index.html</welcome-file>
		<welcome-file>index.htm</welcome-file>
		<welcome-file>index.jsp</welcome-file>
		<welcome-file>default.html</welcome-file>
		<welcome-file>default.htm</welcome-file>
		<welcome-file>default.jsp</welcome-file>
	</welcome-file-list>
	<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>*.xhtml</url-pattern>
	</servlet-mapping>

	<!-- Controle de usuário configurado o Container -->
	<!-- <login-config> <realm-name>K19-Realm</realm-name> </login-config> -->

	<!-- Caso ocorra uma exception -->
	<error-page>
		<exception-type>java.lang.Exception</exception-type>
		<location>/error.xhtml</location>
	</error-page>
</web-app>

sun-web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sun-web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Application Server 9.0 Servlet 2.5//EN" "http://www.sun.com/software/appserver/dtds/sun-web-app_2_5-0.dtd">
<sun-web-app error-url="">
	<context-root>/bugWeb</context-root>

<!--	

<security-role-mapping>
		<role-name>ADMIN</role-name>
		<group-name>admin</group-name>
	</security-role-mapping>

	<security-role-mapping>
		<role-name>USERS</role-name>
		<group-name>users</group-name>
	</security-role-mapping> -->

	<security-role-mapping>
		<role-name>user-role</role-name>
		<principal-name>user</principal-name>
		<group-name>users</group-name>
	</security-role-mapping>

	<security-role-mapping>
		<role-name>admin-role</role-name>
		<group-name>admins</group-name>
	</security-role-mapping>

	<security-role-mapping>
		<role-name>guest-role</role-name>
		<group-name>guests</group-name>
	</security-role-mapping>

	<class-loader delegate="true" />
	<jsp-config>
		<property name="keepgenerated" value="true">
			<description>Keep a copy of the generated servlet class java code.</description>
		</property>
	</jsp-config>
</sun-web-app>

Obs.: Eu estou utilizando EJB(@RolesAllowed)

Eu já depurei, porém, não consegui encontrar o erro, simplementes é exibido que o usuário x,y,z não tem permissão.

Eu agradeço desde já!

[]'s

4 Respostas

S

Boa tarde,

Eu nao manjo muito nessa area, mas consegui uma vez fazer um sistema de login usando uns tutorial.
Vou dizer aqui o que acho de errado, mas posso estar dizendo bobeira.

O seu web.xml acho que falta o , e o .

vou postar o que essa parte do web.xml aqui do meu:

<security-constraint> <display-name>Area Administrativa</display-name> <web-resource-collection> <web-resource-name>Admin Area</web-resource-name> <description/> <url-pattern>/faces/protected/*</url-pattern> </web-resource-collection> <auth-constraint> <description/> <role-name>admin-role</role-name> </auth-constraint> </security-constraint> <login-config> <auth-method>FORM</auth-method> <realm-name>teste-login</realm-name> <form-login-config> <form-login-page>/faces/public/login.xhtml</form-login-page> <form-error-page>/faces/public/error.xhtml</form-error-page> </form-login-config> </login-config> <security-role> <description/> <role-name>admin-role</role-name> </security-role> <security-role> <description/> <role-name>guest-role</role-name> </security-role>

E teria que ver tbm a sua configuraçao no glassfish.

eduveks

a dias atrás tive q reconfigurar meu ambiente de desenvolvimento em um cliente, e não consegui configurar no glassfish que vem com o netbeans 7. simplismente n dava acesso, com a configuração igual a de produção, só que o glassfish de produção é umas versões mais antigas do que o que vem com o netbeans 7.

no netbeans acho q aparecia uma exception no output. e depois de procurar aquela exception + glassfish + versão no google, depois de muito procurar encontrei um link no forum do glassfish onde diziam que era um bug da versão mais recente.

bem basicamente eu n tenho como ter mais detalhes disto, pois é em um cliente que vou lá em pacote de horas e o ambiente de desenvolvimento fica lá, e n sei quando vou voltar lá. mas deparei com isto na minha última intervenção.

n posso ajudar mais, pois é só o q lembro assim por cima. mas acredito q seja a mesma situação que tive. é se assim é, então é mesmo um bug do glassfish e vc n pode fazer nada. ou usa uma versão mais antiga, ou espera uma atualização.

de qualquer forma todos os detalhes da configuração que fiz para isto funcionar eu n lembro e teria que rever tudo, mas fiz as configurações com base em alguns artigos que encontrei na net, e consegui colocar para funcionar até que com alguma facilidade. por isso se vc esta seguindo corretamente as dicas de algum artigo então tenta com outra versão para ver se funciona :wink:

quando eu descobri q era um bug fiquei maluco! pois gastei uma tarde inteira dando murro em ponta de faca.

getAdicted

Muito obrigado, amigos!

Sinto, mas não os responderei com um raciocínio lógico no momento por motivos alcoólicos, mas amanhã, pela manhã, eu prometo, eu os direi!

Fiquem com deus!
[]'s

getAdicted

Muito obrigado silviasaint, eduveks!

silviasaint, eu vou fazer os testes adicionando esses trechos apontados por você.

eduveks, eu não estou precisando disso com urgência. Na realidade, eu estou tentando modularizar alguns requisitos do meu TCC, eu ainda tenho 7 meses para entregá-lo. Qualquer novidade, por gentileza, poste aqui, se não for incomodá-lo! Obrigado mais uma vez a vocês.

[]'s

Criado 2 de outubro de 2011
Ultima resposta 3 de out. de 2011
Respostas 4
Participantes 3