a propósito, tentei no Tomcat e da o mesmo NPE
Menos mal … vc nao vai precisar inventar uma desculpa esfarrapada sem pé nem cabeça pra explicar o problema, é só achar o problema :shock:
EDITADO: E os logs?
[quote=smota]
EDITADO: E os logs?[/quote]
não tive tempo de brincar nele ainda hj, to atolado aqui no trampo :x
Bem, essa é a saída toda… Notem q o NPE ocorre bem na linha em q eu chamo setUser() no userSession q devia ser instanciado pelo WW:
this.userSession.setUser( model ); // LoginAction.java:26
Jun 3, 2005 9:17:10 AM com.opensymphony.xwork.interceptor.LoggingInterceptor logMessage
INFO: Starting execution stack for action login
Jun 3, 2005 9:17:10 AM com.opensymphony.webwork.dispatcher.ServletDispatcher serviceAction
SEVERE: Could not execute action
java.lang.NullPointerException
at com.foo.action.LoginAction.execute(LoginAction.java:26)
at com.opensymphony.xwork.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:283)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:166)
at com.opensymphony.xwork.interceptor.TimerInterceptor.intercept(TimerInterceptor.java:63)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:164)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:164)
at com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.intercept(DefaultWorkflowInterceptor.java:55)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:164)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:164)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:164)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:164)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:164)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:164)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:164)
at com.foo.interceptor.ApplicationSecurityInterceptor.intercept(ApplicationSecurityInterceptor.java:21)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:164)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:164)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:164)
at com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:116)
at com.opensymphony.webwork.dispatcher.ServletDispatcher.serviceAction(ServletDispatcher.java:272)
at com.opensymphony.webwork.dispatcher.ServletDispatcher.service(ServletDispatcher.java:237)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:996)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:419)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:316)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6452)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3661)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2630)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
<Jun 3, 2005 9:17:10 AM BRT> <Error> <HTTP> <BEA-101020> <[ServletContext(id=3270,name=ww,context-path=/ww)] Servlet failed with Exception
java.lang.NullPointerException
at weblogic.servlet.internal.ServletResponseImpl.sendError(ServletResponseImpl.java:422)
at com.opensymphony.webwork.dispatcher.ServletDispatcher.sendError(ServletDispatcher.java:396)
at com.opensymphony.webwork.dispatcher.ServletDispatcher.serviceAction(ServletDispatcher.java:282)
at com.opensymphony.webwork.dispatcher.ServletDispatcher.service(ServletDispatcher.java:237)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:996)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:419)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:316)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6452)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3661)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2630)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
>
Nao era esse log :?
ehehe … coloque em modo DEBUG (log4.properties) e execute a ação, o log vai ter um monte de mensagens de inicializacao do Webwork (ele carrega o xwork só na primeira requisicao a uma action, nao na inicializacao do container) e depois os interceptors vao dizendo “passei/fiz isso/nao fiz aquilo” … esse log é que pode ajudar.
sim sim, eu coloquei pra debug o log4j mas ele não ta logando em debug, continua mostrando só info, não to entendendo, é como se tivesse arquivos em /WEB-INF/classes q ele lê (xwork.xml, validators.xml…) e outros não (components.xml, log4j.properties …) :?
/WEB-INF
|---- /classes
|---- xwork.xml
|---- webwork-default.xml
|---- webwork.properties
|---- validators.xml
|---- components.xml
|---- log4j.xml
Vai ver esse é seu problema :-o
Tem certeza que o deploy está certo?!? (abre ele lá mesmo, depois de explodido e confere)
Vai ver esse é seu problema :-o
Tem certeza que o deploy está certo?!? (abre ele lá mesmo, depois de explodido e confere)[/quote]
já o fiz, esta tudo lá lá certinho no war
[quote=matheus][quote=fabgp2001] Ja conseguiu?
Se nao foi ainda. Qual a ordem que ta o teu web.xml?
]['s[/quote]
Ainda não foi, não tive tempo de mecher mais, mas… essa é a ordem:
[code]
<?xml version="1.0" ?> com.foo.arch.Initializer com.opensymphony.webwork.lifecycle.SessionLifecycleListener com.opensymphony.webwork.lifecycle.ApplicationLifecycleListener webwork com.opensymphony.webwork.dispatcher.ServletDispatcher 1 webwork *.action webwork /WEB-INF/lib/webwork-2.1.7.jar [/code][/quote]Cara desculpa, nao tinha visto aqui tua resp.
Coloca isso aqui e faz um teste.
[code]
container
com.opensymphony.webwork.lifecycle.RequestLifecycleFilter
Adiciona antes dos listeners.
]['s
coloquei o filter, e agora antes de estourar a NPE estoura isso… :roll:
java.lang.IllegalArgumentException: wrong number of arguments
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java)
at com.opensymphony.xwork.interceptor.component.DefaultComponentManager.setupResource(DefaultComponentManager.java:246)
at com.opensymphony.xwork.interceptor.component.DefaultComponentManager.loadResource(DefaultComponentManager.java:197)
at com.opensymphony.xwork.interceptor.component.DefaultComponentManager.initializeObject(DefaultComponentManager.java:104)
at com.opensymphony.xwork.interceptor.component.ComponentInterceptor.before(ComponentInterceptor.java:33)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:164)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:164)
at com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:116)
at com.opensymphony.webwork.dispatcher.ServletDispatcher.serviceAction(ServletDispatcher.java:272)
at com.opensymphony.webwork.dispatcher.ServletDispatcher.service(ServletDispatcher.java:237)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:996)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:419)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:28)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:28)
at com.opensymphony.webwork.lifecycle.RequestLifecycleFilter.doFilter(RequestLifecycleFilter.java:67)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:28)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6458)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3661)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2630)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
um colega meu aqui conseguiu fazer funcionar o IoC sem problemas, vou pedir pra conferir oq ele fez qnd der um tempo… ai posto aqui oq era.
Ressussitando essa thread!
Estou com o mesmo problema do NPE. Na mesma linha
Fiz todos os passos que estao descritos nessa thread. A unica diferenca é que a minha linha [quote]com.opensymphony.webwork.lifecycle.RequestLifecycleFilter[/quote]
no web.xml dá erro pq pelo que vi nessa versao do WW 2.2.2 não tem mais essa classe…
Alguma dica? Conseguiu resolver o problema do ano passado? hehe
2 dias quebrando a cabeca…
valeu