2010-11-18 2 views
0

Spring CommonsMultipartResolverを使用してファイルをアップロードしようとしていますが、コントローラが認識されません。このエラーメッセージが表示されます。「要求されたリソース(/WebIDE/WEB-INF/views/file/upload.jsp)は利用できません。」Spring MVCとCommonsMultipartResolverが期待どおりに動作しないファイルをアップロード中

私のライブラリにcommons-fileupload-1.2.2.jarとcommons-io.1.3.2.jarを追加しました。私は自分のアプリケーションのコンテキストで次のように追加しました:

<context:component-scan base-package="org.webide.mvc" /> 

<bean id="multipartResolver" 
    class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> 

    <!-- specify maximum file size in bytes --> 
    <property name="maxUploadSize" value="100000"/> 
</bean> 

私は私のコントローラとしてPOJOを使用しています:

@Controller 
@RequestMapping (value = "/file") 
public class FileController { 

    @RequestMapping (value = "/upload") 
    public String uploadFile(@RequestParam("file") CommonsMultipartFile file){ 
    if (!file.isEmpty()){ 
     byte fileBytes[] = file.getBytes(); 
     return "mainView"; 
    }else{ 
     return "errorView"; 
    } 
    } 

私のHTMLは、現時点では非常に簡単です:

<form method="post" action="file/upload" enctype="multipart/form-data"> 
      <input type="text" name="name"/> 
      <input type="file" name="file"/> 
      <input type="submit"/> 
</form> 

でしたあなたが何かを見逃しているかどうか私に知らせてください? ありがとう

+0

あなたのシンプルなHTMLのURLは何ですか? – Bozho

答えて

0

メインURLはhttp://localhost:8084/WebIDE/だったので、action = "/ file/upload"は@Controllerでマークされたクラスにリクエストを送信する必要があります。私はブレークポイントを置いて、コントローラーをまったく拾っていませんでした。

アプリケーションコンテキスト(上記参照)で指定されたすべてのものをディスパッチャサーブレットmvc-config.xmlにコピーし、コンテキストがmvc-config.xmlの親であるように宣言していた方法を変更するために、 config.xml

それはトリックをしたように見えます! :)

ご協力いただきありがとうございます。

関連する問題