Sorry for response so late...
Well, i'm using Stripes 1.4.3, Stripes Security 1.4.2, Java 6.
In JSP, i use something like this:
...
<stripes:form action="/users/UserRegister.action">
<stripes:hidden name="user.id" value="${requestScope.actionBean.user.id}"/>
<stripes:hidden name="user.login"
value="${requestScope.actionBean.user.login}"/>
<stripes:hidden name="user.email"
value="${requestScope.actionBean.user.email}"/>
<stripes:file name="newAttachement" />
<stripes:text name="user.name" value=""/>
<stripes:text name="user.address" value=""/>
<stripes:submit name="registerUser" style="width:14em;" value="${regUser}"/>
....
in the action i have this:
...
// this attributes have the getters/setters methods...
private User user;
private FileBean newAttchement;
...
@DefaultHandler
@HandlesEvent(value = "registerUser")
public Resolution registerUser() {
log.info("******************** registerUser *****************");
log.info("----"+user+":"+user.id);
log.info("File Name"+newAttchement.getFileName());
log.info(user.getId()+" "+user);
userService.saveUser(user); //this made save ou update
return new RedirectResolution(UsersActionBean.class);
}
@Before(LifecycleStage.BindingAndValidation)
public void fillLookupFields() {
log.info("******************** fillLookupFields *****************");
userLogged = getUserInWork();
}
i use an interceptor before fillLookupFields for doing this:
@Intercepts(LifecycleStage.ResolutionExecution)
public class MyInterceptor implements Interceptor {
public Resolution intercept(ExecutionContext ctx) throws Exception {
HttpServletRequest httpRequest = ctx.getActionBeanContext().getRequest();
log.info(httpRequest.getUserPrincipal().getName());
log.info(httpRequest.getRequestURI());
return ctx.proceed();
}
}
this is the configuration of Stripes Security filter in web.xml
<description>
Provides essential configuration and request processing services
for the Stripes framework.
</description>
<display-name>Stripes Security Filter</display-name>
<filter-name>StripesSecurityFilter</filter-name>
<filter-class>net.sourceforge.stripes.security.controller.StripesSecurityFilter</filter-class>
<init-param>
<param-name>SecurityManager.Class</param-name>
<param-value>pt.outsoft.ingere.stripes.security.MySecurityManager</param-value>
<!--like in the documentation page-->
</init-param>
<!-- Optional init parameters for the Stripes Filter. -->
<init-param>
<param-name>ActionResolver.UrlFilters</param-name>
<param-value>/WEB-INF/classes</param-value>
</init-param>
<init-param>
<param-name>ActionResolver.PackageFilters</param-name>
<param-value>pt.outsoft.ingere.stripes.action.*</param-value>
</init-param>
<init-param>
<param-name>Interceptor.Classes</param-name>
<param-value>
net.sourceforge.stripes.security.controller.SecurityInterceptor,
net.sourceforge.stripes.controller.BeforeAfterMethodInterceptor,
<!--To do something when an event is called-->
pt.outsoft.ingere.stripes.Interceptors.MyInterceptor
</param-value>
</init-param>
this is the log:
10:32:56,507 WARN [DefaultExceptionHandler] Unhandled exception caught by
the Stripes default exception handler.
java.lang.NullPointerException
at
pt.outsoft.ingere.stripes.action.users.UserRegisterActionBean.registerUser(UserRegisterActionBean.java:65)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
net.sourceforge.stripes.controller.DispatcherHelper$6.intercept(DispatcherHelper.java:445)
at
net.sourceforge.stripes.controller.ExecutionContext.proceed(ExecutionContext.java:157)
at
net.sourceforge.stripes.controller.BeforeAfterMethodInterceptor.intercept(BeforeAfterMethodInterceptor.java:107)
at
net.sourceforge.stripes.controller.ExecutionContext.proceed(ExecutionContext.java:154)
at
net.sourceforge.stripes.controller.ExecutionContext.wrap(ExecutionContext.java:73)
at
net.sourceforge.stripes.controller.DispatcherHelper.invokeEventHandler(DispatcherHelper.java:443)
at
net.sourceforge.stripes.controller.DispatcherServlet.invokeEventHandler(DispatcherServlet.java:241)
at
net.sourceforge.stripes.controller.DispatcherServlet.doPost(DispatcherServlet.java:154)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
net.sourceforge.stripes.controller.StripesFilter.doFilter(StripesFilter.java:180)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:119)
at
com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:55)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
net.sourceforge.stripes.controller.StripesFilter.doFilter(StripesFilter.java:180)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at pt.outsoft.ingere.filters.UTF8Filter.doFilter(UTF8Filter.java:29)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at
org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
at
org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at
org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580)
at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
10:32:56,507 WARN [DefaultExceptionHandler] Unhandled exception caught by
the Stripes default exception handler.
net.sourceforge.stripes.exception.StripesServletException: Unhandled
exception caught by the default exception handler.
at
net.sourceforge.stripes.exception.DefaultExceptionHandler.handle(DefaultExceptionHandler.java:45)
at
net.sourceforge.stripes.controller.StripesFilter.doFilter(StripesFilter.java:183)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
this is my problem... but is we take off the stripes:file tag, the code
works fine...
So, can you Help me,please...
Thanks
Paulo Hélio Alves
--
View this message in context:
http://www.nabble.com/File-Upload%2C-throw-null-pointer-because-destroy-context.-tp16420285p16536783.html
Sent from the stripes-users mailing list archive at Nabble.com.
-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Register now and save $200. Hurry, offer ends at 11:59 p.m.,
Monday, April 7! Use priority code J8TLD2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
Stripes-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/stripes-users