はじめてのJBoss その2

 データベースを使ってみます。

JNDIにデータソースを登録する方法

手元にPostgreSQLが入ってるので、まずはそれを確かめることにします。あらかじめ、データベースにはtestdbというデータベースと、testというユーザ(パスワードもtest)と

create table sample ( col1 integer not null, col2 varchar(100), primary key(col1));

というテーブルをきっておいた。
まず、

{JBOSS_HOME}/docs/examples/jca

にサンプルがあるので、ここにあるpostgres-ds.xml

{JBOSS_HOME}/server/default/deploy

にコピー。内容を書き換える(下記はコメント文を削除してます)

<?xml version="1.0" encoding="UTF-8"?>

  
    PostgresDS
    jdbc:postgresql://localhost:5432/testdb
    org.postgresql.Driver
    test
    test
    
       PostgreSQL 7.2
    
  

JDBCドライバpg74.xxx.jdbc3.jarを

{JBOSS_HOME}/server/default/lib

に置く。
JBossを起動させてみると、コンソールには

14:47:47,251 INFO  [WrapperDataSourceService] Bound connection factory for resource adapter for ConnectionManager 'jboss
.jca:name=PostgresDS,service=DataSourceBinding to JNDI name 'java:PostgresDS'

って出てるけど、これで大丈夫なのかな。
クライアントを作ってみる……あれ、うまくいかないなあ。
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=23054&forum=12&0
おんなじようなことで悩んでいる人を発見したが一年前ので未解決で放置されてますね。JUnit上だと駄目なの?(ってことはなくてどこかが悪いのだと思いますが)