我想申請@GrailsCompileStatic
到控制器,具有從請求檢索MultipartFiles一個動作:力@GrailsCompileStatic檢查請求的AbstractMultipartHttpServletRequest
request.getFile('foo')
但得到如下:
[靜態類型檢查] - 找不到匹配方法 javax.servlet.http.HttpServletRequest#getFile(java.lang.String)
有沒有任何機會強制編譯器驗證請求對AbstractMultipartHttpServletRequest
(具有getFile(java.lang.String)方法)而不是HttpServletRequest
?
UPD 此解決方案:
MultipartFile multipartFile = ((StandardMultipartHttpServletRequest) request).getFile('myFile')
,但有一些奇怪的行爲試圖對它進行測試時:
org.codehaus.groovy.runtime.typehandling.GroovyCastException:不能 cast object '[email protected]' with class'org.grails.plugins.testing.GrailsMockHttpServletRequest' 類 'org.springframework.web.multipart.support.StandardMultipartHttpServletRequest'