4

Jetty で Grails アプリケーションを正常に実行できます。私の Msql データベースへの接続に成功し、すべて問題ありません。同じマシンの Tomcat 6 に同じアプリケーションをデプロイすると、起動時に Tomcat ログに次のエラーが表示されます。

Caused by: java.net.ConnectException: Connection refused: connect

Tomcatの同じインスタンスで別のJavaアプリケーションを実行し、同じデータベースサーバーに正常にアクセスしているため、MsSqlサーバーが問題だとは思いません。

接続文字列は、Jetty と Tomcat でデプロイした場合とまったく同じです。Grails アプリを Tomcat 6 にデプロイするときにデータベースに接続できない理由はありますか? Grails アプリが Tomcat にデプロイされているときに、どのデータベースにもアクセスできないようです。(私の他の Java アプリ (Confluence) は問題なく接続できます。

ここに私の接続情報があります:

dataSource {
    pooled = true
    driverClassName = "net.sourceforge.jtds.jdbc.Driver"
    username = "user"
    password = "pass"
}
hibernate {
    cache.use_second_level_cache=true
    cache.use_query_cache=true
    cache.provider_class='com.opensymphony.oscache.hibernate.OSCacheProvider'
}
// environment specific settings
environments {
    development {
        dataSource {
            dbCreate = "update" // one of 'create', 'create-drop','update'
            url = "jdbc:jtds:sqlserver://localhost:1143/holidayCards"
        }
    }
    test { //for AD-DEV02
        dataSource {
            dbCreate = "update"
            url = "jdbc:jtds:sqlserver://AD-DEV02:1237/holidayCards;instance=SQL2005"
        }
    }
    production {
        dataSource {
            dbCreate = "update"
            url = "jdbc:jtds:sqlserver://SQL:1433/holidayCards"
        }
    }
}

私は常に「テスト」として展開します。

grails test war

以下の私の回答からわかるように、grails 1.1beta1 から 1.0.4 にダウングレードしたときに正常に動作するようになったため、これは接続の問題ではないと思います

どんな助けでも大歓迎です、

アンドリュー

4

2 に答える 2

3

DataSource.groovy ファイルはどのようなものですか? 「grails run-app」でアプリを実行すると、Grails は「開発」セクションのデータソースを使用します。「grails war」で war ファイルを作成し、それをアプリケーション サーバーにデプロイすると、Grails は「production」セクションのデータソースを使用します。開発データソースと本番データソースが同じように構成されていることを確認する必要がある場合があります。

于 2008-12-11T11:12:29.033 に答える
1

これは grails 1.1beta1 の問題です。アプリケーションを grails 1.0.4 に戻すと、動作するように見えました。残念ながら、grails のベータ版でいくつかのバグが修正されたため、いくつかのコードを変更する必要がありましたが、これは私が使用していた grails のバージョンに起因しているようです。

1.1beta1 を使用して空の grails アプリケーションを作成したところ、Tomcat に正常にデプロイできました (そしてデータベースにアクセスできました)。これにより、私のプロジェクトには、ベータ版ではうまく機能しない設定がいくつかあると思われます。おそらくそれは私のjqueryプラグインです。おそらく、私のプロジェクトを grails 1.0.4 から 1.1beta1 にアップグレードしていたのでしょう。

これは問題を完全に解決するわけではありませんが、問題を絞り込みます。

アンドリュー

于 2008-12-11T18:42:48.110 に答える