实体类(省略get/set方法)Sport.java
private int id;
private String sportName;
private byte[] image;
private Date createTime;
private String description;业务逻辑方法:SportManagerImpl.java
public void add(Sport sport)
{
this.getHibernateTemplate().save(sport); }Struts Action: SportAction.java
public String sport_addsuccess()
{
boolean b = sm.sportExist(saf.getSportName());//验证
if (b == true)
{
return "sport_addfail";
}
Sport s = new Sport();
s.setSportName(saf.getSportName()); //SportActionForm saf = new SportActionForm();
s.setCreateTime(new Date());
s.setDescription(saf.getDescription());
s.setImage(saf.getImage());
this.sm.add(s); return "sport_addsuccess";
}
jsp页面:(请看上传图片那列文件输入框,和 Form 的 enctype属性有没有出错?)
<form action="sport_addsuccess" method="post" enctype="application/x-www-form-urlencoded" >
<table width="778" border="0" cellPadding="0" cellSpacing="1" bgcolor="#6386d6">
<!-- 列表标题栏 -->
<tr bgcolor="#EFF3F7" class="TableBody1">
<td width="40%" height="37" align="center"><B>名称:<input type="text" name="sportName"/></B></td>
</tr>
<tr>
<td width="60%" height="37" align="center"><B>描述:<input type="text" name="description"/></B></td>
</tr>
<tr>
<td width="30%" height="37" align="center"><b>创建时间:<input type="text" name="createTime" value="<%=new Date() %>" disabled="disabled"/></b></td>
</tr>
<tr bgcolor="#EFF3F7" class="TableBody1" onmouseover="this.bgColor = '#DEE7FF';" onmouseout="this.bgColor='#EFF3F7';">
<td width="60%" height="37" align="center" colspan="100%"><b>上传图片:<input type="file" name="image" /></b></td>
</tr>
<tr>
<td width="40%" height="37" align="center"><b>
<input type="submit" name="submit" value="添加" width="25%"/>
<input type="reset" name="reset" value="重置" width="25%"/></b>
</td>
</tr>
</table>
</form>
最后提交的时候就出现下面的异常了:原因我也知道,就是解决不了,特此求救高手!
ognl.MethodFailedException: Method "setImage" failed for object com.lgp.cms.form.SportActionForm@ed7d11 [java.lang.NoSuchMethodException: setImage([Ljava.lang.String;)]
...........
...........
java.lang.NoSuchMethodException: setImage([Ljava.lang.String;)
...........
expr: image val: [Ljava.lang.String;@4ad14c context: ognl.OgnlContext@aa4306b0 root:[com.lgp.cms.form.SportActionForm@ed7d11, com.lgp.cms.action.SportAction@1f2e41d, com.opensymphony.xwork2.DefaultTextProvider@15e4dbe] value: [Ljava.lang.String;@4ad14c
[Tomcat]2011-07-08 17:55:56,515["http-apr-8080"-exec-5]Could not find action or result
No result defined for action com.lgp.cms.action.SportAction and result input
...........
(我知道是文件存入数据库时候错误,方法不对,但是怎么修正我 的业务逻辑方法呢?)在线等,谢谢!
private int id;
private String sportName;
private byte[] image;
private Date createTime;
private String description;业务逻辑方法:SportManagerImpl.java
public void add(Sport sport)
{
this.getHibernateTemplate().save(sport); }Struts Action: SportAction.java
public String sport_addsuccess()
{
boolean b = sm.sportExist(saf.getSportName());//验证
if (b == true)
{
return "sport_addfail";
}
Sport s = new Sport();
s.setSportName(saf.getSportName()); //SportActionForm saf = new SportActionForm();
s.setCreateTime(new Date());
s.setDescription(saf.getDescription());
s.setImage(saf.getImage());
this.sm.add(s); return "sport_addsuccess";
}
jsp页面:(请看上传图片那列文件输入框,和 Form 的 enctype属性有没有出错?)
<form action="sport_addsuccess" method="post" enctype="application/x-www-form-urlencoded" >
<table width="778" border="0" cellPadding="0" cellSpacing="1" bgcolor="#6386d6">
<!-- 列表标题栏 -->
<tr bgcolor="#EFF3F7" class="TableBody1">
<td width="40%" height="37" align="center"><B>名称:<input type="text" name="sportName"/></B></td>
</tr>
<tr>
<td width="60%" height="37" align="center"><B>描述:<input type="text" name="description"/></B></td>
</tr>
<tr>
<td width="30%" height="37" align="center"><b>创建时间:<input type="text" name="createTime" value="<%=new Date() %>" disabled="disabled"/></b></td>
</tr>
<tr bgcolor="#EFF3F7" class="TableBody1" onmouseover="this.bgColor = '#DEE7FF';" onmouseout="this.bgColor='#EFF3F7';">
<td width="60%" height="37" align="center" colspan="100%"><b>上传图片:<input type="file" name="image" /></b></td>
</tr>
<tr>
<td width="40%" height="37" align="center"><b>
<input type="submit" name="submit" value="添加" width="25%"/>
<input type="reset" name="reset" value="重置" width="25%"/></b>
</td>
</tr>
</table>
</form>
最后提交的时候就出现下面的异常了:原因我也知道,就是解决不了,特此求救高手!
ognl.MethodFailedException: Method "setImage" failed for object com.lgp.cms.form.SportActionForm@ed7d11 [java.lang.NoSuchMethodException: setImage([Ljava.lang.String;)]
...........
...........
java.lang.NoSuchMethodException: setImage([Ljava.lang.String;)
...........
expr: image val: [Ljava.lang.String;@4ad14c context: ognl.OgnlContext@aa4306b0 root:[com.lgp.cms.form.SportActionForm@ed7d11, com.lgp.cms.action.SportAction@1f2e41d, com.opensymphony.xwork2.DefaultTextProvider@15e4dbe] value: [Ljava.lang.String;@4ad14c
[Tomcat]2011-07-08 17:55:56,515["http-apr-8080"-exec-5]Could not find action or result
No result defined for action com.lgp.cms.action.SportAction and result input
...........
(我知道是文件存入数据库时候错误,方法不对,但是怎么修正我 的业务逻辑方法呢?)在线等,谢谢!
解决方案 »
- JS获取跳转页面Url来源,总是没有得到相要的结果,小弟在线等……多谢了
- 对-基于web的信息抽取的一些疑惑
- JBPM 的signal和end的区别是什么
- 计数器的详细设计说明怎么写?
- isTokenValid 重复提交问题
- 一个连接池连接多个数据库
- 关于lucene查询使用的问题(急待解答)--高分悬赏!
- access转移到oracle上的问题,请帮忙!谢谢 急
- session && 弹出页面
- <jsp:include page="SystemLeft.jsp?TypeId=<%= itTypeId.toString() %>" flush="true" />
- 关于图书馆在线阅览开发问题
- 问个问题:网站后台开发具体的工作是什么
saf.getImage()这个方法返回的是什么?你为什么要把图片存在数据库中?
到时候取的时候你就很麻烦了,又要重新写入流...
上传图片的做法都是把图片保存在磁盘上
像这样的话,你们一般都是怎么干的?能否给点代码?谢谢了...
java.lang.NoSuchMethodException: setImage([Ljava.lang.String;)
貌似是沒有setImage([Ljava.lang.String;)方法啊