私の会社には、Oracle WebLogicサーバーにデプロイされたWebアプリケーションがあります。 WebLogic 12cにアップグレードし、アプリケーションをJava 1.5から1.7.0_15にアップグレードする作業を進めています。アプリケーションサーバを起動するときJavaが正しいタイムゾーンを使用していません
、我々は次のエラーを取得しました:私たちは、サーバーの起動パラメータに-Duser.timezone='Canada/Eastern'
を追加すると、問題を修正することを
<Jun 6, 2017 12:09:31 PM EDT> <Error> <Deployer> <BEA-149205> <Failed to initialize the application "SIMPLeBDataSource" due to error weblogic.application.ModuleException: weblogic.common.ResourceException: weblogic.common.ResourceException: Could not create pool connection for datasource 'SIMPLeBDataSource'. The DBMS driver exception was: ORA-00604: error occurred at recursive SQL level 1
ORA-01882: timezone region not found
weblogic.application.ModuleException: weblogic.common.ResourceException: weblogic.common.ResourceException: Could not create pool connection for datasource 'SIMPLeBDataSource'. The DBMS driver exception was: ORA-00604: error occurred at recursive SQL level 1
ORA-01882: timezone region not found
at weblogic.jdbc.module.JDBCModule.prepare(JDBCModule.java:350)
at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:100)
at weblogic.application.internal.flow.ModuleStateDriver$1.next(ModuleStateDriver.java:175)
at weblogic.application.internal.flow.ModuleStateDriver$1.next(ModuleStateDriver.java:170)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:42)
Truncated. see log file for complete stacktrace
Caused By: weblogic.common.ResourceException: weblogic.common.ResourceException: Could not create pool connection for datasource 'SIMPLeBDataSource'. The DBMS driver exception was: ORA-00604: error occurred at recursive SQL level 1
ORA-01882: timezone region not found
at weblogic.jdbc.common.internal.ConnectionEnvFactory.createResource(ConnectionEnvFactory.java:360)
at weblogic.common.resourcepool.ResourcePoolImpl.makeResources(ResourcePoolImpl.java:1320)
at weblogic.common.resourcepool.ResourcePoolImpl.makeResources(ResourcePoolImpl.java:1237)
at weblogic.common.resourcepool.ResourcePoolImpl.start(ResourcePoolImpl.java:240)
at weblogic.jdbc.common.internal.ConnectionPool.doStart(ConnectionPool.java:1624)
Truncated. see log file for complete stacktrace
>
ました。ただし、server logsおよびlog4jログには正しいタイムスタンプが記録されていません。彼らは1時間遅れている。
コードにTimeZone localTimeZone = TimeZone.getDefault();
を追加し、localTimeZone.toString()をログに記録し、sun.util.calendar.ZoneInfo[id="GMT-05:00",offset=-18000000,dstSavings=0,useDaylight=false,transitions=0,lastRule=null]
を取得しました。
東部標準時はGMT-5で現在GMT-4になっているので、指定されたJavaスタートアップパラメータを使用しているようですが、DSTにあるはずです。開始パラメータにDSTを指定する方法はありますか?
タイムゾーンアップデータツールでこれを修正することはできません。インターネット接続が必要で、このボックスにインターネット接続がないためです。 JDKのアップデートに関しては、公開されていないので、アップデート141をどのように入手するのか少し混乱しています。 – korshyadoo
私はツールをダウンロードしてそれをコピーすることはオプションになると思うだろうが、これまでに試したことはない。 Oracleサポート・サイトにアクセスできる場合は、Update 141を使用できます。 – bubbly