Olá equipe MDA,
estou começando a usar o MDA e obtive um problema. Na minha aplicação (SuportePais do tutorial), quando inicio o JBOSS, eu exergo inicialmente a tela de login e o faço corretamente, o que me redireciona para uma tela de consulta de países. Logo após isso, eu coloco os dados no formulário e tento buscar no banco de dados os paises que tem aquelas informações, porém a aplicação retorna que meu usuário não esta logado no sistema e o erro no console afirma que ele recebeu um subject null.
Esse erro não acontecia antes de se implementar o método consultaPais, da classe ConsultaPaisControleImpl:
public final void consultaPais(ActionMapping mapping, br.gov.web.cadastroPais.consultaPais.ConsultaPaisForm form, HttpServletRequest request, HttpServletResponse response) throws Exception
{
Integer paginacao =(((Integer)request.getAttribute(Constantes.PARAMETRO_GRUPO)));
PaisVO paisVO = new PaisVO();
paisVO.setCodigo(form.getCodigo());
paisVO.setCodigoAuxiliar(form.getCodigoAuxiliar());
paisVO.setDescricao(form.getDescricao());
paisVO.setValor(form.getValor());
Collection paises = getPaisHandler(request).manipulaPais(new PaisImpl(), new FilterAction( (DataObject) paisVO, paginacao)); // ERRO ACONTECE NESTA LINHA
form.setPaises(paises);
}
Estou usando a versao do cartucho : cartridge.version=3.1.1.3.4.14
Erro do console
17:07:18,875 ERROR [STDERR] java.lang.Exception: java.security.PrivilegedActionException: accessControl.exception.SubjectNaoIdentificadoException: subject.null
17:07:18,875 ERROR [STDERR] at br.gov.tutorial.cs.servicoPais.pbi.PaisHandlerPBI.manipulaPais(PaisHandlerPBI.java:112)
17:07:18,875 ERROR [STDERR] at br.gov.web.cadastroPais.consultaPais.ConsultaPaisControleImpl.consultaPais(ConsultaPaisControleImpl.java:38)
17:07:18,875 ERROR [STDERR] at br.gov.web.cadastroPais.consultaPais.PreenchaOsDadosDaConsultaDePaisConsulta._consultaPais(PreenchaOsDadosDaConsultaDePaisConsulta.java:156)
17:07:18,875 ERROR [STDERR] at br.gov.web.cadastroPais.consultaPais.PreenchaOsDadosDaConsultaDePaisConsulta.particularExecute(PreenchaOsDadosDaConsultaDePaisConsulta.java:99)
17:07:18,875 ERROR [STDERR] at accessControl.Login._verificarPermissao(Login.java:279)
17:07:18,875 ERROR [STDERR] at accessControl.Login.__sessaoValida(Login.java:206)
17:07:18,875 ERROR [STDERR] at accessControl.Login._validarSessao(Login.java:106)
17:07:18,875 ERROR [STDERR] at accessControl.Login.execute(Login.java:35)
17:07:18,875 ERROR [STDERR] at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
17:07:18,875 ERROR [STDERR] at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
17:07:18,875 ERROR [STDERR] at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
17:07:18,875 ERROR [STDERR] at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
17:07:18,875 ERROR [STDERR] at org.andromda.presentation.bpm4struts.ActionServlet.doPost(ActionServlet.java:97)
17:07:18,875 ERROR [STDERR] at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
17:07:18,875 ERROR [STDERR] at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
17:07:18,875 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
17:07:18,875 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
17:07:18,875 ERROR [STDERR] at org.displaytag.filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java:125)
17:07:18,875 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
17:07:18,875 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
17:07:18,875 ERROR [STDERR] at org.andromda.presentation.bpm4struts.ActionServletFilter.doFilter(ActionServletFilter.java:18)
17:07:18,875 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
17:07:18,875 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
17:07:18,875 ERROR [STDERR] at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
17:07:18,875 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
17:07:18,875 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
17:07:18,875 ERROR [STDERR] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
17:07:18,875 ERROR [STDERR] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
17:07:18,875 ERROR [STDERR] at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
17:07:18,875 ERROR [STDERR] at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
17:07:18,875 ERROR [STDERR] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
17:07:18,875 ERROR [STDERR] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
17:07:18,875 ERROR [STDERR] at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
17:07:18,875 ERROR [STDERR] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
17:07:18,875 ERROR [STDERR] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
17:07:18,875 ERROR [STDERR] at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
17:07:18,875 ERROR [STDERR] at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
17:07:18,875 ERROR [STDERR] at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
17:07:18,875 ERROR [STDERR] at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
17:07:18,875 ERROR [STDERR] at java.lang.Thread.run(Unknown Source)
17:07:18,875 ERROR [STDERR] Caused by: java.security.PrivilegedActionException: accessControl.exception.SubjectNaoIdentificadoException: subject.null
17:07:18,875 ERROR [STDERR] at java.security.AccessController.doPrivileged(Native Method)
17:07:18,875 ERROR [STDERR] at javax.security.auth.Subject.doAsPrivileged(Unknown Source)
17:07:18,875 ERROR [STDERR] at br.gov.tutorial.cs.servicoPais.pbi.PaisHandlerPBI.manipulaPais(PaisHandlerPBI.java:90)
17:07:18,875 ERROR [STDERR] ... 39 more
17:07:18,875 ERROR [STDERR] Caused by: accessControl.exception.SubjectNaoIdentificadoException: subject.null
17:07:18,875 ERROR [STDERR] at accessControl.SecurityProxyImpl.invoke(SecurityProxyImpl.java:77)
17:07:18,875 ERROR [STDERR] at org.jboss.ejb.plugins.SecurityProxyInterceptor.invoke(SecurityProxyInterceptor.java:180)
17:07:18,875 ERROR [STDERR] at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:158)
17:07:18,875 ERROR [STDERR] at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:169)
17:07:18,875 ERROR [STDERR] at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:63)
17:07:18,875 ERROR [STDERR] at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:121)
17:07:18,875 ERROR [STDERR] at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:350)
17:07:18,875 ERROR [STDERR] at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:181)
17:07:18,875 ERROR [STDERR] at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:168)
17:07:18,875 ERROR [STDERR] at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:205)
17:07:18,875 ERROR [STDERR] at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:136)
17:07:18,875 ERROR [STDERR] at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:648)
17:07:18,875 ERROR [STDERR] at org.jboss.ejb.Container.invoke(Container.java:954)
17:07:18,875 ERROR [STDERR] at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalProxyFactory.java:430)
17:07:18,875 ERROR [STDERR] at org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSessionProxy.java:103)
17:07:18,875 ERROR [STDERR] at $Proxy66.filterPais(Unknown Source)
17:07:18,875 ERROR [STDERR] at br.gov.tutorial.cs.servicoPais.pbi.PaisHandlerPBI$1.run(PaisHandlerPBI.java:94)
17:07:18,875 ERROR [STDERR] ... 42 more
17:07:18,890 WARN [ValidatorResources] Form 'null' not found for locale 'pt_BR'
StackTrace
java.lang.Exception: java.security.PrivilegedActionException: accessControl.exception.SubjectNaoIdentificadoException: subject.null at br.gov.tutorial.cs.servicoPais.pbi.PaisHandlerPBI.manipulaPais(PaisHandlerPBI.java:112) at br.gov.web.cadastroPais.consultaPais.ConsultaPaisControleImpl.consultaPais(ConsultaPaisControleImpl.java:38) at br.gov.web.cadastroPais.consultaPais.PreenchaOsDadosDaConsultaDePaisConsulta._consultaPais(PreenchaOsDadosDaConsultaDePaisConsulta.java:156) at br.gov.web.cadastroPais.consultaPais.PreenchaOsDadosDaConsultaDePaisConsulta.particularExecute(PreenchaOsDadosDaConsultaDePaisConsulta.java:99) at accessControl.Login._verificarPermissao(Login.java:279) at accessControl.Login.__sessaoValida(Login.java:206) at accessControl.Login._validarSessao(Login.java:106) at accessControl.Login.execute(Login.java:35) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432) at org.andromda.presentation.bpm4struts.ActionServlet.doPost(ActionServlet.java:97) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.displaytag.filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java:125) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.andromda.presentation.bpm4struts.ActionServletFilter.doFilter(ActionServletFilter.java:18) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175) at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112) at java.lang.Thread.run(Unknown Source) Caused by: java.security.PrivilegedActionException: accessControl.exception.SubjectNaoIdentificadoException: subject.null at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAsPrivileged(Unknown Source) at br.gov.tutorial.cs.servicoPais.pbi.PaisHandlerPBI.manipulaPais(PaisHandlerPBI.java:90) ... 39 more Caused by: accessControl.exception.SubjectNaoIdentificadoException: subject.null at accessControl.SecurityProxyImpl.invoke(SecurityProxyImpl.java:77) at org.jboss.ejb.plugins.SecurityProxyInterceptor.invoke(SecurityProxyInterceptor.java:180) at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:158) at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:169) at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:63) at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:121) at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:350) at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:181) at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:168) at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:205) at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:136) at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:648) at org.jboss.ejb.Container.invoke(Container.java:954) at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalProxyFactory.java:430) at org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSessionProxy.java:103) at $Proxy66.filterPais(Unknown Source) at br.gov.tutorial.cs.servicoPais.pbi.PaisHandlerPBI$1.run(PaisHandlerPBI.java:94) ... 42 more
Alguem sabe o que devo fazer?
Abraços
Autor: Rodrigo Ney
66 comentários