jsp页面部分代码:
  <form action="PinlunAction.action?article=${a.id}" method="post">
  评论:<input type="hidden" id="leirong" name="plcontent" /><br/>
  <iframe src="HtmlEditor/editor.html?id=leirong" frameborder="0" scrolling="no" width="600" height="300"></iframe><br/>
  <input type="submit" value="提交">&nbsp;<input type="reset" value="重置"/>
  </form>struts.xml配置文件
  <!-- 添加评论 -->
<action name="PinlunAction" class="pinlunAction" method="addPinLun">
<result name="success">/ceshi.jsp</result>
<result name="input">/error.jsp</result>
</action>applicationContet.xml配置文件
  <bean id="pinlunAction" class="com.action.PinlunAction">
<property name="ipinlunbiz" ref="PinlunBiz"></property>
</bean>PinlunAction.java文件
  package com.action;  import org.apache.struts2.ServletActionContext; import com.biz.IPinlunBiz;
 import com.entity.Article;
 import com.entity.User;
 import com.opensymphony.xwork2.ActionSupport; public class PinlunAction extends ActionSupport {
private IPinlunBiz ipinlunbiz;
public void setIpinlunbiz(IPinlunBiz ipinlunbiz) {
this.ipinlunbiz = ipinlunbiz;
}
private String plcontent;
private Article article;
public Article getArticle() {
return article;
}
public void setArticle(Article article) {
this.article = article;
}
public String getPlcontent() {
return plcontent;
}
public void setPlcontent(String plcontent) {
this.plcontent = plcontent;
}  //添加评论
public String addPinLun(){System.out.println(article+""+plcontent);System.out.println("方法没有进 来");
User user = (User)ServletActionContext.getRequest().getSession().getAttribute("user");
ipinlunbiz.addpinlun(article, user, plcontent);
return "success";
}
 }PinlunBiz.java文件  package com.biz;import java.util.List;import com.dao.IPinlunDAO;
import com.entity.Article;
import com.entity.Pinlun;
import com.entity.User;public class PinlunBiz implements IPinlunBiz {
private IPinlunDAO ipinlundao;
public void setIpinlundao(IPinlunDAO ipinlundao) {
this.ipinlundao = ipinlundao;
}
//添加评论
/* (non-Javadoc)
* @see com.biz.IPinlunBiz#addpinlun(com.entity.Article, com.entity.User, java.lang.String)
*/
public void addpinlun(Article article,User user,String plcontent)
{ System.out.println(article);System.out.println("方法没有进来");
Pinlun p = new Pinlun();
p.setArticle(article);
p.setUser(user);
p.setPlcontent(plcontent);
ipinlundao.save(p);
}
//根据articleid查询所有评论
@SuppressWarnings("unchecked")
public List findByArticleid(int id){
return ipinlundao.findByarticleid(id);
}
}结果老是返回的是input的error.jsp界面,这到底是除了什么错误呢,我新手,希望有大侠帮忙....

解决方案 »

  1.   

    addPinLun方法肯定有错误。。private IPinlunBiz ipinlunbiz;
    public void setIpinlunbiz(IPinlunBiz ipinlunbiz) {
    this.ipinlunbiz = ipinlunbiz;
    }怎么没有get方法
      

  2.   

    确实看不出来你的问题 
    你发上来的代码很正确
    我估计这个就是的思路吧
    但是可能问题出现在其他地方也不一定
    给你几个解决问题的方法吧
    你首先看看提交过来的action进到了那个方法里面了 在这个方法里面打印出一句话看是否正确如果这个正确了
    那么在看看你的service层返回给action的结果是否是正确的结果
    然后返回给jsp 看你写了配置问题里面根本没有写到input怎么会进input呢
    你把你的写的那个struts.xml里面的那个input先删除掉在调式看看~~!!
    我只能帮你这么多了 看你自己调式下~~!
      

  3.   

    Pinlun p = new Pinlun();
    p.setArticle(article);
    p.setUser(user);
    p.setPlcontent(plcontent);
    ipinlundao.save(p);大概是你保存时出异常了,article 是不是null,user 是不是null?
      

  4.   

    最重要的是PinlunAction.java文件的addPinLun()方法都进不去,这是怎么一回事啊,我在打断点的时候,看见属性plcontent有值,怎么就是不进这个方法里面去呢?
      

  5.   


    很简单,如果方法都进不去说明传接值时就已经异常了,你页面提交的input的名字和后台对不上,把所有无关的input的name清空,再提交,如果进去了就说明页面和后台name有问题。
      

  6.   

    <form action="<%=basePath%>PinlunAction.action?article=${a.id}" method="post">指定全路径