- PR -

WebLogicからOracleへの接続

1
投稿者投稿内容
pokkam
会議室デビュー日: 2003/05/27
投稿数: 7
投稿日時: 2004-11-05 18:37
お世話になってます。

現在、Tomcatで開発・テストを行ったWEBアプリケーションを
動作確認の為にWebLogicに移行する作業をしております。

色々と問題を解決しながら、ようやくデプロイ出来まして、
トップページへのアクセスが可能になりました。
ところがトップページからデータベースへのアクセスを行う段階で、
「javax.servlet.ServletException: User: xxxxx, failed to be authenticated.」
とエラーになってしまいます。
WebLogicでの接続プールの設定、データソースの設定は問題ありませんでした。
自分で調べたところ、きちんとしたユーザID、パスワードを設定しているにも
かかわらず、以下の箇所で例外が発生している模様です。

logger.info("□ getConnection() START");
//データソースの取得
DataSource dtSource
      = (javax.sql.DataSource)ConPoolDbm.hsDatatSource.get(dataSource);

if (dtSource == null) {
  throw new Exception("データソースが作成されていません。");
}
logger.info("■ getConnection() END");

logger.info("○User [" + user + "]");
logger.info("○Password [" + password + "]");

//コネクションを取得し返す
return dtSource.getConnection(user, password);
          ↑
        エラー発生

データソースはWebLogicから取得できているようなのですが、
なぜgetConnectionできないのかがどうしても分かりません。
もしかすると単純なことかも知れませんが、
解決方法をご存知の方がいらっしゃいましたら、教えてください。

環境は、
Windows XP Pro
WebLogic8.1J SP3
Oracle9i R2
(Tomcatと同一のマシン上ですが、Tomcatは止めてます)

山本 裕介
ぬし
会議室デビュー日: 2003/05/22
投稿数: 2415
お住まい・勤務地: 恵比寿
投稿日時: 2004-11-05 18:47
スタックトレースはどんな感じでしょう?

>return dtSource.getConnection(user, password);
コネクションプールですでに接続は確率されていますのでユーザ名、パスワードはここでは必要なさそうです。
山本 裕介
ぬし
会議室デビュー日: 2003/05/22
投稿数: 2415
お住まい・勤務地: 恵比寿
投稿日時: 2004-11-05 19:00
質問内容とは直接関係ないんですが、
>現在、Tomcatで開発・テストを行ったWEBアプリケーションを
WebLogic の開発ライセンスは無償ですので最初から WLS を使った方が無難かと。
山本 裕介
ぬし
会議室デビュー日: 2003/05/22
投稿数: 2415
お住まい・勤務地: 恵比寿
投稿日時: 2004-11-05 19:02
また直接関係ないんですが、
>if (dtSource == null) {
>  throw new Exception("データソースが作成されていません。");
>}

JNDIツリーにオブジェクトがなかったらNameNotFoundException とか投げられますのでこのコードを通ることはないですね。
pokkam
会議室デビュー日: 2003/05/27
投稿数: 7
投稿日時: 2004-11-05 19:12
>return dtSource.getConnection(user, password);

dtSource.getConnection();

に変更したら問題なく動いてしまいました・・・
詳細はAPIを確認して勉強し直します m(_ _)m

未熟者の話は続いてしまうのですが、
Tomcatのweb.xmlで既述していた以下の部分が、
WebLogicのデプロイ時に引っ掛かってしまって、
しばらくデプロイエラーに悩まされていました。

<!-- JNDI設定 -->
<!--
<resource-ref>
<description>Oracle Connection</description>
<res-ref-name>jdbc/ORCL9</res-ref-name>
<res-type>oracle.jdbc.pool.OracleDataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
-->

この部分に置き換わる既述って、
WebLogicではあるのでしょうか?

ついでに聞いてしまって申し訳ありません。
山本 裕介
ぬし
会議室デビュー日: 2003/05/22
投稿数: 2415
お住まい・勤務地: 恵比寿
投稿日時: 2004-11-06 11:51
weblogic.xml の resource-description ですね。
http://edocs.beasys.co.jp/e-docs/wls/docs81/webapp/weblogic_xml.html#1055677
pokkam
会議室デビュー日: 2003/05/27
投稿数: 7
投稿日時: 2004-11-08 12:14
返信遅くなりました。

weblogic.xmlですね・・・

もっときちんとマニュアルを読まないとダメですね。
お手数お掛けしてしまい、申し訳ありませんでした。
m(_ _)m
山本 裕介
ぬし
会議室デビュー日: 2003/05/22
投稿数: 2415
お住まい・勤務地: 恵比寿
投稿日時: 2004-11-08 14:01
あと、サポート窓口も活用しましょうね
1

スキルアップ/キャリアアップ(JOB@IT)