Erro na inicialização do TomCat

17 respostas
A

Pessoal, ao criar uma página de login customizada para o Spring Security me deparei com o seguinte erro de inicialização no TomCat…

jun 26, 2018 4:31:15 PM org.apache.tomcat.util.digester.SetPropertiesRule begin

ADVERTÊNCIA: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property source to org.eclipse.jst.jee.server:WhiteWeb did not find a matching property.

jun 26, 2018 4:31:15 PM org.apache.catalina.startup.VersionLoggerListener log

INFORMAÇÕES: Server version:        Apache Tomcat/9.0.0.M26

jun 26, 2018 4:31:15 PM org.apache.catalina.startup.VersionLoggerListener log

INFORMAÇÕES: Server built:          Aug 2 2017 20:29:05 UTC

jun 26, 2018 4:31:15 PM org.apache.catalina.startup.VersionLoggerListener log

INFORMAÇÕES: Server number:         9.0.0.0

jun 26, 2018 4:31:15 PM org.apache.catalina.startup.VersionLoggerListener log

INFORMAÇÕES: OS Name:               Windows 10

jun 26, 2018 4:31:15 PM org.apache.catalina.startup.VersionLoggerListener log

INFORMAÇÕES: OS Version:            10.0

jun 26, 2018 4:31:15 PM org.apache.catalina.startup.VersionLoggerListener log

INFORMAÇÕES: Architecture:          amd64

jun 26, 2018 4:31:15 PM org.apache.catalina.startup.VersionLoggerListener log

INFORMAÇÕES: Java Home:             C:\Program Files\Java\jre1.8.0_60

jun 26, 2018 4:31:15 PM org.apache.catalina.startup.VersionLoggerListener log

INFORMAÇÕES: JVM Version:           1.8.0_60-b27

jun 26, 2018 4:31:15 PM org.apache.catalina.startup.VersionLoggerListener log

INFORMAÇÕES: JVM Vendor:            Oracle Corporation

jun 26, 2018 4:31:15 PM org.apache.catalina.startup.VersionLoggerListener log

INFORMAÇÕES: CATALINA_BASE:         C:\Users\wsro.066\eclipse-workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0

jun 26, 2018 4:31:15 PM org.apache.catalina.startup.VersionLoggerListener log

INFORMAÇÕES: CATALINA_HOME:         C:\Desenvolvimento\Apache Tomcat\apache-tomcat-9.0.0.M26

jun 26, 2018 4:31:15 PM org.apache.catalina.startup.VersionLoggerListener log

INFORMAÇÕES: Command line argument: -Dcatalina.base=C:\Users\wsro.066\eclipse-workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0

jun 26, 2018 4:31:15 PM org.apache.catalina.startup.VersionLoggerListener log

INFORMAÇÕES: Command line argument: -Dcatalina.home=C:\Desenvolvimento\Apache Tomcat\apache-tomcat-9.0.0.M26

jun 26, 2018 4:31:15 PM org.apache.catalina.startup.VersionLoggerListener log

INFORMAÇÕES: Command line argument: -Dwtp.deploy=C:\Users\wsro.066\eclipse-workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps

jun 26, 2018 4:31:15 PM org.apache.catalina.startup.VersionLoggerListener log

INFORMAÇÕES: Command line argument: -Djava.endorsed.dirs=C:\Desenvolvimento\Apache Tomcat\apache-tomcat-9.0.0.M26\endorsed

jun 26, 2018 4:31:15 PM org.apache.catalina.startup.VersionLoggerListener log

INFORMAÇÕES: Command line argument: -Dfile.encoding=Cp1252

jun 26, 2018 4:31:15 PM org.apache.catalina.core.AprLifecycleListener lifecycleEvent

INFORMAÇÕES: 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\Java\jre1.8.0_60\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:/Program Files/Java/jre1.8.0_60/bin/server;C:/Program Files/Java/jre1.8.0_60/bin;C:/Program Files/Java/jre1.8.0_60/lib/amd64;C:\ProgramData\Oracle\Java\javapath;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\Program Files (x86)\Skype\Phone;C:\WINDOWS\System32\OpenSSH;C:\Users\wsro.066\AppData\Local\Microsoft\WindowsApps;;C:\Desenvolvimento\IDE Eclipse\eclipse;;.]

jun 26, 2018 4:31:16 PM org.apache.coyote.AbstractProtocol init

INFORMAÇÕES: Initializing ProtocolHandler [“http-nio-8080”]

jun 26, 2018 4:31:16 PM org.apache.tomcat.util.net.NioSelectorPool getSharedSelector

INFORMAÇÕES: Using a shared selector for servlet write/read

jun 26, 2018 4:31:16 PM org.apache.coyote.AbstractProtocol init

INFORMAÇÕES: Initializing ProtocolHandler [“ajp-nio-8009”]

jun 26, 2018 4:31:16 PM org.apache.tomcat.util.net.NioSelectorPool getSharedSelector

INFORMAÇÕES: Using a shared selector for servlet write/read

jun 26, 2018 4:31:16 PM org.apache.catalina.startup.Catalina load

INFORMAÇÕES: Initialization processed in 2035 ms

jun 26, 2018 4:31:16 PM org.apache.catalina.core.StandardService startInternal

INFORMAÇÕES: Starting service [Catalina]

jun 26, 2018 4:31:16 PM org.apache.catalina.core.StandardEngine startInternal

INFORMAÇÕES: Starting Servlet Engine: Apache Tomcat/9.0.0.M26

jun 26, 2018 4:31:21 PM org.apache.jasper.servlet.TldScanner scanJars

INFORMAÇÕES: At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.

jun 26, 2018 4:31:32 PM org.apache.jasper.servlet.TldScanner scanJars

INFORMAÇÕES: At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.

jun 26, 2018 4:31:32 PM org.apache.catalina.core.ApplicationContext log

INFORMAÇÕES: No Spring WebApplicationInitializer types detected on classpath

2018-06-26 16:31:32,928 INFO  [org.jboss.weld.environment.servletWeldServlet] WELD-ENV-001008: Initialize Weld using ServletContainerInitializer

2018-06-26 16:31:32,966 INFO  [org.jboss.weld.Version] WELD-000900: 2.4.7 (Final)

2018-06-26 16:31:33,270 INFO  [org.jboss.weld.Bootstrap] WELD-000101: Transactional services not available. Injection of @Inject UserTransaction not available. Transactional observers will be invoked synchronously.

2018-06-26 16:31:33,636 INFO  [org.jboss.weld.Bootstrap] WELD-000119: Not generating any bean definitions from modelo.ParceiroNegocio because of underlying class loading error: Type modelo.EnumTipoPessoa not found.  If this is unexpected, enable DEBUG logging to see the full error.

2018-06-26 16:31:33,697 INFO  [org.jboss.weld.Bootstrap] WELD-000119: Not generating any bean definitions from controller.ParceiroNegocioBean because of underlying class loading error: Type modelo.EnumTipoPessoa not found.  If this is unexpected, enable DEBUG logging to see the full error.

2018-06-26 16:31:33,756 INFO  [org.jboss.weld.environment.servletTomcat] WELD-ENV-001100: Tomcat 7+ detected, CDI injection will be available in Servlets, Filters and Listeners.

jun 26, 2018 4:31:34 PM org.apache.catalina.core.ContainerBase startInternal

GRAVE: A child container failed during start

java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/WhiteWeb]]

at java.util.concurrent.FutureTask.report(Unknown Source)

at java.util.concurrent.FutureTask.get(Unknown Source)

at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:947)

at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:839)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)

at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1425)

at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1415)

at java.util.concurrent.FutureTask.run(Unknown Source)

at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)

at java.util.concurrent.AbstractExecutorService.submit(Unknown Source)

at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:941)

at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:258)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)

at org.apache.catalina.core.StandardService.startInternal(StandardService.java:422)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)

at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:770)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)

at org.apache.catalina.startup.Catalina.start(Catalina.java:657)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:355)

at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:495)

Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/WhiteWeb]]

at org.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:441)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:198)

at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1425)

at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1415)

at java.util.concurrent.FutureTask.run(Unknown Source)

at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)

at java.util.concurrent.AbstractExecutorService.submit(Unknown Source)

at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:941)

 21 more

Caused by: org.jboss.weld.exceptions.DeploymentException: WELD-001409: Ambiguous dependencies for type HttpServletRequest with qualifiers <a class="mention" href="/u/default">@Default</a>

at injection point [BackedAnnotatedField] @Inject private controller.LoginBean.request

at controller.LoginBean.request(LoginBean.java:0)

Possible dependencies:
  • WELD%AbstractBuiltInBean%/WhiteWeb_/WEB-INF/classes%HttpServletRequest,
  • Producer Method [HttpServletRequest] with qualifiers [@Any @Default] declared as >[[BackedAnnotatedMethod] @Produces @RequestScoped public >util.jsf.FacesProducer.getHttpServletRequest()]
at org.jboss.weld.bootstrap.Validator.validateInjectionPointForDeploymentProblems(Validator.java:370)

at org.jboss.weld.bootstrap.Validator.validateInjectionPoint(Validator.java:284)

at org.jboss.weld.bootstrap.Validator.validateGeneralBean(Validator.java:137)

at org.jboss.weld.bootstrap.Validator.validateRIBean(Validator.java:158)

at org.jboss.weld.bootstrap.Validator.validateBean(Validator.java:501)

at org.jboss.weld.bootstrap.ConcurrentValidator$1.doWork(ConcurrentValidator.java:61)

at org.jboss.weld.bootstrap.ConcurrentValidator$1.doWork(ConcurrentValidator.java:59)

at org.jboss.weld.executor.IterativeWorkerTaskFactory$1.call(IterativeWorkerTaskFactory.java:62)

at org.jboss.weld.executor.IterativeWorkerTaskFactory$1.call(IterativeWorkerTaskFactory.java:55)

at java.util.concurrent.FutureTask.run(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)
jun 26, 2018 4:31:34 PM org.apache.catalina.core.ContainerBase startInternal

GRAVE: A child container failed during start

java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: A child container failed during start

at java.util.concurrent.FutureTask.report(Unknown Source)

at java.util.concurrent.FutureTask.get(Unknown Source)

at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:947)

at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:258)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)

at org.apache.catalina.core.StandardService.startInternal(StandardService.java:422)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)

at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:770)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)

at org.apache.catalina.startup.Catalina.start(Catalina.java:657)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:355)

at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:495)

Caused by: org.apache.catalina.LifecycleException: A child container failed during start

at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:956)

at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:839)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)

at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1425)

at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1415)

at java.util.concurrent.FutureTask.run(Unknown Source)

at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)

at java.util.concurrent.AbstractExecutorService.submit(Unknown Source)

at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:941)

 13 more
jun 26, 2018 4:31:34 PM org.apache.catalina.startup.Catalina start

GRAVE: The required Server component failed to start so Tomcat is unable to start.

org.apache.catalina.LifecycleException: A child container failed during start

at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:956)

at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:258)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)

at org.apache.catalina.core.StandardService.startInternal(StandardService.java:422)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)

at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:770)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)

at org.apache.catalina.startup.Catalina.start(Catalina.java:657)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:355)

at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:495)
jun 26, 2018 4:31:34 PM org.apache.coyote.AbstractProtocol pause

INFORMAÇÕES: Pausing ProtocolHandler [“http-nio-8080”]

jun 26, 2018 4:31:34 PM org.apache.coyote.AbstractProtocol pause

INFORMAÇÕES: Pausing ProtocolHandler [“ajp-nio-8009”]

jun 26, 2018 4:31:34 PM org.apache.catalina.core.StandardService stopInternal

INFORMAÇÕES: Stopping service [Catalina]

jun 26, 2018 4:31:34 PM org.apache.coyote.AbstractProtocol destroy

INFORMAÇÕES: Destroying ProtocolHandler [“http-nio-8080”]

jun 26, 2018 4:31:34 PM org.apache.coyote.AbstractProtocol destroy

INFORMAÇÕES: Destroying ProtocolHandler [“ajp-nio-8009”]

jun 26, 2018 4:31:34 PM org.apache.catalina.loader.WebappClassLoaderBase clearReferencesThreads

ADVERTÊNCIA: The web application [WhiteWeb] appears to have started a thread named [weld-worker-1] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:

sun.misc.Unsafe.park(Native Method)

java.util.concurrent.locks.LockSupport.park(Unknown Source)

java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)

java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)

java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)

java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

java.lang.Thread.run(Unknown Source)

jun 26, 2018 4:31:34 PM org.apache.catalina.loader.WebappClassLoaderBase clearReferencesThreads

ADVERTÊNCIA: The web application [WhiteWeb] appears to have started a thread named [weld-worker-2] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:

sun.misc.Unsafe.park(Native Method)

java.util.concurrent.locks.LockSupport.park(Unknown Source)

java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)

java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)

java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)

java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

java.lang.Thread.run(Unknown Source)

jun 26, 2018 4:31:34 PM org.apache.catalina.loader.WebappClassLoaderBase clearReferencesThreads

ADVERTÊNCIA: The web application [WhiteWeb] appears to have started a thread named [weld-worker-3] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:

sun.misc.Unsafe.park(Native Method)

java.util.concurrent.locks.LockSupport.park(Unknown Source)

java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)

java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)

java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)

java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

java.lang.Thread.run(Unknown Source)

jun 26, 2018 4:31:34 PM org.apache.catalina.loader.WebappClassLoaderBase clearReferencesThreads

ADVERTÊNCIA: The web application [WhiteWeb] appears to have started a thread named [weld-worker-4] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:

sun.misc.Unsafe.park(Native Method)

java.util.concurrent.locks.LockSupport.park(Unknown Source)

java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)

java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)

java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)

java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

java.lang.Thread.run(Unknown Source)

17 Respostas

Rodrigo_Void

Verifica suas dependencias na LoginBean

A

Rodrigo, Bom dia, não conseguir localizar o problema, segue o arquivo:

package controller;

import java.io.IOException;
import java.io.Serializable;

import javax.enterprise.context.SessionScoped;
import javax.faces.context.FacesContext;
import javax.inject.Inject;
import javax.inject.Named;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import util.jsf.FacesUtil;
@Named
@SessionScoped
public class LoginBean implements Serializable {

private static final long serialVersionUID = 1L;

@Inject
private FacesContext facesContext;

@Inject
private HttpServletRequest request;

@Inject
private HttpServletResponse response;


private String usuario;


public void preRender() {
	if ("true".equals(request.getParameter("invalid"))) {
		FacesUtil.addErrorMessage("Usuário ou senha inválido!");
	}
}

public void login() throws ServletException, IOException {
	RequestDispatcher dispatcher = request.getRequestDispatcher("/j_spring_security_check");
	dispatcher.forward(request, response);
	
	facesContext.responseComplete();
}

public String getUsuario() {
	return usuario;
}

public void setUsuario(String usuario) {
	this.usuario = usuario;
}

}

Tenho tambem a seguinte classe:

package util.jsf;

import javax.enterprise.context.RequestScoped;
import javax.enterprise.inject.Produces;
import javax.faces.context.ExternalContext;
import javax.faces.context.FacesContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class FacesProducer {

@Produces
@RequestScoped
public FacesContext getFacesContext() {
	return FacesContext.getCurrentInstance();
}

@Produces
@RequestScoped
public ExternalContext getExternalContext() {
	return getFacesContext().getExternalContext();
}

@Produces
@RequestScoped
public HttpServletRequest getHttpServletRequest() {
	return ((HttpServletRequest) getExternalContext().getRequest());	
}

@Produces
@RequestScoped
public HttpServletResponse getHttpServletResponse() {
	return ((HttpServletResponse) getExternalContext().getResponse());	
}

}
Rodrigo_Void

Testa sem essas dependencias

A

ao retirar a dependência, ele inicio o tomcat, mas apresentou outra mensagem de erro ao tentar executar loginBean.login()

jun 28, 2018 9:08:34 AM org.primefaces.component.messages.MessagesRenderer encodeEnd

INFORMAÇÕES: autoUpdate attribute is deprecated and will be removed in a future version, use p:autoUpdate component instead.

jun 28, 2018 9:08:46 AM com.sun.faces.lifecycle.InvokeApplicationPhase execute

ADVERTÊNCIA: #{loginBean.login}: java.lang.NullPointerException

javax.faces.FacesException: #{loginBean.login}: java.lang.NullPointerException

at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:117)

at javax.faces.component.UICommand.broadcast(UICommand.java:315)

at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:786)

at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1251)

at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)

at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)

at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)

at javax.faces.webapp.FacesServlet.service(FacesServlet.java:593)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:186)

at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)

at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)

at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)

at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:475)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)

at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:651)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)

at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:498)

at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)

at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:796)

at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1374)

at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)

at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)

at java.lang.Thread.run(Unknown Source)

Caused by: javax.faces.el.EvaluationException: java.lang.NullPointerException

at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:101)

at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:101)

 35 more

Caused by: java.lang.NullPointerException

at controller.LoginBean.login(LoginBean.java:38)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at org.apache.el.parser.AstValue.invoke(AstValue.java:247)

at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:267)

at org.jboss.weld.util.el.ForwardingMethodExpression.invoke(ForwardingMethodExpression.java:40)

at org.jboss.weld.el.WeldMethodExpression.invoke(WeldMethodExpression.java:50)

at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)

at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:87)

 36 more
2018-06-28 09:08:46,045 ERROR [util.jsf.JsfExceptionHandler] Erro de sistema: #{loginBean.login}: java.lang.NullPointerException

javax.faces.FacesException: #{loginBean.login}: java.lang.NullPointerException

at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:89)

at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)

at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)

at javax.faces.webapp.FacesServlet.service(FacesServlet.java:593)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:186)

at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)

at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)

at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)

at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:475)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)

at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:651)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)

at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:498)

at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)

at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:796)

at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1374)

at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)

at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)

at java.lang.Thread.run(Unknown Source)

Caused by: javax.faces.FacesException: #{loginBean.login}: java.lang.NullPointerException

at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:117)

at javax.faces.component.UICommand.broadcast(UICommand.java:315)

at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:786)

at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1251)

at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)

 31 more

Caused by: javax.faces.el.EvaluationException: java.lang.NullPointerException

at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:101)

at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:101)

 35 more

Caused by: java.lang.NullPointerException

at controller.LoginBean.login(LoginBean.java:38)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at org.apache.el.parser.AstValue.invoke(AstValue.java:247)

at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:267)

at org.jboss.weld.util.el.ForwardingMethodExpression.invoke(ForwardingMethodExpression.java:40)

at org.jboss.weld.el.WeldMethodExpression.invoke(WeldMethodExpression.java:50)

at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)

at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:87)

 36 more
Mike

Intanciou o FacesContext antes de facesContext.responseComplete(); ?

facesContext = FacesContext.getCurrentInstance();
facesContext.responseComplete();

Ou então só em uma linha, sem precisar criar um objeto

FacesContext.getCurrentInstance().responseComplete();
A

Mike, fiz a alteração, mas deu erro…

package controller;

import java.io.IOException;
import java.io.Serializable;

import javax.enterprise.context.SessionScoped;
import javax.faces.context.FacesContext;
import javax.inject.Named;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import util.jsf.FacesUtil;
@Named
@SessionScoped
public class LoginBean implements Serializable {

private static final long serialVersionUID = 1L;

private FacesContext facesContext;

private HttpServletRequest request;

private HttpServletResponse response;


private String usuario;


public void preRender() {
	if ("true".equals(request.getParameter("invalid"))) {
		FacesUtil.addErrorMessage("Usuário ou senha inválido!");
	}
}

public void login() throws ServletException, IOException {
	RequestDispatcher dispatcher = request.getRequestDispatcher("/j_spring_security_check");
	dispatcher.forward(request, response);
	
	//facesContext.responseComplete();
	FacesContext.getCurrentInstance().responseComplete();
}

public String getUsuario() {
	return usuario;
}

public void setUsuario(String usuario) {
	this.usuario = usuario;
}

}

Erro apresentado:

jun 28, 2018 9:22:20 AM com.sun.faces.lifecycle.InvokeApplicationPhase execute

ADVERTÊNCIA: #{loginBean.login}: java.lang.NullPointerException

javax.faces.FacesException: #{loginBean.login}: java.lang.NullPointerException

at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:117)

at javax.faces.component.UICommand.broadcast(UICommand.java:315)

at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:786)

at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1251)

at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)

at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)

at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)

at javax.faces.webapp.FacesServlet.service(FacesServlet.java:593)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:186)

at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)

at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)

at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)

at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:475)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)

at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:651)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)

at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:498)

at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)

at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:796)

at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1374)

at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)

at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)

at java.lang.Thread.run(Unknown Source)

Caused by: javax.faces.el.EvaluationException: java.lang.NullPointerException

at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:101)

at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:101)

 35 more

Caused by: java.lang.NullPointerException

at controller.LoginBean.login(LoginBean.java:38)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at org.apache.el.parser.AstValue.invoke(AstValue.java:247)

at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:267)

at org.jboss.weld.util.el.ForwardingMethodExpression.invoke(ForwardingMethodExpression.java:40)

at org.jboss.weld.el.WeldMethodExpression.invoke(WeldMethodExpression.java:50)

at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)

at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:87)

 36 more
2018-06-28 09:22:20,399 ERROR [util.jsf.JsfExceptionHandler] Erro de sistema: #{loginBean.login}: java.lang.NullPointerException

javax.faces.FacesException: #{loginBean.login}: java.lang.NullPointerException

at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:89)

at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)

at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)

at javax.faces.webapp.FacesServlet.service(FacesServlet.java:593)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:186)

at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)

at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)

at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)

at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:475)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)

at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:651)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)

at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:498)

at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)

at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:796)

at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1374)

at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)

at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)

at java.lang.Thread.run(Unknown Source)

Caused by: javax.faces.FacesException: #{loginBean.login}: java.lang.NullPointerException

at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:117)

at javax.faces.component.UICommand.broadcast(UICommand.java:315)

at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:786)

at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1251)

at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)

 31 more

Caused by: javax.faces.el.EvaluationException: java.lang.NullPointerException

at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:101)

at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:101)

 35 more

Caused by: java.lang.NullPointerException

at controller.LoginBean.login(LoginBean.java:38)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at org.apache.el.parser.AstValue.invoke(AstValue.java:247)

at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:267)

at org.jboss.weld.util.el.ForwardingMethodExpression.invoke(ForwardingMethodExpression.java:40)

at org.jboss.weld.el.WeldMethodExpression.invoke(WeldMethodExpression.java:50)

at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)

at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:87)

 36 more
Mike

Deixa o seu código assim: kkk

RequestDispatcher dispatcher = request.getRequestDispatcher("/j_spring_security_check");
	dispatcher.forward(request, response);

    System.out.println("Antes do FacesContext.getCurrentInstance()");
    facesContext = FacesContext.getCurrentInstance();
	System.out.println("Depois do FacesContext.getCurrentInstance()");
    facesContext.responseComplete();

Só para ver se é ele que ta nulo, pq é estranho…

Ai você posta o console novamente

A

Mike, enquanto você respondia, eu achei um loginBean diferente do meu, copiei e colei e deu certo… Só falta agora eu conseguir exibir a mensagem quando o usuario ou senha for errado…

.:: LoginBean ::.

package controller;

import java.io.IOException;
import java.io.Serializable;

import javax.enterprise.context.SessionScoped;
import javax.faces.context.ExternalContext;
import javax.faces.context.FacesContext;
import javax.inject.Named;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;

@Named
@SessionScoped
public class LoginBean implements Serializable {

private static final long serialVersionUID = 1L;

private String username;
private String password;

public String login() throws ServletException, IOException {
	ExternalContext context = FacesContext.getCurrentInstance().getExternalContext();
	HttpServletRequest request = ((HttpServletRequest) context.getRequest());
	ServletResponse resposnse = ((ServletResponse) context.getResponse());
	RequestDispatcher dispatcher = request.getRequestDispatcher("/j_spring_security_check");
	dispatcher.forward(request, resposnse);
	FacesContext.getCurrentInstance().responseComplete();
	return null;
}

public String getUsername() {
	return username;
}

public void setUsername(String username) {
	this.username = username;
}

public String getPassword() {
	return password;
}

public void setPassword(String password) {
	this.password = password;
}

}

.:: Página de login ::.
<h:form id=“frm” prependId=“false”>

<p:messages id="messages" autoUpdate="true" closable="true" />
                    <h:panelGrid columns="2" styleClass="grid-login">

		        <p:outputLabel value="E-mail" />
			<p:inputText size="30" id="j_username"  value="#{loginBean.username}"/>

			<p:outputLabel value="Senha" />
			<p:password size="30" id="j_password" value="#{loginBean.password}"/>

			<h:panelGroup />
			<p:commandButton value="Login" action="#{loginBean.login}" update="@form" ajax="false"/>
		</h:panelGrid>
	</h:form>
Mike

Você tinha dois loginBean?
Ou dois projetos?

Você esta usando o PrimeFaces 6.2 né?
No 6.2 o autoUpdate do p:message esta deprecated, agora tem a tag <p:autoUpdate> que substitui

<p:messages ... >
<p:autoUpdate></p:autoUpdate>
</p:messages>
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, "E-mail ou senha inválidos!", ""));
Mike

Se você estiver fazendo um redirecionamento, a mensagem não irá aparecer, ai você faz o seguinte:

FacesContext.getCurrentInstance().getExternalContext().getFlash().setKeepMessages(true);
A

Mike, sou iniciante, e estava a procura de alguma forma de fazer o login, mas não estava conseguindo devido erro que dava no Tomcat… pesquisando, achei essa segunda forma de fazer login, sem que desse o erro no Tomcat…

Eu tenho um loginBean… tenho somente um projeto…

Sim to usando o Primefaces 6.2… efetuei a correção conforme você colocou e deu certo…

só não consegui entender em qual lugar eu vou colocar esse FacesContext, sendo que o método login retorna null… como eu poderia elaborar para mostrar essa mensagem de erro…?

public String login() throws ServletException, IOException {
	ExternalContext context = FacesContext.getCurrentInstance().getExternalContext();
	HttpServletRequest request = ((HttpServletRequest) context.getRequest());
	ServletResponse resposnse = ((ServletResponse) context.getResponse());
	RequestDispatcher dispatcher = request.getRequestDispatcher("/j_spring_security_check");
	dispatcher.forward(request, resposnse);
	FacesContext.getCurrentInstance().responseComplete();
	return null;
}
Mike

Quando você chama um método através da action do commandButton, você esta dizendo ao JSF que você vai querer fazer uma navegação de tela, se depois do login você quiser ir para a pagina index.xhtml, voce retorna “index.xhtml”, se quiser permanecer na mesma página, você retorna null

Essas duas linhas de código você deixa antes do return, pois return encerra o método

FacesContext.getCurrentInstance().getExternalContext().getFlash().setKeepMessages(true);
 FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, "E-mail ou senha inválidos!", ""));
A

Mike, coloquei, mas ao digitar o usuario ou senha inválido ele não apresenta a mensagem, mas na url informa “invalid=true”

o método login ficou assim:

public String login() throws ServletException, IOException {
	ExternalContext context = FacesContext.getCurrentInstance().getExternalContext();
	HttpServletRequest request = ((HttpServletRequest) context.getRequest());
	ServletResponse resposnse = ((ServletResponse) context.getResponse());
	RequestDispatcher dispatcher = request.getRequestDispatcher("/j_spring_security_check");
	dispatcher.forward(request, resposnse);
	FacesContext.getCurrentInstance().responseComplete();
	
	FacesContext.getCurrentInstance().getExternalContext().getFlash().setKeepMessages(true);
	FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, "E-mail ou senha inválidos!", ""));

	return null;
}
Mike

Coloca o codigo da mensagem no começo do metodo entao, eu nunca usei o responseComplete(), e agr n da para ver a doc, talvez ele encerra tudo no método

Mike

Voce deixou ajax false no botao, coloca true

A

Coloquei como true, mas não funcionou nada… nem digitando a senha correta ele não prossegue para a página home…

Segue os arquivos:
Login.xhtml (1,8 KB)
LoginBean.java (1,6 KB)

achei estranho que na saída ele executou a pesquisa, mas não abriu a página home com o ajax=true;

Mike

Eu nunca utilizei Spring Security, então tirei todo o código que não serviria pra nada (Não sei se pra Spring seria necessário), e então funcionou normal…

public String login() throws ServletException, IOException {
		FacesContext.getCurrentInstance().getExternalContext().getFlash().setKeepMessages(true);
		FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, "E-mail ou senha inválidos!", ""));

		return null;
}

EDIT:

No código que você postou, em nenhum lugar dizia para ir para home, a menos que home fosse a página de login

Criado 26 de junho de 2018
Ultima resposta 28 de jun. de 2018
Respostas 17
Participantes 3