为什么自定义java标记上传的文件返回空值

dldeef67  于 2021-07-13  发布在  Java
关注(0)|答案(0)|浏览(182)

我正试图写一个java自定义标记上传文件。但上传文件时,它返回空作为输出。任何帮助可以感谢
标记处理程序类:

public class SavePostTag extends SimpleTagSupport {
    boolean isMultiPart;
    public void doTag() throws JspException, IOException {
        PageContext ctx = (PageContext)getJspContext();
        HttpServletRequest request = (HttpServletRequest)ctx.getRequest();
        try {
            final Part tmpFile = request.getPart("file");
            String fileName = request.getHeader("content-disposition");
            ir.mahdiii.entity.File file = new ir.mahdiii.entity.File(Constant.repositoryPath + fileName, UrlGenerator.getInstance().generateRndUrl());
            DbManager.getInstance().saveFileInfo(file);
            FileOutputStream fileOutputStream = new FileOutputStream(file);
            int tmp = 0;
            FileInputStream fileInputstream = (FileInputStream)tmpFile.getInputStream();
            while ((tmp = fileInputstream.read(new byte[1024])) != -1) {
                fileOutputStream.write(tmp);
            }
            fileOutputStream.close();
        } catch (ServletException | ClassNotFoundException | SQLException | NamingException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        getJspContext().getOut().write("SUCCESS"); 

    }

jsp文件:

<c:if test="${param.status eq 'success'}">
    <j:savepost/>
</c:if>

<div class="row">
    <form action="/web/?page=admin&status=success" method="post" enctype="multipart/form-data">
        <input type="file" name="file">
        <input type="submit">
    </form>
</div>

但在这条线上 final Part**tmpFile = request.getPart("file"); 它回来了 null . 你知道吗?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题