gpt4 book ai didi

tomcat - 使用 Struts 2 上传文件时出现 NullPointerException

转载 作者:行者123 更新时间:2023-11-28 23:51:22 27 4
gpt4 key购买 nike

这是 JSP

<s:form action="uploadfile.action" enctype="multipart/form-data" method="POST"  cssClass="bodyClass">
<tr>
<td>
Image:
</td>
<td style="width: 200px;">
<s:file id='image' name='uploadedfile' cssClass="formTextField" />
</td>
<td>
<input type="submit" value="Upload" class="button"/>
</td>
</tr>

</s:form>

这是 Struts.xml

 <package name="upload" namespace="/upload" extends="struts-default">
<action name="uploadfile" class="com.secureweb.web.upload.UploadAction">
<result name="uploadImage">/pages/fileupload/uploadimage.jsp</result>
</action>
</package>

Action 类

public class UploadAction extends ActionSupport {
private File uploadedfile;

public String execute() throws Exception {
try {
System.out.println(uploadedfile.getName());
} catch (Exception e) {
System.out.println(e);
}
return "uploadImage";
}

public File getUploadedfile() {
return uploadedfile;
}

public void setUploadedfile(File uploadedfile) {
this.uploadedfile = uploadedfile;
}
}

我项目中的库

 commons-beanutils-1.7.0.jar
commons-lang-2.3.jar
displaytag-1.2.jar
displaytag-export-poi-1.2.jar
displaytag-portlet-1.2.jar
log4j-1.2.14.jar
pljava.jar
postgresql-8.3-603.jdbc4.jar
postgresql-8.3-604.jdbc3.jar
cos.jar

Struts 2 2.1.8 Basic- commons-io-1.3.2.jar
commons-fileupload-1.2.1.jar
commons-logging-1.0.4.jar
freemarker-2.3.15.jar
ognl-2.7.3.jar
struts2-core-2.1.8.1.jar
xwork-core-2.1.6.jar
Then there is persistance.jar of EJB
And there is also Hibernate Library.

没有其他

结果为 NullPointerException,因为属性 uploadedfile 为空。文件上传工作不正常。为什么该变量总是值为 null。我的操作系统是 Ubuntu Linux 11.4,Web 服务器 - Apache Tomcat 6。IDE- Netbeans。

最佳答案

可能是因为 Struts 2 已经实现了完整的文件上传功能,而无需手动完成所有工作。

请参阅file upload docs并使用框架已经为您提供的内容。

这里有一些额外的问题:

  • 除非您已将默认主题设置为 "simple" ,表单生成的 HTML 将无效;默认主题在表格行/单元格内发出表单输入元素。
  • "action" <s:form> 的属性标记应该是操作的名称​​没有 .action后缀。

解决这些问题后,您的代码将按原样运行。您是否修改了默认拦截器堆栈?

关于tomcat - 使用 Struts 2 上传文件时出现 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8193709/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com