###<2008-7-28 上午08时59分24秒 CST> <Error> <HTTP> <jnaicnetworkser> <AdminServer> <[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1217206764969> <BEA-101017> <[weblogic.servlet.internal.WebAppServletContext@937aaf - appName: 'gsj', name: 'gsj.war', context-path: ''] Root cause of ServletException.
org.hibernate.AssertionFailure: null id in web.gsj.model.Picinfo entry (don't flush the Session after an exception occurs)
at org.hibernate.event.def.DefaultFlushEntityEventListener.checkId(DefaultFlushEntityEventListener.java:48)
at org.hibernate.event.def.DefaultFlushEntityEventListener.getValues(DefaultFlushEntityEventListener.java:150)
at org.hibernate.event.def.DefaultFlushEntityEventListener.onFlushEntity(DefaultFlushEntityEventListener.java:106)
at org.hibernate.event.def.AbstractFlushingEventListener.flushEntities(AbstractFlushingEventListener.java:195)
at org.hibernate.event.def.AbstractFlushingEventListener.flushEverythingToExecutions(AbstractFlushingEventListener.java:76)
at org.hibernate.event.def.DefaultAutoFlushEventListener.onAutoFlush(DefaultAutoFlushEventListener.java:35)
at org.hibernate.impl.SessionImpl.autoFlushIfRequired(SessionImpl.java:954)
at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1099)
at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
at web.gsj.action.FirstLoadAction.redirectNet(FirstLoadAction.java:56)
at jrockit.reflect.VirtualNativeMethodInvoker.invoke(Ljava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source)
at java.lang.reflect.Method.invoke(Ljava.lang.Object;[Ljava.lang.Object;I)Ljava.lang.Object;(Unknown Source)
at com.opensymphony.xwork.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:358)
at com.opensymphony.xwork.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:218)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:192)
at com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:175)
at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.xwork.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:116)
at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.webwork.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:174)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
>
####<2008-7-28 上午09时00分20秒 CST> <Info> <Diagnostics> <jnaicnetworkser> <AdminServer> <[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1217206820938> <BEA-320140> <Scheduling data retirement tasks as per configuration.> ####<2008-7-28 上午09时00分20秒
public String execute() throws Exception {//这是插入新闻的图片
FileOperate fileOperate = new FileOperate();
d=ServletActionContext.getServletContext();
String path=d.getRealPath("/");//取得根目录
String lspath="newspic/";
path="/newspic/"; //path+="newspic/";
path = fileOperate.createFolder(path);//String path = fileOperate.createFolder("UploadFile/");//创建目录"D:/uploadFile/" UploadFile/
ActionContext context = ActionContext.getContext();
Map map = context.getParameters();
context.getValueStack();
if(file!=null){
//path = path.concat(fileFileName);//为了避免null
java.util.Date now=new java.util.Date();
java.text.SimpleDateFormat dformat=new java.text.SimpleDateFormat("yyyyMMddHHmmssS");
String datetime=dformat.format(now);
path=path.concat(datetime);lspath=lspath.concat(datetime).concat(".jpg");
String jpghz=".jpg";
path=path.concat(jpghz);
//path = path.concat(fileFileName);
File target = new File(path);
if(target!=null){
if(target.exists()){
target.delete();
}
}
file.renameTo(target);//只有在继承了action后,file才不为null;XXFileName自动传过来 renameTo(实际路径+文件名) System.out.println("*&^%$="+target.getName()+"____"+target.getPath()+"_____"+target.getAbsolutePath());
//上面的是上传文件,下面的是存进数据库 insert pic
//try{
Session session=HibernateSessionFactory.getSession();
session.flush();
picinfo.setNewsid(regsdtid);//System.out.println("++id="+regsdtid+"="+regsdttitle+"="+regsdtfromer);
picinfo.setTitles(regsdttitle);
picinfo.setUsers(regsdtfromer);
//picinfo.setIstop(regsdtistop);
picinfo.setClassid(0);
if(picdes!=null)picdes=picdes.trim();else picdes="";
picinfo.setDescrip(picdes);
picinfo.setUploaddate(uploadtime);
picinfo.setIsimg(1);
//FileInputStream imgis=new FileInputStream(target);
//Blob img=Hibernate.createBlob(imgis);
//picinfo.setPic(img);
System.out.println(uploadtime+"--"+regsdttitle+"--"+lspath+picdes+regsdtfromer+regsdtid);
//String abpathpic=target.getAbsolutePath();
//int lsi=abpathpic.indexOf("newspic");
//abpathpic=abpathpic.substring(lsi);
picinfo.setUrllink(lspath);//picinfo.setUrllink(target.getAbsolutePath());
Transaction tt2=session.beginTransaction();System.out.println("99999");
session.flush();
session.save(picinfo);session.flush();
tt2.commit();System.out.println("000");
HibernateSessionFactory.closeSession();//session.close();
tt2=null;
session=null;
//}catch(Exception ex){System.out.println("图片新闻保存时出错!save-----+++"+ex); }
}
return "entermange";
}<hibernate-mapping>
<class name="web.gsj.model.Picinfo" table="picinfo" schema="dbo" catalog="gsjwebdb">
<id name="id" type="java.lang.Long">
<column name="ID" />
<generator class="native"></generator>
</id>
<property name="uploaddate" type="java.util.Date">
<column name="uploaddate" length="23" />
</property>
<property name="titles" type="java.lang.String">
<column name="titles" length="300" />
</property>
<property name="urllink" type="java.lang.String">
<column name="urllink" length="200" />
</property>
<property name="descrip" type="java.lang.String">
<column name="descrip" length="500" />
</property>
<property name="users" type="java.lang.String">
<column name="users" length="20" />
</property>
<property name="newsid" type="java.lang.Long">
<column name="newsid" />
</property>
<property name="isimg" type="java.lang.Integer">
<column name="isimg" />
</property>
<property name="classid" type="java.lang.Integer">
<column name="classid" />
</property>
</class>
</hibernate-mapping>
org.hibernate.AssertionFailure: null id in web.gsj.model.Picinfo entry (don't flush the Session after an exception occurs)
at org.hibernate.event.def.DefaultFlushEntityEventListener.checkId(DefaultFlushEntityEventListener.java:48)
at org.hibernate.event.def.DefaultFlushEntityEventListener.getValues(DefaultFlushEntityEventListener.java:150)
at org.hibernate.event.def.DefaultFlushEntityEventListener.onFlushEntity(DefaultFlushEntityEventListener.java:106)
at org.hibernate.event.def.AbstractFlushingEventListener.flushEntities(AbstractFlushingEventListener.java:195)
at org.hibernate.event.def.AbstractFlushingEventListener.flushEverythingToExecutions(AbstractFlushingEventListener.java:76)
at org.hibernate.event.def.DefaultAutoFlushEventListener.onAutoFlush(DefaultAutoFlushEventListener.java:35)
at org.hibernate.impl.SessionImpl.autoFlushIfRequired(SessionImpl.java:954)
at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1099)
at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
at web.gsj.action.FirstLoadAction.redirectNet(FirstLoadAction.java:56)
at jrockit.reflect.VirtualNativeMethodInvoker.invoke(Ljava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source)
at java.lang.reflect.Method.invoke(Ljava.lang.Object;[Ljava.lang.Object;I)Ljava.lang.Object;(Unknown Source)
at com.opensymphony.xwork.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:358)
at com.opensymphony.xwork.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:218)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:192)
at com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:175)
at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.xwork.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:116)
at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.webwork.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:174)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
>
####<2008-7-28 上午09时00分20秒 CST> <Info> <Diagnostics> <jnaicnetworkser> <AdminServer> <[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1217206820938> <BEA-320140> <Scheduling data retirement tasks as per configuration.> ####<2008-7-28 上午09时00分20秒
public String execute() throws Exception {//这是插入新闻的图片
FileOperate fileOperate = new FileOperate();
d=ServletActionContext.getServletContext();
String path=d.getRealPath("/");//取得根目录
String lspath="newspic/";
path="/newspic/"; //path+="newspic/";
path = fileOperate.createFolder(path);//String path = fileOperate.createFolder("UploadFile/");//创建目录"D:/uploadFile/" UploadFile/
ActionContext context = ActionContext.getContext();
Map map = context.getParameters();
context.getValueStack();
if(file!=null){
//path = path.concat(fileFileName);//为了避免null
java.util.Date now=new java.util.Date();
java.text.SimpleDateFormat dformat=new java.text.SimpleDateFormat("yyyyMMddHHmmssS");
String datetime=dformat.format(now);
path=path.concat(datetime);lspath=lspath.concat(datetime).concat(".jpg");
String jpghz=".jpg";
path=path.concat(jpghz);
//path = path.concat(fileFileName);
File target = new File(path);
if(target!=null){
if(target.exists()){
target.delete();
}
}
file.renameTo(target);//只有在继承了action后,file才不为null;XXFileName自动传过来 renameTo(实际路径+文件名) System.out.println("*&^%$="+target.getName()+"____"+target.getPath()+"_____"+target.getAbsolutePath());
//上面的是上传文件,下面的是存进数据库 insert pic
//try{
Session session=HibernateSessionFactory.getSession();
session.flush();
picinfo.setNewsid(regsdtid);//System.out.println("++id="+regsdtid+"="+regsdttitle+"="+regsdtfromer);
picinfo.setTitles(regsdttitle);
picinfo.setUsers(regsdtfromer);
//picinfo.setIstop(regsdtistop);
picinfo.setClassid(0);
if(picdes!=null)picdes=picdes.trim();else picdes="";
picinfo.setDescrip(picdes);
picinfo.setUploaddate(uploadtime);
picinfo.setIsimg(1);
//FileInputStream imgis=new FileInputStream(target);
//Blob img=Hibernate.createBlob(imgis);
//picinfo.setPic(img);
System.out.println(uploadtime+"--"+regsdttitle+"--"+lspath+picdes+regsdtfromer+regsdtid);
//String abpathpic=target.getAbsolutePath();
//int lsi=abpathpic.indexOf("newspic");
//abpathpic=abpathpic.substring(lsi);
picinfo.setUrllink(lspath);//picinfo.setUrllink(target.getAbsolutePath());
Transaction tt2=session.beginTransaction();System.out.println("99999");
session.flush();
session.save(picinfo);session.flush();
tt2.commit();System.out.println("000");
HibernateSessionFactory.closeSession();//session.close();
tt2=null;
session=null;
//}catch(Exception ex){System.out.println("图片新闻保存时出错!save-----+++"+ex); }
}
return "entermange";
}<hibernate-mapping>
<class name="web.gsj.model.Picinfo" table="picinfo" schema="dbo" catalog="gsjwebdb">
<id name="id" type="java.lang.Long">
<column name="ID" />
<generator class="native"></generator>
</id>
<property name="uploaddate" type="java.util.Date">
<column name="uploaddate" length="23" />
</property>
<property name="titles" type="java.lang.String">
<column name="titles" length="300" />
</property>
<property name="urllink" type="java.lang.String">
<column name="urllink" length="200" />
</property>
<property name="descrip" type="java.lang.String">
<column name="descrip" length="500" />
</property>
<property name="users" type="java.lang.String">
<column name="users" length="20" />
</property>
<property name="newsid" type="java.lang.Long">
<column name="newsid" />
</property>
<property name="isimg" type="java.lang.Integer">
<column name="isimg" />
</property>
<property name="classid" type="java.lang.Integer">
<column name="classid" />
</property>
</class>
</hibernate-mapping>
楼主【lzflkj】截止到2008-07-30 15:25:04的历史汇总数据(不包括此帖):
发帖的总数量:8 发帖的总分数:426 每贴平均分数:53
回帖的总数量:40 得分贴总数量:11 回帖的得分率:27%
结贴的总数量:7 结贴的总分数:338
无满意结贴数:0 无满意结贴分:0
未结的帖子数:1 未结的总分数:88
结贴的百分比:87.50 % 结分的百分比:79.34 %
无满意结贴率:0.00 % 无满意结分率:0.00 %
楼主加油
取消马甲机器人,请点这里:http://www.java2000.net/mycsdn/robotStop.jsp?usern=lzflkj
可能原因如下:
1数据库的表中需要设置的字段没有设置---有默认值的字段
2非空字段没有赋值
3主键Integer 需要改成Long
4jdbc驱动有问题,我用的是jtds连接的sqlserver2000,应该没有问题
5主键生成方式改成 : identify ,没有效果
解决的方法就这些,各位还有没有其它的解决办法,我随后会加分dew !!!!!!!!!!!!!!!!!!
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<servlet>
<servlet-name>webwork</servlet-name>
<servlet-class>com.opensymphony.webwork.dispatcher.ServletDispatcher</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>webwork</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<jsp-config>
<taglib>
<taglib-uri>/FCKeditor</taglib-uri>
<taglib-location>/WEB-INF/lib/FCKeditor.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>jstl/c</taglib-uri>
<taglib-location>/WEB-INF/lib/c.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>jstl/fmt</taglib-uri>
<taglib-location>/WEB-INF/lib/fmt.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>jstl/fn</taglib-uri>
<taglib-location>/WEB-INF/lib/fn.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/webwork</taglib-uri>
<taglib-location>/WEB-INF/lib/webwork.tld</taglib-location>
</taglib>
</jsp-config>
<mime-mapping>
<extension>doc</extension>
<mime-type>application/msword</mime-type>
</mime-mapping>
<mime-mapping>
<extension>rar</extension>
<mime-type>application/octet-stream</mime-type>
</mime-mapping>
<mime-mapping>
<extension>xml</extension>
<mime-type>text/xml</mime-type>
</mime-mapping>
<welcome-file-list>
<welcome-file>startup.jsp</welcome-file>
</welcome-file-list>
<error-page>
<error-code>500</error-code>
<location>/error.jsp</location>
</error-page>
</web-app>
这是web-inf
<context-root>/</context-root>
<virtual-directory-mapping>
<local-path>C:/</local-path>
<url-pattern>/newspic/*</url-pattern>
</virtual-directory-mapping>
<virtual-directory-mapping>
<local-path>C:/</local-path>
<url-pattern>/video/*</url-pattern>
</virtual-directory-mapping>
</weblogic-web-app>
这是weblogic.xml