Re: No uploaded file when upgrading to new Tapestry version (Spring Boot jar, embedded Tomcat...)
Vjeran Marcinko <[email protected]>
| Newsgroups | gmane.comp.java.tapestry.user |
|---|---|
| Message-ID | <[email protected]> |
No, I checked. The exception isn't raised, but this parsing returns empty list: return createFileUpload().parseRequest(request); Which is basically Commons FileUpload called all the way down. I checked the HTTP request being proper multipart in Chrome Inspector, and fileupload code recognizes it as such, but somehow it parses it like it doesn't ocntain any file items :-/ I don't think it is about java 8, but probably some combination of Spring Boot 2.0 + newest Tomcat + embedded version of it, or whatever... As I said, the old version of the app uses Tapestry 5.3.7 + Commons FileUpload 1.2.1, whereas newer tapestry version use Commons FileUpload 1.3.1, but I tried downgrading this fileupload lib to 1.2.1 to no effect. -Vjeran On 06/19/2018 07:58 PM, Dmitry Gusev wrote: > Hi, > > judging by the code you submitted, it should only return an empty list in > case of FileUploadException. > > Did you try to attach with debugger and checking the exception object? > > On Tue, Jun 19, 2018 at 7:28 PM, Vjeran Marcinko < > [email protected]> wrote: > >> Hi, >> >> I am upgrading my old Tapestry 4.3.7 app (java-7, standalone Tomcat...) to >> newer tech stack (java 8, Spring Boot with embeddable Tomcat deployed as >> single jar...). I wan't to leave tapestry untouched as much as possible, so >> I just upgraded from 4.3.7 to 4.3.8 because of Java-8 requirement. >> >> And practically everything works perfectly except that my Upload component >> stopped working. It doesn't raise any error, its just that after form >> submit, my UploadedFile instance is always null. >> >> I debugged a bit, and found out that within Tapestry's >> MultipartDecoderImpl there is this part that should parse FileItems from >> HTTP request, but it always parses empty list. I udnerstand that here >> Taestry uses Apache Commons-FileUpload, but I have no idea what has changed >> for this to stop working properly? >> >> protected List<FileItem>parseRequest(HttpServletRequest request) >> { >> try { >> return createFileUpload().parseRequest(request); }catch >> (FileUploadException ex) >> { >> uploadException = ex; return Collections.emptyList(); } >> } >> >> Dunno if Spring Boot and its embeeded Tomcat are making some difference >> here... >> >> Any idea? >> >> -Vjeran >> > > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]