2017-02-24 55 views
0

我一直在嘗試將字符串數組發送到沒有任何運氣的寧靜服務。我寫了這個如何創建一個可以接受三個字符串數組的字符串寧靜方法

@GET 
@Produces(MediaType.TEXT_PLAIN) 
public String getBackgroundImages(@QueryParam("missions") String[] missions, 
            @QueryParam("objects")String[] objects, 
            @QueryParam("dates")String[] dates) { 

........  


    return generateTxt(); 

}

在JavaScript的身邊,我有這個

var missions = new Array("One", "Two"); 
      var objects = new Array("objOne" ,"objTwo"); 
      var dates = new Array("1967-11-07","1977-12-17");       
     $.ajax({ 
      url: "myurl/rest/UploadBackgroundFile/", 
      data: {'missions':missions,'objects':objects,'dates':dates}, 

      success: function (data) {      
       arr = JSON.parse(data); 
       $('.container-fluid').css('background-image','url('+arr[0].img+')');  
      } 
     });  

我的問題是,這是不工作,我得到這個例外

org.apache.catalina.core.ApplicationContext.log StandardWrapper.Throwable org.glassfish.jersey.server.mod el.ModelValidationException:應用程序資源模型的驗證在應用程序初始化期間失敗。 [[致命]沒有找到針對 類型參數的注入源public java.lang.String UploadBackgroundFile.getBackgroundImages(java.lang.String [],java.lang.String [],java.lang.String [])

如果我將參數更改爲普通字符串,並從JavaScript方發送字符串比方法將工作。

所以問題是如何發送和接收字符串數組從jquery ajax到澤西寧靜的方法。

與問候,

ES

回答

2

服務器端,你必須改變字符串數組到List<String>,使其工作。

客戶端,你可以看到this來幫助你如何發送數據。我知道標題是寫PHP,但很好解釋。

相關問題