Como no site do livro programação java para web, o auto não sabe ou não se interessa à ajudar recorro onde eu já deveria ter vindo ao GUJ.
minha classe xhtml é essa login:
<?xml version=“1.0” encoding=“ISO-8859-1”?>
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f=“http://java.sun.com/jsf/core”>
<h:head>
<title>Login</title>
</h:head>
<h:body>
<h:form>
<h:commandButton action="#{usuarioBean.novo}" value=“Registre-se”/>
</h:form>
<h:panelGroup rendered="#{!empty param.login_error}">
<span style="font-color:red"> Erro ao efetuar o login.</span><br />
<br/>
Motivo: #{SPRING_SECURITY_LAST_EXCEPTION.message}
</h:panelGroup>
<form id="login" method="post" action="#{request.contextPath}/j_spring_security_check">
<table>
<tr><td>Login</td>
<td><input type='text' name='j_username'/></td></tr>
<tr><td>Senha</td>
<td><input type='password' name='j_password'/></td></tr>
<tr><td align="right"><input type="checkbox" name="_spring_security_remember_me"/></td>
<td>Entrar automaticamente</td></tr>
<tr><td></td>
<td><input type="submit" value="Entrar"/></td>
</tr>
</table>
<script>
document.getElementById("login").j_username.value = "#{SPRING_SECURITY_LAST_USERNAME}";
</script>
</form>
</h:body>
</html>
que deve chamar essa principal:
<?xml version=“1.0” encoding=“ISO-8859-1”?>
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:sec=“http://www.springframework.org/security/facelets/tags”>
<h:head>
<title>Principal</title>
</h:head>
<h:body>
<h1>Gerenciador Financeiro Pessoal</h1>
Usuário logado#{request.remoteUser}
<br/>
<h:form>
<sec:ifAnyGranted roles="ROLE_ADMINISTRADOR">
<h:commandLink action="/admin/principal" title="administrativo">
<h:graphicImage library="imagens" name="administrativo16.png"/>
</h:commandLink>
</sec:ifAnyGranted>
<a >
<h:graphicImage library="imagens" name="logout16.png"/>
</a>
</h:form>
</h:body>
</html>
então quando rodo o tomcat a saída é esta :
Dez 21, 2012 11:06:13 PM 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\jre7\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:/Program Files (x86)/Java/jre7/bin/client;C:/Program Files (x86)/Java/jre7/bin;C:/Program Files (x86)/Java/jre7/lib/i386;C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\Program Files (x86)\Common Files\Microsoft Shared\Windows Live;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Program Files (x86)\Sony\VAIO Startup Setting Tool;C:\Program Files (x86)\Windows Live\Shared;C:\Program Files (x86)\Java\jdk1.6.0_22\bin;C:\Program Files\Internet Explorer;C:\Program Files (x86)\Java\ide\eclipse;;.
Dez 21, 2012 11:06:13 PM org.apache.tomcat.util.digester.SetPropertiesRule begin
WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property ‘source’ to ‘org.eclipse.jst.jee.server:FinanceiroWeb’ did not find a matching property.
Dez 21, 2012 11:06:14 PM org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler [“http-bio-8080”]
Dez 21, 2012 11:06:14 PM org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler [“ajp-bio-8009”]
Dez 21, 2012 11:06:14 PM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 1268 ms
Dez 21, 2012 11:06:14 PM org.apache.catalina.core.StandardService startInternal
INFO: Starting service Catalina
Dez 21, 2012 11:06:14 PM org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.32
Dez 21, 2012 11:06:14 PM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(C:\Users\Cox\Documents\web_java.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\FinanceiroWeb\WEB-INF\lib\el-api-2.2.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/el/Expression.class
Dez 21, 2012 11:06:14 PM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(C:\Users\Cox\Documents\web_java.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\FinanceiroWeb\WEB-INF\lib\servlet-api.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
Dez 21, 2012 11:06:17 PM org.apache.catalina.core.ApplicationContext log
INFO: Initializing Spring root WebApplicationContext
log4j:WARN No appenders could be found for logger (org.springframework.web.context.ContextLoader).
log4j:WARN Please initialize the log4j system properly.
Dez 21, 2012 11:06:19 PM com.sun.faces.config.ConfigureListener contextInitialized
INFO: Inicializando Mojarra 2.0.3 (FCS b03) para o contexto '/FinanceiroWeb’
Dez 21, 2012 11:06:19 PM com.sun.faces.spi.InjectionProviderFactory createInstance
INFO: JSF1048: Anotações PostConstruct/PreDestroy presentes. Os métodos ManagedBeans marcados com essas anotações informarão as anotações processadas.
Dez 21, 2012 11:06:20 PM com.sun.faces.config.ConfigureListener$WebConfigResourceMonitor$Monitor <init>
INFO: Monitoring jndi:/localhost/FinanceiroWeb/WEB-INF/faces-config.xml for modifications
Dez 21, 2012 11:06:22 PM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler [“http-bio-8080”]
Dez 21, 2012 11:06:22 PM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler [“ajp-bio-8009”]
Dez 21, 2012 11:06:22 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 7875 ms
ao colocar o login e password; na console do eclipse retorna esta saída :
Dez 21, 2012 11:01:25 PM com.sun.faces.lifecycle.ELResolverInitPhaseListener populateFacesELResolverForJsp
INFO: JSF1027: [/FinanceiroWeb] Os ELResolvers para JSF não foram registrados com o contêiner JSP.
e no browser retorna a página login
solicitando o login e password novamente
os jars da pasta spring são esse :
el-api-2.2.jar
el-impl-2.2.jar
commons-logging-1.1.1.jar
aopalliance-1.0.jar
aspecjrt.1.6.5.jar
aspecjweaver-1.6.5.jar
ehcache-1.6.2.jar
hessian.3.0.1.jar
hsqldb-1.8.0.10.jar
log4j-1.2.14.jar
spring-aop.3.0.0.RELEASE.jar
spring-asm.3.0.0.RELEASE.jar
spring-beans.3.0.0.RELEASE.jar
spring-context-3.0.0.RELEASE.jar
spring-core-3.0.0.RELEASE.jar
spring-expression-3.0.0.RELEASE.jar
spring-jdbc-3.0.0.RELEASE.jar
spring-security-acl-3.0.0.RELEASE.jar
spring-security-config-3.0.0.RELEASE.jar
spring-security-core-3.0.0.RELEASE.jar
spring-security-taglibs-3.0.0.RELEASE.jar
spring-security-web-3.0.0.RELEASE.jar
spring-tx-3.0.0.RELEASE.jar
spring-web-3.0.0.RELEASE.jar
spring-webmvc-3.0.0.RELEASE.jar
commons-codec-1.3.jar
facelets-taglib-jsf20-spring-3-0.5.jar
taglib-core-0.4.jar
relacionei somente esses jar porque até antes de configurar o spring e alterar a classe login.xhtml estava perfeitamente bem, agora preciso da ajuda de todos .
obrigado e boas festas à todos!