2016-09-10 11 views
0

tutorialからチュートリアルの後にファイルをアップロードするためにSpringベースのRESTサービスのPOCを試しています。しかし、私は私がSpring 4 REST Service - Getting 404

エラー404次のエラーを取得しています使用してファイルをアップロードしようとすると:javax.servlet.UnavailableException:SRVE0319E: [SpringRestWebservice]サーブレットについては、 org.springframework.web.servlet.handler .DispatcherServletWebRequest サーブレットクラスが見つかりましたが、リソースインジェクションに失敗しました。 が発生しました。 java.lang.NoSuchMethodException: org.springframework.web.servlet.handler.DispatcherServletWebRequestは()

コントローラコードが

@RestController 
@RequestMapping(value = "/restService") 
// Max uploaded file size (here it is 20 MB) 
@MultipartConfig(fileSizeThreshold = 20971520) 
public class RestServiceController { 

@RequestMapping(value = "/fileUpload") 
public String uploadFile(@RequestParam("uploadedFile") MultipartFile uploadedFileRef){ 
    System.out.println("Entering RestServiceController.uploadFile"); 

    // Get name of uploaded file. 
    String fileName = uploadedFileRef.getOriginalFilename(); 
    System.out.println("File to upload : " + fileName); 

    // Path where the uploaded file will be stored. 
    String path = "C:/SpringRestService/" + fileName; 

    // This buffer will store the data read from 'uploadedFileRef' 
    byte[] buffer = new byte[1000]; 
    FileInputStream reader = null; 
    //FileOutputStream writer = null; 
    int totalBytes = 0; 

    try { 
     // Now create the output file on the server. 
     //File outputFile = new File(path); 

     //outputFile.createNewFile(); 

     // Create the input stream to uploaded file to read data from it. 
     reader = (FileInputStream) uploadedFileRef.getInputStream(); 

     // Create writer for 'outputFile' to write data read from 
     // 'uploadedFileRef' 
     //writer = new FileOutputStream(outputFile); 

     // Iteratively read data from 'uploadedFileRef' and write to 
     // 'outputFile';    
     int bytesRead = 0; 
     while ((bytesRead = reader.read(buffer)) != -1) { 
      //writer.write(buffer); 
      totalBytes += bytesRead; 
     } 
    } catch (FileNotFoundException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } catch (IOException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } finally { 
     try { 
      reader.close(); 
      //writer.close(); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 
    } 

    System.out.println("Leaving RestServiceController.uploadFile"); 
    return "File uploaded successfully! Total Bytes Read="+totalBytes; 
} 
} 

web.xmlのスニペット

<servlet> 
<servlet-name>SpringRestWebservice</servlet-name> 
<servlet-class>org.springframework.web.servlet.handler.DispatcherServletWebRequest</servlet-class> 
</servlet> 
<servlet-mapping> 
<servlet-name>SpringRestWebservice</servlet-name> 
<url-pattern>/*</url-pattern> 
</servlet-mapping> 

以下に示します。ファイルアップロードを提出するHTMLコンテンツ

<body> 
<form method="POST" enctype="multipart/form-data" 
    action="http://localhost:9080/SpringRestWebservice/restService/fileUpload"> 
File to upload: <input type="file" name="uploadedFile"><br /> 
<input type="submit" value="Upload"> 
</form> 
</body> 

環境

Eclipse Neon Release (4.6.0) 
Spring 4.2.5 
WAS Liberty v16 

何をしないのですわかりませんか?

答えて

0

私はweb.xmlの

に春のクラスに代わり

<servlet-class>org.springframework.web.servlet.handler.DispatcherServletWebRequest</servlet-class> 

<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 

を使用していた見つけた助けてください

関連する問題