Hello,

I'm trying to add upload progress support to tapestry-upload. That why
I've hack a bit tapestry-upload (5.0.15) to allow injection of a
org.apache.commons.fileupload.ProgressListener implementation.

You can find my modifications here (diff from 5.0.15) :
http://pastebin.com/m500a4293

Then, in my application, I want to do the following (using
http://wiki.apache.org/tapestry/Tapestry5HowToCreateADispatcher2 as a
reference)
- Define a ProgressListener implementation using PER_THREAD scope. This
implementation will be automatically injected to
org.apache.tapestry5.upload.internal.services.MultipartDecoderImpl
- Inject ApplicationStateManager into my ProgressListener implementation
though constructor.
- Update a specific ASO to update upload progress state.


Here the relevant part of my code, with, in each case, a link to the
full code


AppModule : http://pastebin.com/m3b575d9b
--------------------------------------------------
public static void bind(ServiceBinder binder) {
                binder.bind(ProgressListener.class, 
ProgressListenerImpl.class).scope(
                                IOCConstants.PERTHREAD_SCOPE);
}


ProgressListenerImpl : http://pastebin.com/m696026fb
--------------------------------------------------
this.data = applicationStateManager.get(UserData.class);




Using this code I've got a NPE when ApplicationStateManager try to get
the HttpSession : http://pastebin.com/m1f968817
In debug mode, request.getSession() throws NPE.


With help of #tapestry, I've also try to inject HttpServletRequest
instead of ApplicationStateManager but the behavior is the same
(http://pastebin.com/m59c6dcff)


Do you have any clue to help to solve this issue?





---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to