sa-strutsで画面を出したり、処理したり
もう、どれが前回の日記なのか分からないが、
とりあえずsa-strutsでの戯れの続き。
パッケージ切って、Actionをメソッドのとおりにアクセスしたら、
アクセスできた。
ここで詰まってたような気がするんだが。
あいかわらず、よく分からないが、かぶってるjarがある。
それを削除する手作業はあった…。
多分pomのprovideの書き方だと思うのだが…。
画面出たので、データを登録してみよう。
PostgreSQLをいつも使用しているので、
JdbcManager周りのdiconを記述。
Doltengで生成したので、jdbc.diconやらs2jdbc.diconはコメントアウトで記述されていたので、
それを使用。
ただ、org.postgresql.Dirverが無いので、それを
http://jdbc.postgresql.org/
この辺からゲット。
ここで問題だが、jarをどこにおくの?
これがまたJavaやTomcatが良く分かっていないことの罰
Eclispseのsa-stustsのプロジェクトって、
コンパイル時はリポジトリ上のjarを参照して、
実行時は、webappのWEB-INFのlibを参照するっぽい。
(本当かしら…。)
よく分からんのあが、プロジェクト直下にlibがあったので、
そこに放り込んだ。
とりあえずjarを追加しなきゃいけないだろうな。
プロジェクト右クリック→[ビルドパス]→[ビルドパスの構成]→
[ライブラリー]タブ→[JARの追加]
自分のプロジェクトの中にさっきのlibが表示されているので、
そこからpostgresql.jarを選択。
Eclipse上の参照ライブラリーに追加された(*^v^*)ホクホク
じゃー、TOMCAT起動…。
org.postgresql.DriverがClassNotFoundException。
ここで上記の「っぽい」ってところの話なんだが、
webapp/lib/に手でコピー。
いけた…。
うーん。正しい作業手順が良く分からないが、まーいけたから、
本当にまずくなってからちゃんと勉強するって事でw
画面出る。
DBとの接続できる。
(PostgreSQLと格闘したのは、あとで書こうかな)
もう、後はアイディアしたいかしら…。
問題が一個だけ。
トランザクションが手動でできない。
UserTransactionでcommitすると、
「[ESSR0311]トランザクションが開始されていません」
まぁ当たり前だけど、beginをすると、
「[ESSR0316]ネストしたトランザクションはサポートしていません」
ぐぐると、@NeverTxつければいいんじゃないのというのが
Seaserのメーリスに書いてあったので、
とりあえず付けてみる。
「[ESSR0317]既に別のトランザクションが割り当てられています」
ぐへ。
sersarのWikiにESSR0317の項目があったけど、空だった。
まー、トランザクション無いとそうとうしょぼいけど、
いったん、PostgreSQLとつなげられたからこれでおーけーでいいや。