2016-06-01 6 views
0

Ich habe einen Fehler gefunden, als ich versuchte, eine Datei von meinem Laptop auf meinen Server zu laden.Ist es möglich, RestTemplate auf dem Desktop statt auf Android zu verwenden?

Exception in thread "main" java.lang.NoClassDefFoundError: android/os/Build$VERSION

Ich suchte den Fehlercode und fand eine Antwort darauf hindeutet, dass ich sollte meinen Code auf einem Android-Gerät laufen, aber was ist, wenn ich meinen Code auf meinem Laptop laufen. Ist es möglich, ein RestTemplate Standalone-Programm auf dem Desktop zu erstellen?

Server-Side-Code:

@RequestMapping(value="/upload", method=RequestMethod.POST) 
public String handleUpload(String filename, MultipartFile file) throws IOException { 
    if(!file.isEmpty()) { 
     File saveFile = new File(rootPath + "\\" + filename); 
     saveFile.createNewFile(); 

     BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(new FileOutputStream(saveFile)); 

     FileCopyUtils.copy(file.getInputStream(), bufferedOutputStream); 

     bufferedOutputStream.close(); 

     return "uploaded successfully"; 
    } else { 
     return "failed"; 
    } 
} 

Client-Seite Code:

public static void main(String[] args) 
{ 
    String url = UPLOAD_URL; 
    String filePath = PATH + "\\204375-106.jpg"; 

    SimpleClientHttpRequestFactory httpRequestFactory = new SimpleClientHttpRequestFactory(); 

    RestTemplate rest = new RestTemplate(httpRequestFactory); 
    FileSystemResource resource = new FileSystemResource(new File(filePath)); 
    MultiValueMap<String, Object> param = new LinkedMultiValueMap<String, Object>(); 
    param.add("file", resource); 
    param.add("filename", "204375-106.jpg"); 

    String string = rest.postForObject(url, param, String.class); 
    System.out.println(string); 
} 

Antwort

Verwandte Themen