:arrow: Make IoCFilter backwards compatible with versions prior to 1.3.
(No need to migrate from 1.2 to 1.3, in other words, forget about PushIoCFilter,
just use the new IoCFilter like you were using before 1.3)
:arrow: AfterConsequenceFilter to allow a filter to modify the action after the consequence is executed.
(This is good for ConnectionFilter and HibernateFilter that wants to close the connection/session
after the jsp (view) has been executed)
:arrow: Big improvements in the consequence Redirect.java. (Thanks to Alan Burlison from Sun)
:arrow: DIFilter fixes
:arrow: Dyntags!
:arrow: A lot of other good stuff that we cannot remember now
Alguém usa o Mentawai na Locaweb!? Tenho um projeto lá onde utilizo Spring e Hibernate. Foi mais de uma semana para o ambiente ficar redondinho!
Com o Mentawai será que a Locaweb faz alguma restrição inicial!? O que eles dizem é que tem algumas classes que utilizam reflection e por questões de segurança elas são bloqueadas no policy do tomcat. Como estou estudando o Mentawaii, analizando a possibilidade de utilizá-lo em algum projeto e o servidor que utilizo é a Locaweb meu veio essa dúvida.
Estou fazendo uns testes com o Mentawai e estou gostando muito. Estou fazendo um módulo de autenticação e autorização de um sistema. A autenticação já funcionou 100% mas a autorização está dando um erro esquisito quando eu coloco uma consequência global para ACCESSDENIED. Na realidade o meu objetivo é que tanto LOGIN, quanto ACCESSDENIED caiam na página de login.
Só que estou recebendo o seguinte erro quando tento acessa a minha página:
15:40:19,281 ERROR - Servlet.service() for servlet jsp threw exception
org.mentawai.core.ConsequenceException: java.lang.NullPointerException
at org.mentawai.core.Redirect.execute(Redirect.java:115)
at org.mentawai.tag.authorization.RequiresAuthorization.executeConsequence(RequiresAuthorization.java:94)
at org.mentawai.tag.authorization.RequiresAuthorization.doEndTag(RequiresAuthorization.java:130)
at org.apache.jsp.principal_jsp._jspx_meth_mtw_requiresAuthorization_0(principal_jsp.java:101)
at org.apache.jsp.principal_jsp._jspService(principal_jsp.java:60)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.mentawai.util.DebugServletFilter.doFilter(DebugServletFilter.java:70)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:362)
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.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
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:856)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.NullPointerException
... 31 more
Se retirar o on(ACCESSDENIED,redir("/login.jsp")) não gera erro e não gera mais nada também a página fica em branco.
O que eu fiz foi informar ao suporte o mapeamento da extensão que vc escolher para o mentawai ser redirecionada ao MentawaiController (configurado no web.xml, o padrão é .mtw ).
De resto foi tranquilo… não usei todas features do Mentawai ainda, mas todas que usei não mostraram problemas.
saoj, baixei o jar no link que vc passou porém o erro continuou.
08:53:38,875 ERROR - Servlet.service() for servlet jsp threw exception
org.mentawai.core.ConsequenceException: java.lang.NullPointerException
at org.mentawai.core.Redirect.execute(Redirect.java:115)
at org.mentawai.tag.authorization.RequiresAuthorization.executeConsequence(RequiresAuthorization.java:94)
at org.mentawai.tag.authorization.RequiresAuthorization.doEndTag(RequiresAuthorization.java:130)
at org.apache.jsp.principal_jsp._jspx_meth_mtw_requiresAuthorization_0(principal_jsp.java:101)
at org.apache.jsp.principal_jsp._jspService(principal_jsp.java:60)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.mentawai.util.DebugServletFilter.doFilter(DebugServletFilter.java:70)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:362)
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.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
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:856)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.NullPointerException
... 31 more
Foi mal saoj!! O firefox tinha feito cache do arquivo anterior, como o nome é o mesmo ele entendeu que era o mesmo arquivo e me deu o que estava no cache.
Para evitar esse tipo de problema não seria bom colocar a versão na URL ou no nome do arquivo!?
saoj, agora tenho certeza absoluta que baixei o jar que vc me passou e tenho certeza absoluta que estou usando ele e tenho certeza absoluta que o mesmo erro continua.
Não existe a possibilidade de vc ter alterado o código fonte e não ter compilado o arquivo na geração do jar!? Ou de ter gerado o jar mas o jar que está no link continuar sendo o antigo!?
Só falta isso para fechar meu módulo de autorização!
Agora sim!!! Módulo de autorização e autenticação concluídos!
Acho que me expressei mal em relação ao cache…o que quis dizer foi que já tinha baixado a versão estável pelo firefox com o nome “mentawai.jar” daí hoje quando fui baixar a versão que vc tinha corrigido ele na realidade não tinha baixado o novo e sim o estável que eu havia baixado anteriormente. Só por curiosidade…existe jar do firefox!?
Um abraço e valeu! Estou gostando muito do framework!