错误信息:
2009-01-15 14:20:15 WARN JDBCExceptionReporter:71 - SQL Error: 0, SQLState: HY000
2009-01-15 14:20:15 ERROR JDBCExceptionReporter:72 - [Microsoft][SQLServer 2000 Driver for JDBC]The year, 2, is outside the range allowed by the SQL Server.
2009-01-15 14:20:15 ERROR AbstractFlushingEventListener:300 - Could not synchronize database state with session
org.hibernate.exception.GenericJDBCException: Could not execute JDBC batch update
at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:103)
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:91)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:202)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:235)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:140)
at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:297)
at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:985)
at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:333)
at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
at com.jxc.util.HibernateUtil.commitTransaction(HibernateUtil.java:105)
at com.jxc.util.Connection.commitTransaction(Connection.java:23)
at com.jxc.receive.LoadMoneyImpl.loadDate(LoadMoneyImpl.java:167)
at com.jxc.receive.LoadMoneyAction.load(LoadMoneyAction.java:157)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:280)
at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:216)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
at com.jxc.util.PubActionServlet.process(PubActionServlet.java:37)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Unknown Source)
Caused by: com.microsoft.jdbc.base.BaseBatchUpdateException: [Microsoft][SQLServer 2000 Driver for JDBC]The year, 2, is outside the range allowed by the SQL Server.
at com.microsoft.jdbc.base.BasePreparedStatement.executeBatchEmulation(Unknown Source)
at com.microsoft.jdbc.base.BasePreparedStatement.executeBatch(Unknown Source)
at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeBatch(NewProxyPreparedStatement.java:1723)
at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:58)
at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:195)
... 36 more
2009-01-15 14:20:15 WARN JDBCExceptionReporter:71 - SQL Error: 0, SQLState: HY000
2009-01-15 14:20:15 ERROR JDBCExceptionReporter:72 - [Microsoft][SQLServer 2000 Driver for JDBC]The year, 2, is outside the range allowed by the SQL Server.
2009-01-15 14:20:15 ERROR AbstractFlushingEventListener:300 - Could not synchronize database state with session
org.hibernate.exception.GenericJDBCException: Could not execute JDBC batch update
at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:103)
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:91)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:202)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:235)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:140)
at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:297)
at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:985)
at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:333)
at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
at com.jxc.util.HibernateUtil.commitTransaction(HibernateUtil.java:105)
at com.jxc.util.Connection.commitTransaction(Connection.java:23)
at com.jxc.receive.LoadMoneyImpl.loadDate(LoadMoneyImpl.java:167)
at com.jxc.receive.LoadMoneyAction.load(LoadMoneyAction.java:157)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:280)
at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:216)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
at com.jxc.util.PubActionServlet.process(PubActionServlet.java:37)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Unknown Source)
Caused by: com.microsoft.jdbc.base.BaseBatchUpdateException: [Microsoft][SQLServer 2000 Driver for JDBC]The year, 2, is outside the range allowed by the SQL Server.
at com.microsoft.jdbc.base.BasePreparedStatement.executeBatchEmulation(Unknown Source)
at com.microsoft.jdbc.base.BasePreparedStatement.executeBatch(Unknown Source)
at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeBatch(NewProxyPreparedStatement.java:1723)
at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:58)
at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:195)
... 36 more
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"><hibernate-configuration>
<session-factory>
<!-- properties -->
<property name="dialect">org.hibernate.dialect.SQLServerDialect</property>
<property name="show_sql">true</property>
<property name="use_outer_join">true</property> <property name="hibernate.generate_statistics">true</property>
<property name="hibernate.cache.use_second_level_cache">true</property>
<property name="hibernate.cache.provider_class">org.hibernate.cache.EhCacheProvider</property>
<property name="hibernate.jdbc.batch_size">20</property>
<!--<property name="hibernate.hbm2dll.auto">create-drop</property>--> <property name="hibernate.hbm2dll.auto">update</property>
<!--
<property name="connection.username">sa</property>
<property name="connection.url">jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=yafu;SelectMethod=cursor</property>
<property name="dialect">org.hibernate.dialect.SQLServerDialect</property>
<property name="connection.password">123</property>
<property name="connection.driver_class">com.microsoft.jdbc.sqlserver.SQLServerDriver</property>
--> <property name="hibernate.connection.provider_class">org.hibernate.connection.C3P0ConnectionProvider</property>
<property name="connection.driver_class">com.microsoft.jdbc.sqlserver.SQLServerDriver</property>
<property name="connection.url">jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=yafu;SelectMethod=cursor</property>
<property name="connection.username">sa</property>
<property name="connection.password">123</property>
<property name="hibernate.c3p0.max_size">30</property>
<property name="hibernate.c3p0.min_size">2</property>
<property name="hibernate.c3p0.timeout">5000</property>
<property name="hibernate.c3p0.max_statements">100</property>
<property name="hibernate.c3p0.idle_test_period">3000</property>
<property name="hibernate.c3p0.acquire_increment">2</property>
<property name="hibernate.c3p0.validate">true</property>
<!-- Mapping files -->
<mapping resource="com/jxc/xml/operator.hbm.xml" />
<mapping resource="com/jxc/xml/function.hbm.xml" />
<mapping resource="com/jxc/xml/orderNo.hbm.xml" />
<mapping resource="com/jxc/xml/receive.hbm.xml" />
<mapping resource="com/jxc/xml/baseInfo.hbm.xml" />
<mapping resource="com/jxc/xml/caiwu.hbm.xml" />
<mapping resource="com/jxc/xml/hr.hbm.xml" /></session-factory>
</hibernate-configuration>
<cache usage="read-write"/>
<id name="id" column="ID">
<generator class="native"/>
</id>
<!-- 放款状态 -->
<property name="loanStateId" column="LOAN_STATE_ID" type="long"/>
<!-- 放款状态 -->
<property name="loanStateName" column="LOAN_STATE_NAME" type="string"/>
<!-- 放款日期 -->
<property name="loanDate" column="LOAN_DATE" type="timestamp"/>
<!-- 放款受理人ID -->
<property name="loanWriterId" column="LOAN_WRITER_ID" type="long"/>
<!-- 放款受理人名称-->
<property name="loanWriterName" column="LOAN_WRITER_NAME" type="string"/>
<!-- 放款备注 -->
<property name="loanMemo" column="LOAN_MEMO" type="string"/>
</class>
public ReceiveOrder loadDate(ReceiveOrder rec) throws Exception{
try {
Session session = Connection.openTransaction();
if(rec.getBonusInfo()!=null){
session.save(rec.getBonusInfo());
}
session.update(rec);
BankInvoice bi = rec.getBankInvoice();
if(bi != null){
bi.setSerialNo(null);
bi.setMoney(0L);
bi.setInvoiceDate(null);
bi.setAccountDate(null);
bi.setStateId(Constants.BANK_INVOICE_ADD_STATE_ID);
bi.setStateName(Constants.BANK_INVOICE_ADD_STATE_NAME);
bi.setMemo(null);
session.update(bi);
}
Connection.commitTransaction();
} catch (Exception e) {
Connection.rollback();
e.printStackTrace();
throw new Exception("设置放款失败!");
}
return rec;
}
2009-01-15 14:20:15 ERROR JDBCExceptionReporter:72 - [Microsoft][SQLServer 2000 Driver for JDBC]The year, 2, is outside the range allowed by the SQL Server.at com.jxc.receive.LoadMoneyImpl.loadDate(LoadMoneyImpl.java:167)
recLoanDateThu Jan 08 00:00:01 CST 2009Hibernate: select bankinvoic0_.ID as ID82_0_, bankinvoic0_.SERIAL_NO as SERIAL2_82_0_, bankinvoic0_.INVOICE_DATE as INVOICE3_82_0_, bankinvoic0_.ACCOUNT_DATE as ACCOUNT4_82_0_, bankinvoic0_.MONEY as MONEY82_0_, bankinvoic0_.STATE_ID as STATE6_82_0_, bankinvoic0_.STATE_NAME as STATE7_82_0_, bankinvoic0_.MEMO as MEMO82_0_ from CW_BANK_INVOICE bankinvoic0_ where bankinvoic0_.ID=?
Hibernate: update YW_RECEIVE_ORDER set SERIAL_NO=?, RECEIVE_DATE=?, WRITER_DATE=?, SALES_ID=?,
出错信息的loandate值:
recLoanDateTue Jan 06 00:00:01 CST 2009
Hibernate: select bankinvoic0_.ID as ID82_0_, bankinvoic0_.SERIAL_NO as SERIAL2_82_0_, bankinvoic0_.INVOICE_DATE as INVOICE3_82_0_, bankinvoic0_.ACCOUNT_DATE as ACCOUNT4_82_0_, bankinvoic0_.MONEY as MONEY82_0_, bankinvoic0_.STATE_ID as STATE6_82_0_, bankinvoic0_.STATE_NAME as STATE7_82_0_, bankinvoic0_.MEMO as MEMO82_0_ from CW_BANK_INVOICE bankinvoic0_ where bankinvoic0_.ID=?
Hibernate: update YW_RECEIVE_ORDER set SERIAL_NO=?, RECEIVE_DATE=?, WRITER