本人新手,在学struts2,在提交表单后总是抛出java.lang.InstantiationException异常。
jsp页面如下:<%@ page language="java" contentType="text/html; charset=gbk"
pageEncoding="gbk"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<s:form action="upload" enctype="multipart/form-data" theme="simple">
<table border="1" align="center">
<tr>
<td>
username:
</td>
<td>
<s:textfield name="username"></s:textfield>
</td>
</tr>
<tr>
<td>
passwors:
</td>
<td>
<s:password name="password"></s:password>
</td>
</tr>
<tr>
<td>
file:
</td>
<td>
<s:file name="file"></s:file>
</td>
</tr>
<tr>
<td>
<s:submit value="submit"></s:submit>
</td>
<td>
<s:reset value="reset"></s:reset>
</td>
</tr>
</table>
</s:form>
</body>
</html>
action代码如下:
package com.test.action;import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;import org.apache.struts2.ServletActionContext;import com.opensymphony.xwork2.ActionSupport;public abstract class UploadAction extends ActionSupport {
private String username;
private String password;
private File file;
private String fileFileName;
private String fileContentType;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public File getFile() {
return file;
}
public void setFile(File file) {
this.file = file;
}
public String getFileFileName() {
return fileFileName;
}
public void setFileFileName(String fileFileName) {
this.fileFileName = fileFileName;
}
public String getFileContentType() {
return fileContentType;
}
public void setFileContentType(String fileContentType) {
this.fileContentType = fileContentType;
}
public String execute()throws Exception
{
InputStream is = new FileInputStream(file);
String root = ServletActionContext.getRequest().getRealPath("/upload");
File destfile = new File(root,this.getFileFileName());
OutputStream os = new FileOutputStream(destfile);
byte[] buffer = new byte[400];
int length = 0;
while((length=is.read(buffer))>0)
{
os.write(buffer,0,length);
}
is.close();
os.close();
return SUCCESS;
}}struts.xml如下:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd"><struts>
<package name="struts2" extends="struts-default">
<action name="upload" class="com.test.action.UploadAction">
<result name="success">/uploadresult.jsp</result>
</action> </package></struts>
jsp页面如下:<%@ page language="java" contentType="text/html; charset=gbk"
pageEncoding="gbk"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<s:form action="upload" enctype="multipart/form-data" theme="simple">
<table border="1" align="center">
<tr>
<td>
username:
</td>
<td>
<s:textfield name="username"></s:textfield>
</td>
</tr>
<tr>
<td>
passwors:
</td>
<td>
<s:password name="password"></s:password>
</td>
</tr>
<tr>
<td>
file:
</td>
<td>
<s:file name="file"></s:file>
</td>
</tr>
<tr>
<td>
<s:submit value="submit"></s:submit>
</td>
<td>
<s:reset value="reset"></s:reset>
</td>
</tr>
</table>
</s:form>
</body>
</html>
action代码如下:
package com.test.action;import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;import org.apache.struts2.ServletActionContext;import com.opensymphony.xwork2.ActionSupport;public abstract class UploadAction extends ActionSupport {
private String username;
private String password;
private File file;
private String fileFileName;
private String fileContentType;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public File getFile() {
return file;
}
public void setFile(File file) {
this.file = file;
}
public String getFileFileName() {
return fileFileName;
}
public void setFileFileName(String fileFileName) {
this.fileFileName = fileFileName;
}
public String getFileContentType() {
return fileContentType;
}
public void setFileContentType(String fileContentType) {
this.fileContentType = fileContentType;
}
public String execute()throws Exception
{
InputStream is = new FileInputStream(file);
String root = ServletActionContext.getRequest().getRealPath("/upload");
File destfile = new File(root,this.getFileFileName());
OutputStream os = new FileOutputStream(destfile);
byte[] buffer = new byte[400];
int length = 0;
while((length=is.read(buffer))>0)
{
os.write(buffer,0,length);
}
is.close();
os.close();
return SUCCESS;
}}struts.xml如下:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd"><struts>
<package name="struts2" extends="struts-default">
<action name="upload" class="com.test.action.UploadAction">
<result name="success">/uploadresult.jsp</result>
</action> </package></struts>
解决方案 »
- s2sh问题(2) 【在线等】
- freemarker很弱的输出问题,在线等!!
- 大于30000 求java编写 人力资源管理系统框架界面及数据库 。
- 把web.mxl 放在 %TOMCAT_HOME%/wabapps/ROOT/mywebsize/WEB-INF 下,把连接池文件DBConnection.class放在 %TOMCAT_HOME%/wabapps/ROOT/myw
- 问个简单的问题:windows下如何查看哪个程序占用了哪个端口?
- javabean能不能直接写到页面上啊.
- 如何判断一个文件夹下哪个文件是新的,然后将这个文件的文件名写入数据库?
- JAVA中报表的问题!!!
- jsp 可否调用数据库存储过程,如何调用?
- 所属地区,js控件解决方案,求一个
- 新手求教,tomcat在xp下装好启动后,访问//localhost:8080所显示的页面很奇怪
- 急需解决方案关于ognl匹配输出
这个异常的意思
当应用试图使用 Class 类中的 newInstance 方法创建一个类的实例,而指定的类对象是一个接口或是抽象类而不能实现时,就抛该异常。 具体的异常信息贴出来看看
具体是哪一行抛出的