Boa noite amigos.
Mais uma vez recorro à vossa inestimável ajuda…
Fiz um pequeno sistema Web utilizando JSF + Hibernate + Spring Security + GlassFish 3. Tudo está funcionando a contento. Faço o login, o Spring gerencia os acessos, tudo maravilha.
Coloco abaixo o applicationContext-security.xml:
<?xml version="1.0" encoding="UTF-8"?>
<beans:beans xmlns="http://www.springframework.org/schema/security"
xmlns:beans="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/security
http://www.springframework.org/schema/security/spring-security-3.1.xsd">
<http auto-config='true'>
<intercept-url pattern="/admin/**" access="ROLE_ADMINISTRADOR" />
<!--intercept-url pattern="/restrito/**" access="ROLE_USUARIO" /-->
<form-login login-page="/publico/login.jsf"
always-use-default-target="true"
default-target-url="/admin/lista_classes_por_professor.jsf"
authentication-failure-url="/publico/login.jsf?login_error=1" />
<logout/>
<remember-me />
</http>
<authentication-manager>
<authentication-provider>
<!--user-service>
<user name="jimi" password="jimispassword" authorities="ROLE_USER, ROLE_ADMINISTRADOR" />
<user name="bob" password="bobspassword" authorities="ROLE_USER" />
</user-service-->
<jdbc-user-service
data-source-ref="dataSource"
authorities-by-username-query="SELECT u.login, p.permissao
FROM usuario as u, usuario_permissao as p
where u.acesso = p.id
AND u.login = ?"
users-by-username-query="SELECT login, senha, ativo
FROM usuario
WHERE login = ?" />
</authentication-provider>
</authentication-manager>
</beans:beans>
E agora o applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd">
<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"
p:location="/WEB-INF/jdbc.properties" />
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource"
p:driverClassName="${jdbc.driverClassName}"
p:url="${jdbc.url}"
p:username="${jdbc.username}"
p:password="${jdbc.password}" />
</beans>
Tudo está funcionando blz!!!
Porém…rs
Alguns dos dados deste sistema precisarão ser acessados via mobile, então eu comecei a criar um WebService no projeto (estou usando JAX-WS). Aí que cagou tudo…rsrsrs…pq eu não sei como faço para fazer o login no sistema pelo WebService…e se eu não logar não consigo acessar a camada de negócios para bater as queries no banco, pois tenho lá um Filter barrando tudo, só quem tem o ROLE_ADMIN consegue chegar lá…
Estou pesquisando há alguns dias antes de postar… Não encontrei um único tópico/ exemplo de uma aplicação onde poderia logar tanto via página web e webservice, também fui atrás de alguns livros e nada…peguei a documentação do Spring que é muito boa mas também não ajudou…
Algum dos distintos colegas do fórum poderiam, piedosamente me ajudar?
Desde já agradeço muitíssimo a atenção!
