自分用メモ
XOOPSのフォーラム機能、一定期間経つと一覧表示から消えてしまう。それの変更の仕方。結構分からなくてWebを探したので、URLを一応メモしとく。
自分用メモ
XOOPSのフォーラム機能、一定期間経つと一覧表示から消えてしまう。それの変更の仕方。結構分からなくてWebを探したので、URLを一応メモしとく。
タイトル通り。まぁ要はclasspathの設定とかの話。
JBossではなくてWebLogicだけど、この一連のスレッドが役に立った。特にコメントの2番。
○環境
JBoss 4.0.3SP1 (別にバージョン依存の話ではないけど)
BIRT Runtime 2.2.2
やった事
当然 setEngineHome には JBOSS_HOME/server/default/ReportEngine を指定。
前に似たようなエントリを書いた。
とりあえずMySQL上でテストした事を書くけど、MySQL限定の話ではない。
以下のようなテーブル
CREATE TABLE `test`.`testmax` ( `ID` int(10) unsigned NOT NULL, `DateField` datetime NOT NULL, `NumField` int(10) unsigned NOT NULL, `Val` double NOT NULL );
データの中身としては
| ID | DateField | NumField | Val |
| 1 | 2007-12-20 | 1 | 3 |
| 3 | 2007-10-01 | 1 | 2 |
| 3 | 2007-10-01 | 2 | 4 |
| 3 | 2007-10-01 | 3 | 2.3 |
| 3 | 2007-11-01 | 1 | 3.3 |
| 3 | 2007-11-01 | 2 | 4.1 |
○やりたい事
各ID毎に最新の日付のレコードの中で最大のNumFieldを持つ値を取り出す。
欲しい結果としては
| ID | DateField | NumField | Val |
| 1 | 2007-12-20 | 1 | 3 |
| 3 | 2007-11-01 | 1 | 3.3 |
今のプロジェクトではBIRTというオープンソースのレポートエンジンを使っている。
BIRTは色々便利なんだけど、欠かせない機能としてレポート内でJavaScriptを使う事が出来、さらにそのJavaScriptからJavaオブジェクトを呼び出す事が出来る。ビジネスロジック(及びDAO)はJavaで実装して、BIRTはデータの表示だけを行うようにすると良い感じ。(Beanを生成して、getterメソッドでStringとかfloatの値を取り出してレポートに表示する)
Javaオブジェクトの呼び出し方だけど、今まで2通りやった事がある。
スクリプトの使い方についてはこの辺(英語)。
Eclipseは標準でCVSはサポートしてるけどSubversion(SVN)はサポートしていない。Subclipseというプラグインをインストールして使ってる。
○環境
Eclipse WTP 3.0 M5
Subclipse 1.2.4
○Subclipseのインストール
Subclipseのインストール自体は、本家ページを参考に。
ただ、パッケージの依存関係とかでちょっとハマったので、必要なパッケージ一覧を載せとく。
フリーのインストーラー作成ツールって結構いっぱいあるけど、こんなのもあった。
InstallJammer
ま、以前の会社でインストーラを作るときはInstallShield使ってたけど。あと、Microsoftの無料のやつも使ったなぁ。
Javaやっててclasspath関係で一度もハマった事無い人はモグリだと思う。
以前のプロジェクトでEJBを使ったときにクラスパスでちょっと不明な事があった。EJBって実体はjarファイルだけど、EJBが他の暮らすやライブラリに依存している時ってどうすればいいのだろう?
JavaHouseのこのスレッドが参考になった。
現在のプロジェクトでユニットテストを徐々に導入中。今まで社内にはちゃんとしたテストの手順とか無かったんだけど、プロジェクトも徐々に大きくなってきたのと、時間的に若干余裕が出てきたので色々整備中。
さて、通常のJavaクラスはJUnitでテストすればいいけど、サーブレットとかは?って事で、HttpUnitを使う事にした。Cactusも検討したけど。
とりあえずチュートリアルとか見て普通のテストは書けるようになったんだけど、ファイルアップロードを扱うサーブレットのテストでちょっとハマった。
(溜まってたメモをとりあえずざっとblogに書いてるところ)
SELinuxって、個人や小規模企業だとオフにしているところが大半だけど、やっぱり勉強がてらある程度は使えるようにしたいなぁとは思っている。先日ファイルサーバーを構築する事があったので、その時にSELinuxをオンにしたまま頑張ってみた。(最終的には断念したんだけど)
最近は色々と便利になったもので、smb.conf内にSELINUX NOTESなんてセクションがあって、やるべき事が書いてある。このページも分かりやすかった(英語)。
最近時間があるので、サーバーとかサイトを色々いじってる。
XserverでWordPress MEを運用(放置)してるんだけど、さっきコントロールパネルのMySQLの所を見たらMySQL 4から5にアップグレード出来ると言うことに気づいた。条件としては、データベースとユーザーを全ていったん削除すること。いったんバックアップ取らないとダメだね。せっかくなら文字コードもUTF-8にしよう、と思いついた。
ということでやったこと。
タイトルのまんま。
Sambaのフォルダにアクセスすると、たまーに固まったようになる。10秒くらいすると元に戻る。さすがに不便なので色々調べてみた。
結論から言うと、ハードが悪かったみたいで、サーバーを交換したら改善した(けど、まだ発生してる)。
こんな情報もあったので試してみたけど、自分が使っているバージョン(samba-3.0.25b-1.el5_1.4)ではsmb ports = 139というのはエラーになった...と書こうと思って今気付いたけど、smb port(s無し)って書いてた。smb portsで試してみたらエラー出なかったので、しばらくはこの設定で試してみようと思う。
こちらの方も同じ事やってる
あるプロジェクトでJBoss 4.2の採用を検討した。EJB 3は今までに比べて格段に便利なので魅力的に移った。で、テストプログラムとか作ったりして評価してたんだけど、その時にこんなエラーにあたった。
EJB 3ではJava 5のアノテーションを利用して色々記述できるんだけど、DI(Dependency Injection = 依存性注入)もそのうちの一つ(@EJBとか書く)。
DIとは何?ってのはwebで検索してもらうとして(例えばこんなページとか分かりやすかった)、JBoss 4.2で使用しようとすると以下のようなエラーが出た(エラーメッセージどっか行っちゃったし、手元に再現できる環境無し...)。
JBossのフォーラムに情報があった(英語)。JBoss 4.2はJava EE 1.4+EJB 3.0のプラグインなので、Java EE 5に完全に準拠してるわけではないからだとか。
(自分用メモ)
以前書きかけのエントリをとりあえず公開。
New->EJB->p;XDoclet Enterprise JavaBean
以前のプロジェクトで、JBoss 4.0.3SP1上で動くシステムの改修をした。EJB3未満ってはっきり言って使いづらいよ...とりあえずXDocletを使って、設定ファイル類は極力自動生成するようにした。
以下、便利だったタグなどと該当するマニュアルページ。
ejb.env-entry
EJBのjarファイルの中にはejb-jar.xmlていうファイルが無ければいけない。で、そのファイルの中には<env-entry>っていうのを任意で入れられるんだけど、それを自動的に生成してくれる。
↓こんな感じで記述。
jboss service
JMX MBeanを作るときに指定すると、自動的にxxx-service.xmlを作ってくれる、はず。
自分が使っていたXDocletのバージョンのせいか名前の指定が上手くいかなくて、いつもnull-service.xmlが生成されていた気がする。
jmxdoclet
これって何の情報だったかな...
あけましておめでとうございます。今年初めてのエントリ、のはず。
自宅サーバーが不安定なんだか回線が不安定なんだか分からないけど、外部から自宅サーバーには繋がったり繋がらなかったりって状態が結構長く続いていて、かなり放置していた。
そもそも日本を離れて3年経つので、日本の実家のサーバーのメンテナンスとかは2年以上前から放置してた。最初の頃は繋がらなかったら、親にメールして再起動してもらったりとかしてたんだけど。OSもFedora Core 3だったかな。アップデータパッケージとかがリリースされなくなって相当経つので、さすがにやばいと思うし。
と言う事で念願のサーバー移行。レンタルサーバー借りた。ここ2年くらいずっとやりたいと思ったのがようやく出来て嬉しい。ドメインの管理その他はアメリカの業者で、www.kazu.tvだけはXserver。理由はただ一つ。Movable Type Open Sourceの簡易インストール機能があって、blogの移行が楽だから。
今後はボチボチまたエントリーを書いていく予定。