Uploaded image for project: 'Tuigwaa'
  1. Tuigwaa
  2. TUIGWAA-66

テーブル定義変更時の例外エラー

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Cannot Reproduce
    • Affects Version/s: 0.9, 0.8
    • Fix Version/s: None
    • Component/s: database
    • Labels:
      None

      Description

      新規にテーブルを作成した後、テーブルに項目を付け忘れたので、
      追加したのですが、[作成]ボタンを押したあとに、エラーになってしまいました。

      エラー後は、閲覧もできない(同じエラー画面になる)状態となります。
      #Tomcatを再起動すると使えるようになりますが、変更は反映されていないようです。

      解決策がありましたらご教授いただけませんでしょうか?

      ■環境
      ・Tomcat5
      ・JDK1.4.2_12
      ・WindowsXP Pro

      ■作成したテーブル
      テーブル名:テスト
      ───┬────┬────┬──────
      表示名│タイプ │必須 │オプション
      ───┼────┼────┼──────
      文字 │文字列 │ │通常の文字列
      日付 │日付 │ │1 年前 から 1 年後 まで

      ■追加したい項目
      ───┬────┬────┬──────
      表示名│タイプ │必須 │オプション
      ───┼────┼────┼──────
      数値 │数値 │ │

      ■エラー画面


      Tuigwaa 上でアプリケーションエラーが発生しました。
      Tuigwaa 上でアプリケーションエラーが発生しました。 しばらくたってからアクセスして下さい.....

      ■スタックトレース(Tomcatのログ)

      2006-08-29 18:20:24 StandardContext[/tuigwaa]Application Error Detected and Forwarded
      org.seasar.framework.exception.SSQLException: [ESSR0072]SQLで例外(SQL=[alter table testsite.tgw_entity_ add column tgw_attr_1 date], ErrorCode=-58, SQLState=s0021)が発生しました
      at org.seasar.extension.dbcp.impl.ConnectionWrapperImpl$PreparedStatementWrapper.wrapException(ConnectionWrapperImpl.java:555)
      at org.seasar.extension.dbcp.impl.ConnectionWrapperImpl$PreparedStatementWrapper.wrapException(ConnectionWrapperImpl.java:550)
      at org.seasar.extension.dbcp.impl.ConnectionWrapperImpl$PreparedStatementWrapper.executeUpdate(ConnectionWrapperImpl.java:574)
      at org.seasar.tuigwaa.database.DynaDatabaseServiceImpl.executeSQL(DynaDatabaseServiceImpl.java:181)
      at org.seasar.tuigwaa.database.DynaDatabaseServiceImpl.alterTable(DynaDatabaseServiceImpl.java:147)
      at org.seasar.tuigwaa.database.DynaDatabaseServiceImpl$$EnhancedByS2AOP$$12943ac.alterTable$$invokeSuperMethod$$(DynaDatabaseServiceImpl$$EnhancedByS2AOP$$12943ac.java)
      at org.seasar.tuigwaa.database.DynaDatabaseServiceImpl$$EnhancedByS2AOP$$12943ac$$MethodInvocation$$alterTable0.proceed(MethodInvocationClassGenerator.java)
      at org.seasar.extension.tx.RequiredInterceptor.invoke(RequiredInterceptor.java:40)
      at org.seasar.tuigwaa.database.DynaDatabaseServiceImpl$$EnhancedByS2AOP$$12943ac$$MethodInvocation$$alterTable0.proceed(MethodInvocationClassGenerator.java)
      at org.seasar.tuigwaa.database.DynaDatabaseServiceImpl$$EnhancedByS2AOP$$12943ac.alterTable(DynaDatabaseServiceImpl$$EnhancedByS2AOP$$12943ac.java)
      at org.seasar.tuigwaa.model.ModelServiceImpl.alterEntity(ModelServiceImpl.java:185)
      at org.seasar.tuigwaa.controller.EntityAction.doSave(EntityAction.java:127)
      at org.seasar.tuigwaa.util.ajax.AbstractRowSetAction.saveRowSet(AbstractRowSetAction.java:62)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:585)
      at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:270)
      at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:187)
      at org.apache.struts.actions.MappingDispatchAction.execute(MappingDispatchAction.java:169)
      at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
      at org.seasar.struts.processor.S2TilesRequestProcessor.processActionPerform(S2TilesRequestProcessor.java:122)
      at org.seasar.struts.processor.AcceptorImpl.process(AcceptorImpl.java:126)
      at org.seasar.struts.processor.S2TilesRequestProcessor.process(S2TilesRequestProcessor.java:61)
      at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
      at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
      at org.seasar.tuigwaa.util.filter.TgwFilter.doFilter(TgwFilter.java:67)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
      at org.seasar.tuigwaa.util.filter.EncodingFilter.doFilter(EncodingFilter.java:65)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
      at org.seasar.tuigwaa.util.filter.ForwardFilter.doFilter(ForwardFilter.java:83)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
      at org.seasar.struts.filter.S2StrutsFilter.doFilter(S2StrutsFilter.java:45)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
      at org.seasar.framework.container.filter.S2ContainerFilter.doFilter(S2ContainerFilter.java:60)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
      at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
      at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
      at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
      at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
      at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
      at java.lang.Thread.run(Thread.java:595)
      Caused by: java.sql.SQLException: Column constraints are not acceptable in statement [alter table testsite.tgw_entity_ add column tgw_attr_1 date]
      at org.hsqldb.jdbc.Util.throwError(Unknown Source)
      at org.hsqldb.jdbc.jdbcPreparedStatement.executeUpdate(Unknown Source)
      at org.seasar.extension.dbcp.impl.ConnectionWrapperImpl$PreparedStatementWrapper.executeUpdate(ConnectionWrapperImpl.java:572)
      ... 66 more

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              takishita takishita
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: