关于Struts2用ModelDriven传值时表关联对象的问题

满院落梅香 2015-09-11 10:39:17
最近在用Struts2做一些练习,遇到一些问题,请教各位:
前台有一个添加新闻的网页addNews.jsp

<form action="news_add" method="POST">
新闻标题:<input type="text" name="title"><br>
新闻类型:<input type="text" name="newsType"><br>
新闻正文:<input type="text" name="info"><br>
<input type="submit" value="提交">
</form>



action类

public class NewsAction extends ActionSupport implements ModelDriven<News>
{
public String add() throws Exception {
System.out.println("进入添加新闻的方法!");


System.out.println("新闻正文:"+news.getInfo());
System.out.println("新闻正文:"+news.getTitle());
// System.out.println("新闻类型:"+news.getNewsType().getTitle());
return this.SUCCESS;
}
@Override
public String execute() throws Exception {
// TODO Auto-generated method stub
return super.execute();
}
private News news = new News();
@Override
public News getModel() {
// TODO Auto-generated method stub
return news;
}

}





JavaBean:
News:int id,String title,info NewsType newsType;
NewsType:int id,String title,boolean enable
省略setter和getter方法

现在的问题是,jsp一提交控制台报错
警告: Error setting expression 'newsType' with value '[Ljava.lang.String;@151c590'
ognl.MethodFailedException: Method "setNewsType" failed for object net.news.vo.News@c7195b [java.lang.NoSuchMethodException: net.news.vo.News.setNewsType([Ljava.lang.String;)]



度娘关于Struts2传值的问题,举例都是单表,没有表关联的例子,恳请各位赐教,谢谢
...全文
187 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
满院落梅香 2015-09-12
  • 打赏
  • 举报
回复
引用 1 楼 qq_25223941 的回复:
你这个问题很明显, 你的 newsType 是一个对象吧(NewsType), 然而你前台传过去的是一个string类型的值,也就是字符串 ,匹配不成功 所以报错。 结果方案: 1.修改newsType类型, 2.后台单独处理,获取newsType 字符串 然后在把他赋给对象NewsType
我现在在Action里加了一个私有的字符串用作接收新闻类型的标题,但是如果要赋值给news.getNewsType()里的话还是报错 500空指针错误 后来尝试发现只能在Action里new一个NewsType类型 请问还有其他方法可以解决吗? 谢谢
Cx_轩 2015-09-11
  • 打赏
  • 举报
回复
你这个问题很明显, 你的 newsType 是一个对象吧(NewsType), 然而你前台传过去的是一个string类型的值,也就是字符串 ,匹配不成功 所以报错。 结果方案: 1.修改newsType类型, 2.后台单独处理,获取newsType 字符串 然后在把他赋给对象NewsType

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧