public class NewsReleaseAction extends StrutsAction {
  private NewsManager newsManager; 
  public void setNewsManager(NewsManager newsManager) {
this.newsManager = newsManager;
}
public ActionForward newsRelease(ActionMapping mapping, ActionForm form,
    HttpServletRequest request, HttpServletResponse response) {
     LazyValidatorForm lazyForm = (LazyValidatorForm) form;
     News news = new News();
     bindEntity(lazyForm,news);
     String publisher = request.getSession().getAttribute(Constants.LOGINED_NAME).toString();
     news.setPublisher(publisher);
     if(news!=null){
     newsManager.save(news);//此处报错java.sql.SQLException: Parameter #6 has not been set.
     }else{
     System.out.println("null!!!");
     }
return mapping.findForward("adminNews");
    }
 public ActionForward unspecified(ActionMapping mapping, ActionForm form,
    HttpServletRequest request, HttpServletResponse response) {
return newsRelease(mapping, form, request, response);
}
}public class NewsManager extends HibernateEntityDao<News> {
}public class News implements java.io.Serializable {    private int id;
    private NewsType newsType;
    private String title;
    private String content;
    private Date newsTime;
    private String publisher;
    private Set<Accessory> accessories = new HashSet<Accessory>(0);    public News() {
    }
}

解决方案 »

  1.   

    org.hibernate.exception.SQLGrammarException: could not insert: [net.tv33.remoteedu.hibernate.pojo.News]
    大侠请出手相救!
      

  2.   

    java.sql.SQLException: Parameter #6 has not been set. 
    出现这个错误1.一般是参数设置不对, 注意参数的类型2.注意你的Sql语句是否写正确 ,比如value()里面的参数是否加单引号
     
      

  3.   

    javax.servlet.ServletException: org.springframework.dao.InvalidDataAccessResourceUsageException: could not insert: [net.tv33.remoteedu.hibernate.pojo.News]; nested exception is org.hibernate.exception.SQLGrammarException: could not insert: [net.tv33.remoteedu.hibernate.pojo.News]
    org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:523)
    org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
    org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
    org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
    org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
    org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
    root cause org.springframework.dao.InvalidDataAccessResourceUsageException: could not insert: [net.tv33.remoteedu.hibernate.pojo.News]; nested exception is org.hibernate.exception.SQLGrammarException: could not insert: [net.tv33.remoteedu.hibernate.pojo.News]
    org.springframework.orm.hibernate3.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:613)
    org.springframework.orm.hibernate3.HibernateAccessor.convertHibernateAccessException(HibernateAccessor.java:412)
    org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:377)
    org.springframework.orm.hibernate3.HibernateTemplate.saveOrUpdate(HibernateTemplate.java:686)
    org.springside.core.dao.HibernateGenericDao.save(HibernateGenericDao.java:71)
    net.tv33.remoteedu.admin.web.NewsReleaseAction.newsRelease(NewsReleaseAction.java:45)
    net.tv33.remoteedu.admin.web.NewsReleaseAction.unspecified(NewsReleaseAction.java:55)
    org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:256)
    org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:194)
    org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
    org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
    org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
    org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
    org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
    root cause org.hibernate.exception.SQLGrammarException: could not insert: [net.tv33.remoteedu.hibernate.pojo.News]
    org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:67)
    org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
    org.hibernate.id.insert.AbstractReturningDelegate.performInsert(AbstractReturningDelegate.java:40)
    org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2158)
    org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2638)
    org.hibernate.action.EntityIdentityInsertAction.execute(EntityIdentityInsertAction.java:48)
    org.hibernate.engine.ActionQueue.execute(ActionQueue.java:250)
    org.hibernate.event.def.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:298)
    org.hibernate.event.def.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:181)
    org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:107)
    org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:187)
    org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:172)
    org.hibernate.event.def.DefaultSaveOrUpdateEventListener.performSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:94)
    org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:70)
    org.hibernate.impl.SessionImpl.fireSaveOrUpdate(SessionImpl.java:507)
    org.hibernate.impl.SessionImpl.saveOrUpdate(SessionImpl.java:499)
    org.hibernate.impl.SessionImpl.saveOrUpdate(SessionImpl.java:495)
    org.springframework.orm.hibernate3.HibernateTemplate$16.doInHibernate(HibernateTemplate.java:689)
    org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:372)
    org.springframework.orm.hibernate3.HibernateTemplate.saveOrUpdate(HibernateTemplate.java:686)
    org.springside.core.dao.HibernateGenericDao.save(HibernateGenericDao.java:71)
    net.tv33.remoteedu.admin.web.NewsReleaseAction.newsRelease(NewsReleaseAction.java:45)
    net.tv33.remoteedu.admin.web.NewsReleaseAction.unspecified(NewsReleaseAction.java:55)
    org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:256)
    org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:194)
    org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
    org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
    org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
    org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
    org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
      

  4.   

    root cause java.sql.SQLException: Parameter #6 has not been set.
    net.sourceforge.jtds.jdbc.ConnectionJDBC2.prepareSQL(ConnectionJDBC2.java:602)
    net.sourceforge.jtds.jdbc.JtdsPreparedStatement.executeUpdate(JtdsPreparedStatement.java:420)
    org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:94)
    org.hibernate.id.IdentityGenerator$GetGeneratedKeysDelegate.executeAndExtract(IdentityGenerator.java:73)
    org.hibernate.id.insert.AbstractReturningDelegate.performInsert(AbstractReturningDelegate.java:33)
    org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2158)
    org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2638)
    org.hibernate.action.EntityIdentityInsertAction.execute(EntityIdentityInsertAction.java:48)
    org.hibernate.engine.ActionQueue.execute(ActionQueue.java:250)
    org.hibernate.event.def.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:298)
    org.hibernate.event.def.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:181)
    org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:107)
    org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:187)
    org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:172)
    org.hibernate.event.def.DefaultSaveOrUpdateEventListener.performSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:94)
    org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:70)
    org.hibernate.impl.SessionImpl.fireSaveOrUpdate(SessionImpl.java:507)
    org.hibernate.impl.SessionImpl.saveOrUpdate(SessionImpl.java:499)
    org.hibernate.impl.SessionImpl.saveOrUpdate(SessionImpl.java:495)
    org.springframework.orm.hibernate3.HibernateTemplate$16.doInHibernate(HibernateTemplate.java:689)
    org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:372)
    org.springframework.orm.hibernate3.HibernateTemplate.saveOrUpdate(HibernateTemplate.java:686)
    org.springside.core.dao.HibernateGenericDao.save(HibernateGenericDao.java:71)
    net.tv33.remoteedu.admin.web.NewsReleaseAction.newsRelease(NewsReleaseAction.java:45)
    net.tv33.remoteedu.admin.web.NewsReleaseAction.unspecified(NewsReleaseAction.java:55)
    org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:256)
    org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:194)
    org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
    org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
    org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
    org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
    org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
      

  5.   

    源代码:
    public class NewsReleaseAction extends StrutsAction { 
      private NewsManager newsManager; 
      public void setNewsManager(NewsManager newsManager) { 
    this.newsManager = newsManager; 

    public ActionForward newsRelease(ActionMapping mapping, ActionForm form, 
        HttpServletRequest request, HttpServletResponse response) { 
        LazyValidatorForm lazyForm = (LazyValidatorForm) form; 
        News news = new News(); 
        bindEntity(lazyForm,news); 
        String publisher = request.getSession().getAttribute(Constants.LOGINED_NAME).toString(); 
        news.setPublisher(publisher); 
        if(news!=null){ 
        newsManager.save(news);//此处报错java.sql.SQLException: Parameter #6 has not been set. 
        }else{ 
        System.out.println("null!!!"); 
        } 
    return mapping.findForward("adminNews"); 
        } 
    public ActionForward unspecified(ActionMapping mapping, ActionForm form, 
        HttpServletRequest request, HttpServletResponse response) { 
    return newsRelease(mapping, form, request, response); 

    } DAO类public class NewsManager extends HibernateEntityDao <News> { 
    } pojo类
    public class News implements java.io.Serializable {     private int id; 
        private NewsType newsType; 
        private String title; 
        private String content; 
        private Date newsTime; 
        private String publisher; 
        private Set <Accessory> accessories = new HashSet <Accessory>(0);     public News() { 
        } 
    }