Принудительный запрос проверки @GrailsCompileStatic как AbstractMultipartHttpServletRequest
Я пытаюсь подать заявку @GrailsCompileStatic
контроллеру, у которого есть действие, которое извлекает MultipartFiles из запроса:
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. multipart.support.StandardMultipartHttpServletRequest"
1 ответ
Решение
а также
оба реализуют интерфейс
так что просто используйте это
import org.springframework.web.multipart.MultipartHttpServletRequest
...
MultipartFile multipartFile = ((MultipartHttpServletRequest) request).getFile('myFile')