Grails-1.0.5-SNAPSHOT パラメータ付きのアクションとenctype="multipart/form-data"をPOSTしたときのバグ
詳細 http://jira.codehaus.org/browse/GRAILS-3870
enctype="multipart/form-data"のフォームを投げる先のアクションにパラメータが有った場合 Ex. /some/act?a=1 エラーがでてしまうバグ。
1.1のソースではなおってるのですが・・・1.0.5-SNAPSHOTではなおってない!まあ、修正簡単だし、近々更新されると思いますが、一応パッチ置いておきます。
Index: /works/sources/grails/src/web/org/codehaus/groovy/grails/web/mapping/DefaultUrlMappingInfo.java =================================================================== --- /works/sources/grails/src/web/org/codehaus/groovy/grails/web/mapping/DefaultUrlMappingInfo.java (revision 8584) +++ /works/sources/grails/src/web/org/codehaus/groovy/grails/web/mapping/DefaultUrlMappingInfo.java (working copy) @@ -204,13 +204,7 @@ } private String checkDispatchAction(HttpServletRequest request, String actionName) { - Enumeration paramNames = request.getParameterNames(); - if (!paramNames.hasMoreElements()) { - //TODO Move this multipart code out of here if possible and only do once per request - paramNames = tryMultipartParams(request, paramNames); - }else{ - MultipartRequestHolder.setMultipartRequest(null); - } + Enumeration paramNames = tryMultipartParams(request, request.getParameterNames()); for (; paramNames.hasMoreElements();) { String name = (String) paramNames.nextElement();