你的ids里面就有string了,debug一下

解决方案 »

  1.   

    你用的对象去接收Iterator<Integer> int类型的集合
      

  2.   

    package shi;import java.util.Iterator;
    import java.util.LinkedList;public class Test4 { public static void main(String[] args){
    LinkedList<Integer> ids = new LinkedList<Integer>();
    ids.add(1);
    ids.add(2);
    ids.add(3);
    Iterator<Integer> iterator=ids.iterator();
    while(iterator.hasNext()){
    //System.out.println(iterator.next());
    saywhat(iterator.next());
    }
    }

    public static void saywhat(int i){
    System.out.println(i);
    }
    }模拟下没有问题,把代码贴全,是不是描述的不准确啊
      

  3.   

    目测你的ids这个List不是List<Integer>而是List<String>,这么写吧
    Iterator<String> iter = ids.iterator();
    while (iter.hasNext()) {
        myFile = officialDocumentService.queryFileById(Integer.parseInt(iter.next()));
        deleteFile(myFile.getPath());
    }
      

  4.   


    @RequestMapping(value = CmsUrl.CMS_OFFICIAL_DOCUMENT_FILE_DELETE)
    public String deleteFile(@PathVariable LinkedList<Integer> ids, @PathVariable int folderId) {
    officialDocumentService.deleteFileById(ids);
    // TODO 删除本地文件
    MyFile myFile = new MyFile();
    Iterator<Integer> iter = ids.iterator();
    while (iter.hasNext()) {
    myFile = officialDocumentService.queryFileById(iter.next());
    // deleteFile(myFile.getPath());
    }
    return "redirect:" + "/cms/official/dept/folder/id/" + folderId + "/page/1";
    }
    传的就是Integer啊