自動サーバーモードでH2を実行しているので、複数のプロセスからアクセスできます。しかし、TOMEEがすでにそれを使用しているときは、コマンドラインからorg.h2.tools.Scriptを実行することができません。 TOMEEをシャットダウンすると、org.h2.tools.Scriptが正常に動作します。 H2:ここ AUTOSERVERモードのコマンドラインからorg.h2.tools.Scriptを実行できません
は私が
のjava -cp h2-1.4.188.jar org.h2.tools.Script -url」JDBCを使用していますcommnadある〜/テスト; FILE_LOCK = FILE; AUTO_SERVER = TRUE "-user SA -password SA -script test.sql内
例外Tomcatがアップ
Exception in thread "main" org.h2.jdbc.JdbcSQLException: IO Exception: "java.io.FileNotFoundException: /var/lib/test.sql (Permission denied)"; SQL statement:
SCRIPT TO '/var/lib/test.sql' [90028-188]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
at org.h2.message.DbException.get(DbException.java:168)
at org.h2.message.DbException.convertIOException(DbException.java:328)
at org.h2.command.dml.ScriptBase.openOutput(ScriptBase.java:146)
at org.h2.command.dml.ScriptCommand.query(ScriptCommand.java:159)
at org.h2.command.CommandContainer.query(CommandContainer.java:90)
at org.h2.command.Command.executeQuery(Command.java:197)
at org.h2.server.TcpServerThread.process(TcpServerThread.java:320)
at org.h2.server.TcpServerThread.run(TcpServerThread.java:159)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.io.FileNotFoundException: /var/lib/test.sql (Permission denied)
at java.io.FileOutputStream.open0(Native Method)
at java.io.FileOutputStream.open(FileOutputStream.java:270)
at java.io.FileOutputStream.<init>(FileOutputStream.java:213)
at java.io.FileOutputStream.<init>(FileOutputStream.java:101)
at org.h2.store.fs.FilePathDisk.newOutputStream(FilePathDisk.java:290)
at org.h2.store.fs.FileUtils.newOutputStream(FileUtils.java:233)
at org.h2.command.dml.ScriptBase.openOutput(ScriptBase.java:144)
... 6 more
at org.h2.engine.SessionRemote.done(SessionRemote.java:624)
at org.h2.command.CommandRemote.executeQuery(CommandRemote.java:158)
at org.h2.jdbc.JdbcStatement.executeInternal(JdbcStatement.java:179)
at org.h2.jdbc.JdbcStatement.execute(JdbcStatement.java:158)
at org.h2.tools.Script.process(Script.java:141)
at org.h2.tools.Script.process(Script.java:120)
at org.h2.tools.Script.runTool(Script.java:101)
at org.h2.tools.Script.main(Script.java:46)
私はFileNotFoundExceptionをを参照してください理由はわからないとき、私はコマンドを発行したときに私が得ます。 TOMEEが実行されていないときにこれが消えることを忘れないでください。
アイデア?私はドッカーのコンテナにいます。 TOMEEとScriptの間にURLが一致することを確認しました。