1

Web アプリケーションで奇妙な動作が発生し、何が起こっているのかわかりません。

問題は、コントローラーが応答するのに一定の時間を超えると、何らかの理由で (応答時間に基づいて) 再試行することです。最初の試みはファイルのアップロードでしたが、コントローラーのすべてをコメントアウトし、次のもののみを作成しました。

Thread.currentThread().sleep(60000);

スレッドが完了するまで、何かがまだリクエストを継続的に POST していることにログで気付きました。

それが重要かどうかはわかりませんが、ここに私のフォームがあります:

<form action="/w/upload" method="post" enctype="multipart/form-data" >
    Select a file: <input type="file" name="videoFileData" />
    <input type="submit" value="Upload" />
</form>

ファイルを添付せずに POSTing をテストしたところ、機能しました (コントローラーは 1 つの要求しか受信しませんでした) が、要求でファイルがアップロードされた場合、コントローラーは 2 つの要求を受け取りました。

ある種の設定がありませんか?

ログ:

02:18:22.570::o.s.w.s.DispatcherServlet::DEBUG::DispatcherServlet with name 'DispatcherServlet' processing POST request for [/w/upload]
02:18:22.621::o.s.w.m.c.CommonsMultipartResolver::DEBUG::Found multipart file [videoFileData] of size 3773872 bytes with original filename [VID_20130505_184912.mp4], stored at [/Users/gumatias/Work/code/ownits/ownits/ownits-skate-uploader/target/work/upload_78f4071c_b8dc_4923_a723_ae9c9d7eaf82_00000003.tmp]
02:18:22.624::o.s.w.s.m.m.a.RequestMappingHandlerMapping::DEBUG::Looking up handler method for path /upload
02:18:22.624::o.s.w.s.m.m.a.RequestMappingHandlerMapping::DEBUG::Returning handler method [public org.springframework.web.servlet.ModelAndView com.ownits.uploader.web.controller.UploadController.handleRequest(com.ownits.uploader.web.form.UploadForm) throws java.lang.Exception]
02:18:22.624::o.s.b.f.s.DefaultListableBeanFactory::DEBUG::Returning cached instance of singleton bean 'uploadController'
02:18:22.635::c.o.u.w.c.UploadController::INFO ::Uploading video...
02:18:52.572::o.s.w.s.DispatcherServlet::DEBUG::DispatcherServlet with name 'DispatcherServlet' processing POST request for [/w/upload]
02:18:52.602::o.s.w.m.c.CommonsMultipartResolver::DEBUG::Found multipart file [videoFileData] of size 3773872 bytes with original filename [VID_20130505_184912.mp4], stored at [/Users/gumatias/Work/code/ownits/ownits/ownits-skate-uploader/target/work/upload_78f4071c_b8dc_4923_a723_ae9c9d7eaf82_00000007.tmp]
02:18:52.602::o.s.w.s.m.m.a.RequestMappingHandlerMapping::DEBUG::Looking up handler method for path /upload
02:18:52.602::o.s.w.s.m.m.a.RequestMappingHandlerMapping::DEBUG::Returning handler method [public org.springframework.web.servlet.ModelAndView com.ownits.uploader.web.controller.UploadController.handleRequest(com.ownits.uploader.web.form.UploadForm) throws java.lang.Exception]
02:18:52.602::o.s.b.f.s.DefaultListableBeanFactory::DEBUG::Returning cached instance of singleton bean 'uploadController'
02:18:52.603::c.o.u.w.c.UploadController::INFO ::Uploading video...
02:19:22.637::c.o.u.w.c.UploadController::INFO ::Done uploading video
02:19:22.637::o.s.w.s.DispatcherServlet::DEBUG::Rendering view [org.springframework.web.servlet.view.JstlView: name 'upload'; URL [/WEB-INF/views/master/upload.jsp]] in DispatcherServlet with name 'DispatcherServlet'
02:19:22.637::o.s.w.s.v.JstlView::DEBUG::Added model object 'org.springframework.validation.BindingResult.uploadForm' of type [org.springframework.validation.BeanPropertyBindingResult] to request in view with name 'upload'
02:19:22.637::o.s.w.s.v.JstlView::DEBUG::Added model object 'uploadForm' of type [com.ownits.uploader.web.form.UploadForm] to request in view with name 'upload'
02:19:22.637::o.s.w.s.v.JstlView::DEBUG::Forwarding to resource [/WEB-INF/views/master/upload.jsp] in InternalResourceView 'upload'
02:19:22.638::o.a.t.i.BasicTilesContainer::DEBUG::Render request recieved for definition 'upload'
02:19:22.639::o.s.w.m.c.CommonsMultipartResolver::DEBUG::Cleaning up multipart file [videoFileData] with original filename [VID_20130505_184912.mp4], stored at [/Users/gumatias/Work/code/ownits/ownits/ownits-skate-uploader/target/work/upload_78f4071c_b8dc_4923_a723_ae9c9d7eaf82_00000003.tmp]
02:19:22.639::o.s.w.s.DispatcherServlet::DEBUG::Successfully completed request
02:19:52.603::c.o.u.w.c.UploadController::INFO ::Done uploading video
02:19:52.604::o.s.w.s.DispatcherServlet::DEBUG::Rendering view [org.springframework.web.servlet.view.JstlView: name 'upload'; URL [/WEB-INF/views/master/upload.jsp]] in DispatcherServlet with name 'DispatcherServlet'
02:19:52.604::o.s.w.s.v.JstlView::DEBUG::Added model object 'org.springframework.validation.BindingResult.uploadForm' of type [org.springframework.validation.BeanPropertyBindingResult] to request in view with name 'upload'
02:19:52.604::o.s.w.s.v.JstlView::DEBUG::Added model object 'uploadForm' of type [com.ownits.uploader.web.form.UploadForm] to request in view with name 'upload'
02:19:52.604::o.s.w.s.v.JstlView::DEBUG::Forwarding to resource [/WEB-INF/views/master/upload.jsp] in InternalResourceView 'upload'
02:19:52.604::o.a.t.i.BasicTilesContainer::DEBUG::Render request recieved for definition 'upload'
02:19:52.605::o.s.w.m.c.CommonsMultipartResolver::DEBUG::Cleaning up multipart file [videoFileData] with original filename [VID_20130505_184912.mp4], stored at [/Users/gumatias/Work/code/ownits/ownits/ownits-skate-uploader/target/work/upload_78f4071c_b8dc_4923_a723_ae9c9d7eaf82_00000007.tmp]
02:19:52.605::o.s.w.s.DispatcherServlet::DEBUG::Successfully completed request
4

1 に答える 1

1

OK、人々が知っているように。これは Jetty の問題で、おそらくバグです。Tomcatに切り替えると解決しました。

于 2013-06-27T07:14:23.380 に答える