August 16, 2004

世界を建てる?

AxKit本、届いております。しかし、テスト用マシンがおかしな音を出すようになり、ちょうど空いた旧PCを急遽テスト用に。今回調子こいて初めてbuildworldをやったものだから、思わぬトラブルに…。マシンに信頼がおけないために、疑うべきところを疑わず、いらんところを疑ってしまうわけです(^^;)。
複雑怪奇に入り込んだAxKitの設定をすべてはずし、http、OK?から根気よく虱潰し。すべてのXMLファイルで出ていた「Subrequest failed with status: 401」エラーの、やっと突き止めた原因は、stylesheetsフォルダに紛れ込んでいたベーシック認証付き.htaccess。そらでるわなぁ。誰が入れたんでしょう(^^;)。MLに投げずに踏みとどまってよかった。

で、ESQLのパッチあてもまたやり直したわけですが、前回書き漏らしていた点が一つ。パッチをあてる前は、セレクトした結果にNULLがあっても大丈夫ですが、パッチをあてるとこれがエラーに。ユニコードに変換する際にエラーになるのかな。「ページが表示できません」のエラーになってしまいます。

FreeBSDのバージョンが上がったために、Perlが5.005にあがりました。それでも今度はAxKit::XSP::Sessionが動かず、AxKit::XSP::BasicSession を利用中。それをついうっかり忘れて、AxKit::XSP::SessionのPOD読みながら動かん、動かん、言ってたり(^^;)。

Posted by idic at 10:16 PM | Comments (0)

July 30, 2004

いつ出たんだろうAxkit本?


コピりやすいソースを求め、TaglibHelperでGoogleっていたら、KipさんのAxKit本のソースコードに遭遇(^^;)。早速注文。しかし全然知らなかった…。こんな表紙の本が見られる日がこようとは、思っていませんでした。

Posted by idic at 11:26 PM | Comments (0)

初めてのタグリブ

意外に簡単に動きました。自分でモジュールなんか作ったこともなく、mod_perlもそういえば本()を買ったっけ状態で、おっかなびっくりではありましたが。こんなことならもっと早くチャレンジするのだった。

躓いたの2点ほど。
FreeBSDのPerlが古い(5.003)ためか、
Apache::AxKit::Language::XSP::SimpleTaglibが動かず(原因は別かも)、Apache::AxKit::Language::XSP::TaglibHelperを使うことに。

ここの例題をコピることから始めたら、なんか
@ISA = qw( Apache::AxKit::Language::XSP::TaglibHelper );
が抜けているようです。

Global symbol "%_args" requires explicit > package name
と言うエラーがでたら、モジュールではなく、xsp(タグのTYPO)を疑いましょう。

hello.xsp ---------------------------------------------
<?xml version="1.0"?>
<?xml-stylesheet href="NULL" type="application/x-xsp"?>
<xsp:page
xmlns:xsp="http://www.apache.org/1999/XSP/Core"
xmlns:mylib="http://apache.org/xsp/testtaglib/v1"
xmlns:param="http://axkit.org/NS/xsp/param/v1"
>
<html>
<head>
<title>My First TagLib</title>
</head>
<body>
<form method="POST">お名前:
<input type="text" name="yourname" size="40" />
<input type="submit" value="送信"/>
</form>
<mylib:hello><mylib:uname><param:yourname/></mylib:uname></mylib:hello>
</body>
</html>
</xsp:page>

Test.pm -----------------------------------------------
package My::Test;

use Apache::AxKit::Language::XSP::TaglibHelper;

@ISA = qw( Apache::AxKit::Language::XSP::TaglibHelper );

## Edit $NS to be the namespace URI you want
$NS = 'http://apache.org/xsp/testtaglib/v1';

## Edit @EXPORT_TAGLIB as needed
@EXPORT_TAGLIB = (
'hello($uname)',
);

use strict;

sub hello {
my ( $uname ) = @_ ;
return "こんにちわ $uname さん!";
#ソースに日本語書いて大丈夫かい?と思ったが、UTF-8で保存したら動いた。
}
1;

Posted by idic at 10:49 PM | Comments (0)

July 24, 2004

Axkit再び

Axkitに関するこれまでの経緯はこちら

PHPかじり、C#かじりで、どちらも消化不良のまま、ほぼ1年ぶりで再びAxkitしています。
(Axkit日本語メーリングリストのみなさまお元気でしょうか(^^;)?)
初めて本格的にESQLに取り組み始めたわけですが、引っかかるポイントは相変わらず文字コード(しばらくC#でスポイルされていただけに、これが結構煩わしい)。
DBはXOOPSでしばらく遊んでいたので、mySQLが入っていてEUC-JPを使っています。
XSPはUTF-8なので、変換が必要ですが自動でやってくれなければタグリブのありがたみがありません。ESQL Axkit UTF-8 で検索したら、CVSのは対応済みとのこと。
AxExternalEncoding でeuc-jpを指定しなければならないのが、他に影響出ないか若干不安ですが、ESQLの方は特に問題なく動いています。

次は登録時のEUCへの変換ですが、AxKit-XSP-CharsetConv(iconvらしい)がうまく動かず、今のところJcode.pm で変換中。それでも今までのCGIに比べれば格段に楽ちん。(早く自分でタグリブ書けるようにならないとね~とは思うもののまずは既存のタグリブを知ることからよね、といいわけ)

Posted by idic at 04:45 PM | Comments (0)