2007年1月アーカイブ
というのもあるそうです.
J-SOx 法の監査は会計監査なので,情報セキュリティ監査で代替することはできないけれど,多くの示唆を与えることになるというのも重要な点だと思いました.
いかちょー (2007-01-31 23:59) | コメント(0)| トラックバック(12)
いかちょー (2007-01-30 22:11) | コメント(0)| トラックバック(10)
$ uname -r
2.6.18-1.2869.fc6$ rpm -qa | grep -i '^perl'
perl-Digest-SHA1-2.11-1.2.1
perl-DBI-1.52-1.fc6
perl-HTML-Tagset-3.10-2.1.1
perl-Archive-Tar-1.30-1.fc6
perl-BSD-Resource-1.28-1.fc6.1
perl-5.8.8-10
perl-Digest-HMAC-1.01-15
perl-HTML-Parser-3.55-1.fc6
perl-libwww-perl-5.805-1.1.1
perl-NKF-2.07-1.1.fc6
perl-URI-1.35-3
perl-XML-Parser-2.34-6.1.2.2.1
perl-Net-DNS-0.59-1.fc6
perl-Net-SSLeay-1.30-4.fc6
perl-SGMLSpm-1.03ii-16.2.1
perl-IO-Socket-INET6-2.51-2.fc6
perl-DBD-Pg-1.49-1.fc6
perl-Socket6-0.19-3.fc6
perl-Compress-Zlib-1.42-1.fc6
perl-IO-Zlib-1.04-4.2.1
perl-Net-IP-1.25-2.fc6
perl-String-CRC32-1.4-2.fc6
perl-IO-Socket-SSL-1.01-1.fc6
perl-DBD-MySQL-3.0007-1.fc6$ rpm -qa | grep -i mysql
mysql-server-5.0.27-1.fc6
mysql-5.0.27-1.fc6
mysql-devel-5.0.27-1.fc6
perl-DBD-MySQL-3.0007-1.fc6# cpan
cpan[1]> install Bundle::CPAN
...
cpan[2]> reload
...cpan[n]> install Task::Catalyst
...
cpan[n]> install DBI
...
cpan[n]> install DBIx::Class::Schema::Loader
...
cpan[n]> install Bundle::LWP
...
cpan[n]> install Catalyst::Helper::Model::DBIC::Schema
...
cpan[n]> install Catalyst::Helper::View::TT
...
cpan[n]> install Catalyst::Model::DBIC::Schema
...
cpan[n]> install Catalyst::Plugin::Charsets::Japanese
...
cpan[n]> install Catalyst::Plugin::FillInForm
...
cpan[n]> install Catalyst::Plugin::Prototype
...$ catalyst.pl MyApp
$ cd MyApp
$ script/myapp_create.pl controller Library::Login
$ script/myapp_server.pl
...| パス | 振舞い |
|---|---|
| /catalysttest/testbookmark/ | トップページの表示 |
| /catalysttest/testbookmark/regist | 登録フォーム表示 |
| /catalysttest/testbookmark/delete | 削除確認画面表示 |
| /catalysttest/testbookmark/edit | 編集フォーム表示 |
| /catalysttest/testbookmark/regist_execute | 登録実行 |
| /catalysttest/testbookmark/delete_execute | 削除の実行 |
| /catalysttest/testbookmark/edit_execute | 編集の実行 |
sub default : Private {
my ( $self, $c ) = @_;
$c->res->body( 'The requested page does not exist. \
Please check your URL. Thank you. - msi' );
}$ cd MyApp
$ script/myapp_create.pl controller CatalystTest::testbookmark
...
$ ./script/myapp_create.pl model DBIC DBIC::Schema \
MyApp::CatalystTest::testbookmark::Schema
...
$ ./script/bookmark_create.pl view TT View::CatalystTest::testbookmark::TT
...$ cat testbookmark-mysql-create.txt
create table testbookmark (
bookmark_id integer auto_increment primary key,
url varchar(255) ,
title varchar(255) ,
record_time timestamp ,
comment text
);
$ mysql test < testbookmark-mysql-create.txt
$ mysql test
...
mysql> show tables;
+----------------+
| Tables_in_test |
+----------------+
| testbookmark |
+----------------+
1 row in set (0.00 sec)
mysql> quit
Bye
ソースコードに必要なルーチン等を追加.
左の画像は完成したもの.
ここまでのソースコードはこちら.
以下は今までの記事です.
いかちょー (2007-01-29 17:34) | コメント(0)| トラックバック(28)
いかちょー (2007-01-26 14:18) | コメント(0)| トラックバック(34)
いかちょー (2007-01-25 22:12) | コメント(0)| トラックバック(4)
いかちょー (2007-01-24 22:24) | コメント(0)| トラックバック(14)
いかちょー (2007-01-23 08:08) | コメント(0)| トラックバック(0)
いかちょー (2007-01-22 23:59) | コメント(0)| トラックバック(4)
@@ -3,3 +3,4 @@
use strict;
use warnings;
use base 'Catalyst::Controller';
+use LWP::Simple;
@@ -73,3 +74,19 @@
$c->forward('index');
}
+sub edit_execute : Local{
+ my($self, $c) = @_;
+ my %data;
+ foreach (qw/comment url title/){
+ $data{$_} = $c->req->param($_);
+ }
+ $data{title} ||= 'no title';
+ if(my $r = $c->model('DBIC::testbookmark')->\
find({bookmark_id => $c->req->param('bookmark_id')})){
+ $r->update(\%data);
+ }else{
+ $c->msg('update error');
+ }
+ $c->req->param(url => '');
+ $c->forward('index');
+}
+
現在のソースの状態はこちらからどうぞ.
以下は今までの記事です.
いかちょー (2007-01-22 18:32) | コメント(0)| トラックバック(0)
@@ -2,5 +2,5 @@
[% IF msg %]
<div class="bookmark_error">[% msg %]</div>
[% END %]
-[% FOREACH v = bookmark %]
+[% FOREACH v = testbookmark %]
@@ -13,4 +13,5 @@
# Static::Simple: will serve static files from the application's root
# directory
-use Catalyst qw/-Debug ConfigLoader Static::Simple/;
+#use Catalyst qw/-Debug ConfigLoader Static::Simple/;
+use Catalyst qw/-Debug ConfigLoader Static::Simple FillInForm \
Charsets::Japanese Prototype/;
@@ -4,4 +4,4 @@
Charsets::Japanese:
charsets: 'UTF-8'
-View::TT:
+View::CatalystTest::testbookmark::TT:
あと一歩です.
以下は今までの記事です.
いかちょー (2007-01-20 15:12) | コメント(0)| トラックバック(2)
$ svn diff
Index: testbookmark.pm
===================================================================
--- CatalystTest/trunk/MyApp/lib/MyApp/Controller/CatalystTest/\
testbookmark.pm (リビジョン 10)
+++ CatalystTest/trunk/MyApp/lib/MyApp/Controller/CatalystTest/\
testbookmark.pm (作業コピー)
@@ -23,6 +23,8 @@
use Catalyst qw/-Debug ConfigLoader Static::Simple FillInForm
Charsets::Japanese Prototype/;
+use Catalyst::Plugin::FillInForm;
+
#sub index : Private {
# my ( $self, $c ) = @_;
#
@@ -103,9 +105,10 @@
my ( $self, $c ) = @_;
# body が指定されていない場合にTT を使う
- $c->forward( $c->view('CatalystTest::testbookmark::View::TT') )
unless $c->response->body;
+ #$c->forward( $c->view('CatalystTest::testbookmark::View::TT') )
unless $c->response->body;
+ $c->forward( $c->view('CatalystTest::testbookmark::View::TT') );
# FillInForm を使ってフォームを埋める
- $c->fillform($c->stash->{fdat});
+ $c->Catalyst::Plugin::FillInForm::fillform($c->stash->{fdat});
}
1;
$ Use of uninitialized value in print \
at /usr/lib/perl5/site_perl/5.8.8/Catalyst/Engine.pm line 583.
[info] *** Request 1 (0.040/s) [27232] [Fri Jan 19 18:56:25 2007] ***
[debug] "GET" request for "catalysttest/testbookmark/" from "127.0.0.1"
[debug] Path is "catalysttest/testbookmark/"
[debug] Nothing to forward to
[info] Request took 0.274999s (3.636/s)
.----------------------------------------------------------------+-----------.
| Action | Time |
+----------------------------------------------------------------+-----------+
| /catalysttest/testbookmark/index | 0.010304s |
| /catalysttest/testbookmark/end | 0.002112s |
'----------------------------------------------------------------+-----------'
1 [% INCLUDE header.tt %]
2 [% INCLUDE bookmark_list.tt %]
3 [% INCLUDE footer.tt %]
1 <html>
2 <head>
3 <title>Test Bookmark</title>
4 <link rel="stylesheet" href="/static/css/style.css"
type="text/css" media="all">
5 </head>
6 <body>
7 [% c.prototype.define_javascript_functions %]
8 <h1 id="h1">Test Bookmark</h1>
9 <div class="menu">
10 : <a href="/">Home</a> : <a href="/regist">Regist</a> : <br><br>
11 </div>
12 <div class="left_menu">
13 <form action="/regist_execute/" method="GET">
14 <div>
15 Quick Regist bookmark:<br>
16 <input type=text id="bookmark" name="url"/>
17 [% c.prototype.observe_field( 'bookmark',
{ url => base _ 'ajax_regist/', with => "'url=' + value",
'update' => 'main' } ) %]
18 </div>
19 <div id="regist_submit"><input type="submit"
value="regist"></div>
20 </form>
21 </div>
22 <script type="text/javascript">
23 <!--
24 $("regist_submit").style.display = 'none';
25
26 function drop_hover(draggable, droppable, pcnt){alert(draggable)}
27 // -->
28 </script>
29 <div id="main">
1 <div class="bookmark_list">
2 [% IF msg %]
3 <div class="bookmark_error">[% msg %]</div>
4 [% END %]
5 [% FOREACH v = bookmark %]
6 <div class="each_bookmark">
7 <a name="[% v.comment %]" href="[% v.url %]">[% v.title %]</a>
at [% v.record_time %]<br>
8 [ <a href="/edit?bookmark_id=[% v.bookmark_id %]">編集</a> /
<a href="/delete?bookmark_id=[% v.bookmark_id %]">削除</a> ]
9 </div>
10 [% END %]
11 </div>
1 </div>
2 </div>
3 </body>
4 </html>
いかちょー (2007-01-19 20:01) | コメント(0)| トラックバック(3)
). みなさんは,どうしていますか?いかちょー (2007-01-19 16:09) | コメント(0)| トラックバック(0)
いかちょー (2007-01-18 21:35) | コメント(0)| トラックバック(3)
| パス | 振舞 |
|---|---|
| / | トップページの表示 |
| /regist | 登録フォームを表示 |
| /delete | 削除確認画面表示 |
| /edit | 編集フォームの表示 |
| /regist_execute | 登録の実行 |
| /ajax_regist | ajaxからの登録 |
| /delete_execute | 削除の実行 |
| /edit_execute | 編集の実行 |
| パス | 振舞 |
|---|---|
| /catalysttest/testbookmark/ | トップページの表示 |
| /catalysttest/testbookmark/regist | 登録フォームを表示 |
| /catalysttest/testbookmark/delete | 削除確認画面表示 |
| /catalysttest/testbookmark/edit | 編集フォームの表示 |
| /catalysttest/testbookmark/regist_execute | 登録の実行 |
| /catalysttest/testbookmark/ajax_regist | ajaxからの登録 |
| /catalysttest/testbookmark/delete_execute | 削除の実行 |
| /catalysttest/testbookmark/edit_execute | 編集の実行 |
その他のアクションは紙幅の関係で省略しますが、同じように実装していきます。本書サポートページからダウンロードしたサンプルを参考にしてください。
だそうです...「まるごと Perl!」の本を買えってことですか...orz
せっかくここまでやったのですから,次回も引き続きやってみることにします.
ちなみに,現段階までの状態で http://localhost:3000/catalysttest/testbookmark/ へアクセスしてみると...
Caught exception in MyApp::Controller::CatalystTest::testbookmark->end
"Can't locate object method "fillform" via package "MyApp" at
...../lib/MyApp/Controller/CatalystTest/testbookmark.pm line 108."
いかちょー (2007-01-17 17:07) | コメント(0)| トラックバック(13)
こんにちは,五十嵐です.消費期限切れ原料の使用の発覚に端を発した不二家の話題で,いろいろと取りざたされていますね.「食」に限らず安全・安心分野に携わる皆さんは自分のところがどうなのかと振り返ってみていることでしょう.情報セキュリティ分野もしかりです.昨今の社会情勢から考えると,情報漏洩が発生したら,死者が出かねない状況ですものね.
私が注目したいのは,事実の隠蔽です.公表の遅延という方が正しいのかもしれません.ニュースソースが新聞,テレビ,ラジオなどに限られていた時代は,情報の流れは一過性で,それが流通し,拡散していく過程で伝聞になったり不正確になったりするだけでなく,社会一般に伝わるには時間が必要でした.
しかし,現在ではインターネットがあります.ニュース記事は一過性でもなく,そこから流通する情報も正確で,掲示板,ブログ,SNS,ソーシャル・ブックマークなどのツールの普及もあって,拡散のスピードは昔とは比較になりません.情報が速く流通し拡散するということは,その情報の公表のタイミングがその後の状況に大きく影響を与えることは間違いありません.
事故が発覚して(告発されて)から公表までの遅れが許されていたのは情報の拡散スピードが緩やかだった時代のことで,今の時代の拡散スピードを考えると,事故を隠蔽していたと揶揄されても仕方がありません.不二家は明らかに公表時期の判断を誤りました.製品に対する姿勢だけでなく,情報対する姿勢も旧態然としていたに違いありません.
他社のことですが,自分の身近でも起こるのではないかと気になります.社会における情報の流通と拡散のスピードが速くなっているにも関わらず,企業内の情報の流れが相変わらず昔のままでは済まされません.事故が単なる事故として終わるのか,不祥事となるのかは経営者の判断が問われる問題であり,危機管理の一環として普段から考えておかなければならないことです.企業内の情報の流通と拡散については甘く見ているところが多いのではないでしょうか.対岸の火事ならぬ対岸の不二家にならぬように.
いかちょー (2007-01-17 14:35) | コメント(0)| トラックバック(34)
perl -MCPAN -e 'install MODULE'いかちょー (2007-01-16 23:09) | コメント(0)| トラックバック(0)
いかちょー (2007-01-16 19:57) | コメント(0)| トラックバック(3)
# http_proxy=http://my.proxy.co.jp:8080 yum -y install mysql-server
...
Complete!
# # chkconfig --list mysqld; chkconfig mysqld on && chkconfig --list mysqld
mysqld 0:off 1:off 2:off 3:off 4:off 5:off 6:off
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
#
# (cd / ; env - /etc/rc.d/init.d/mysqld start)
MySQL データベースを初期化中: Installing all prepared tables
Fill help tables
...
MySQL を起動中: [ OK ]
# # mysqlshow
+--------------------+
| Databases |
+--------------------+
| information_schema |
| mysql |
| test |
+--------------------+
# $ cat testbookmark-mysql-create.txt
create table testbookmark (
bookmark_id integer auto_increment primary key,
url varchar(255) ,
title varchar(255) ,
record_time timestamp ,
comment text
);
$ mysql test < testbookmark-mysql-create.txt
$ mysql test
...
mysql> show tables;
+----------------+
| Tables_in_test |
+----------------+
| testbookmark |
+----------------+
1 row in set (0.00 sec)
mysql> quit
Bye
$
完全なログは長いので,登録ユーザにのみ公開します.
いかちょー (2007-01-15 23:51) | コメント(0)| トラックバック(30)
いかちょー (2007-01-15 21:09) | コメント(0)| トラックバック(5)
いかちょー (2007-01-12 23:56) | コメント(0)| トラックバック(0)
$ cd MyApp
$ script/myapp_create.pl controller CatalystTest
exists "/home/ikarashi/MyApp/script/../lib/MyApp/Controller"
exists "/home/ikarashi/MyApp/script/../t"
created "/home/ikarashi/MyApp/script/../lib/MyApp/Controller/CatalystTest.pm"
created "/home/ikarashi/MyApp/script/../t/controller_CatalystTest.t"
$ script/myapp_server.plsub index : Private {
my ( $self, $c ) = @_;
$c->response->body('Matched MyApp::Controller::CatalystTest \
in CatalystTest.');
}sub default : Private {
my ( $self, $c ) = @_;
$c->res->body( 'The requested page does not exist. \
Please check your URL. Thank you. - msi' );
}
これで,"http://localhost:3000/catalysttest/hoge/" (エラーになるべきページ) とやってみると
The requested page does not exist. Please check your URL. Thank you. - msi
と表示されます.
いかちょー (2007-01-12 17:28) | コメント(0)| トラックバック(9)
$ catalyst.pl MyApp
$ cd MyApp
$ script/myapp_create.pl controller Library::Login
$ script/myapp_server.plいかちょー (2007-01-11 21:13) | コメント(0)| トラックバック(6)
さて,たまには自分の会社のアピールなどもしてみようかと思います.
ISMS 制度は前回書いた P マーク制度とは異なり,部門単位で取得することが可能です.可能ですが,全社となるとなかなか容易には行きません.弊社の場合も数年前から部門での ISMS 取得の積み重ねで推進し,全社での取得にようやくこぎつけたというわけです.
推進部門のみなさんは,社員のぶーたれ文句に対応しつつ,へとへとになりながら,進めてきたことだと思います.自社のことながら,関係者のみなさんには大きな拍手を送りたいと思います.
ISMS は取得よりも維持することが大切です.関係部門のみなさんはまだまだこれからも戦いが続くと思いますが,頑張ってください.私も自覚を持って取り組んで行きたいと思います.
(右の絵ははてなの書き初めくんで作成したものです.)
いかちょー (2007-01-11 11:13) | コメント(0)| トラックバック(5)
いかちょー (2007-01-10 15:03) | コメント(0)| トラックバック(9)
1TB となると,アドレス空間は 40 bit が必要なので,現行の32bit CPU ではすべての空間を扱うことが出来ません.8086 のようにセグメントレジスタとインデックスレジスタを用いてアドレッシングすることになるのでしょうか.
32bit CPU が主流の現行 PC がすぐに 64 bit CPU マシンに置き換わるということはあまり考えられませんが,Windows Vista の登場でそのあたりも変わっていくのでしょうか.PC よりも先にゲーム機や HDD/DVD ビデオレコーダなどの家電の方が先行して普及しそうな気がします.
そういえば,昨年末のクリスマスを境にボットの数が激減したというレポートがありました.どうやらクリスマスプレゼントで古いマシンが置き換えられ,新しいマシンになったためにボットの数が激減したということのようです.今年のクリスマスには 64bit マシンに置き換えられる PC も出てくるのでしょうか.そうなるとディスクも一気にテラの世界にはいっていくのでしょう.ディスクが数テラの容量の世界なんて,あっという間にやってくるのでしょうね.
いかちょー (2007-01-09 22:16) | コメント(0)| トラックバック(11)
いかちょー (2007-01-06 14:39) | コメント(0)| トラックバック(0)
昨日は仕事始めでした.同じ部署の皆さんと東京赤坂にある日枝(ひえ)神社に参拝してきました.赤坂に本社があった頃にもそこで勤務したことのない私は,こんなところに神社があるのも知りませんでした.有名な神社らしいですね.今年も一年健やかに過ごせるように祈ってきました.いかちょー (2007-01-05 15:12) | コメント(0)| トラックバック(6)
無言実行ということで(笑)いかちょー (2007-01-04 08:41) | コメント(0)| トラックバック(19)
月別アーカイブ
Copyright (C) 2004-2010 Nihon Unisys, Ltd. All Rights Reserved.
Powered by Movable Type Open Source