我尝试构建一个包含一个步骤的grails webflow,其中包含一个文件上传字段。找不到一个明确的例子。我该怎么办?
表格如下:
<g:form method="POST" action="upload" enctype="multipart/form-data">
<input type="file" name="myFile" />
<input type="submit" value="Upload! " />
</g:form>
流程如下:
def rgdpsRequestFlow = {
chargeCheck{
on("upload"){
println "Hello file upload"
}.to("uploadSuccess")
}
uploadSuccess{
}
}
当我提交表格时,我
HTTP Status 404 - /webflowTest/mortgage/upload
答案 0 :(得分:3)
有点不清楚你正在努力的那个部分。如果您需要有关文件上传的帮助,可以尝试使用Grails File Uploader plugin,或者查看此step-by-step tutorial或使用James Kleeh指出的uploadForm标记。
即,在gsp中你可以添加:
<g:uploadForm controller='yourControllerName' action='save'>
<input type='file' name='file'/>
<input type='submit'/>
</g:uploadForm>
然后在控制器中处理它:
def save = {
def file = request.getFile('file').inputStream.text
file.transferTo(new File('someLocation/filename'))
}
答案 1 :(得分:1)
问题是我使用了 g:form action 属性。 使用webflow使用文件上传的正确方法是使用 g:submitButton
以下是适用于我的网络流的表单代码:
<g:form method="POST" enctype="multipart/form-data">
<input type="file" name="myFile" />
<g:submitButton class="save" name="upload" value="Upload!"/>
</g:form>