2015-03-02 29 views
0

我有一個web服務控制器CALSS這樣如何使用改進庫上傳多部分請求?

public class User { 
    private String customer; // JSON string 
    private CommonsMultipartFile photo1; 
    private CommonsMultipartFile photo2; 
    private CommonsMultipartFile photo3; 
    private CommonsMultipartFile photo4; 
    public User() {} 
    public User(String customer, CommonsMultipartFile photo1, CommonsMultipartFile photo2, 
      CommonsMultipartFile photo3,CommonsMultipartFile photo4) { 
     this.customer = customer; this.photo1= photo1; this.photo2= photo2; 
     this.photo3= photo3; this.photo4= photo4;} 
    public String getCustomer() { return customer; } 
    public CommonsMultipartFile getPhoto1() { return Photo1; } 
    public CommonsMultipartFile getPhoto2() { return Photo2; } 
    public CommonsMultipartFile getPhoto3() { return Photo3; } 
    public CommonsMultipartFile getPhoto4() { return Photo4; } 
}  


    @RequestMapping(value = "/create",method = RequestMethod.POST, produces = "application/json") 
public ResponseEntity<String> createCustomerWithKYC(User user) throws Exception { 
      CustomerWSDto customerWSDto = new JSONDeserializer<CustomerWSDto>().use(null, CustomerWSDto.class).deserialize(user.getCustomer()); 
    Customer customer = customerAssem.fromDto(customerWSDto); 
    CustomerDto customerDto = customerAssem.toDto(customer); 
    customerDto.getphoto1().setphoto1(user.photo1); 
    customerDto.getphoto1().setphoto2(user.photo2); 
    customerDto.getphoto1().setphoto3(user.photo3); 
    customerDto.getphoto1().setphoto4(user.photo4); 
    customerService.createCustomer(customerDto); 
    return new ResponseEntity<String>(new JSONSerializer().exclude("*.class").serialize(customerDto), HttpStatus.OK); 
} 

上述create()方法接受類型用戶的對象。

在客戶端應用程序我打電話此WebService像波紋管使用改裝

@Multipart 
    @POST("/create") 
    void createUser(@Part("user") User user, 
           @PartMap Map<String,TypedFile> files, 
           Callback<Customer> callback); 

但它給我在服務器端的控制器類沒有發現defaut構造。請檢查我做錯了什麼。請解決這個問題。

+1

「請解決這個問題」。我們不會給你代碼,就是這樣。 – Loko 2015-03-02 10:20:21

+0

將用戶類創建爲一個簡單的POJO,具有空的構造函數併爲所有屬性提供setter和getter。 – khanmizan 2015-03-02 10:21:05

+0

我提供了所有的setter和getter。但我沒有在這裏展示。因爲它被理解。客戶端有什麼不對嗎?這是多部分請求? – Ramesh 2015-03-02 10:31:02

回答

0

將用戶類創建爲一個簡單的POJO,具有空的構造函數併爲所有屬性提供setter和getter。

public class User { 
    private String user; // JSON string 
    private CommonsMultipartFile photo1; 
    private CommonsMultipartFile photo2; 
    private CommonsMultipartFile photo3; 
    private CommonsMultipartFile photo4; 

    Public user(){} 

    Public CommonsMultipartFile getPhoto1(){ 
     return photo1; 
    } 

    Public setPhoto1(CommonsMultipartFile photo1){ 
     this.photo1 = photo1; 
    } 

    ... 

} 
``` 
+0

我已經發送完成我的代碼請參閱並解決我的問題 – Ramesh 2015-03-02 10:57:48

+0

我認爲安裝程序不是必需的。因爲在created()中已經有一個User類型的對象.. – Ramesh 2015-03-02 11:18:49

相關問題