Googleカレンダー専用アプリ GCal.app

先のエントリにも書いたけど、Google カレンダーが思いのほか使いやすそうなので、しばらく使ってみようかと。 せっかくなので、Googleカレンダー用の専用アプリもインストールしてみました。http://chip.cuccio.us/projects/gcal今のところ、体感的には Saf…

PLS-00231: 関数XXXXXXはSQLでは使用できません、の原因

ファンクションXXXXXXを宣言しているにもかかわらず、 PLS-00231: 関数XXXXXXはSQLでは使用できません。このエラーが発生。どうやらfunctionというのはprocedureと違って、パッケージ内プライベートとして作成することはできないみたい。なので、function XX…

PL/SQLでジェネリックなリストを使う

PL/SQLにはTable型というものがあり、これは簡単にいうと「ジェネリック型のリスト」ののような感じです。 declare type listClass is table of 社員%rowtype; list listClass; begin select * bulk collect into list from 社員; end;このように使えるみた…

EclipseでEmacs風キーバインド Ctrl+M

EclipseでEmacs風のキーバインドをするときの注意点。基本的には Scheme を「Emacs」にするだけで大体解決するんだけど、自分好みにするにはいくつかカスタマイズが必要。 Ctrl+H[In Window]の[Delete Previous]を割り当てる Ctrl+Spc[Text Editing]の[Set M…

イマドキのコーディング規約

7年前に、僕が入社したときに教えられたコーディング規約を(特に不満もなく)ずっと使ってきたんだけど、最近になっていくつか変えてもいいかな〜って思える点がでてきました。例えば、、、 1行の文字数は120〜130文字ぐらいまでOK(画面が広いので) 変…

Windows Server でファイル共有するのにちょっとてこずる

会社の Windows Server でごく簡単なファイル共有(ドメインとか一切なし)をやろうとしたんだけど、ユーザごとにアクセス権の設定でちょっとつまずく。 ユーザUUをグループGG追加し、フォルダFFにグループGGのアクセス権を設定した状態で、別のPCからユーザ…

JavaScriptのyieldを使ってイテレータを作りたいのだが

JavaScript1.7の yield 文を使ってイテレータを作りたいのだが、ジェネレータの中からは this が参照できないみたいで悩む。理由はなんとなくわかるけど、結局、解決策はわからず。 Array.prototype.iterator = (function() { for (i = 0; i yield this[i]; …

LDIFDEコマンドで、ユーザの追加を行う

Windows2003Server上で稼動しているActiveDirectoryに、コマンドラインからユーザを追加する仕事で悪戦苦闘。なんとか調べながらできたので、覚えてる限りでノウハウをメモ。 データを追加する場合は、objectClassという属性が必須 パスワードを登録するには…

JavaScript に void 演算子というものを発見

変数 a があったときに、a を評価させない演算子。 b = void(true) ? true: false;上記のように書いた場合、b には false が入るようだ。実用的な使い方としては、 <a href="javascript:document.forms[0].foo.value = '1';" >リンク</a>というなことをしたいときに、このままだと '1' に遷移してしまうので、 <a href="javascript:void(document.forms[0].foo.value = '1');" >リンク</a>こうし…

続:JavaScriptを使ってHTMLのインクルードを実現しつつ、JSPでもインクルードできる方法

前のエントリで書いたHTMLのインクルードの改良版。だいぶすっきりできました。 ●呼び出しイメージ <script type="text/javascript" >//<% document.include("a.txt",request,response); //%> </script> ●スクリプト本体 <script type="text/javascript" >document.include = function(filename) { this.include.seq = (this.include.se…

JavaScriptを使ってHTMLのインクルードを実現しつつ、JSPでもインクルードできる方法

先のエントリにJSP版。これはあまりいけてないなあ。 ●呼び出しイメージ <script type="text/javascript" >//<% include("a.txt",request,response); //%> </script> ●スクリプト本体 <script type="text/javascript" >var request; // ←スクリプトエラーとならないように宣言 var response; function include(filename) { include.seq …

JavaScriptを使ってHTMLのインクルードを実現しつつ、PHPでもインクルードできる方法

先のエントリを書きながら、そのままPHPのインクルードと併用できる書き方を思いつきました。 <script type="text/javascript">// こうしておけば、ブラウザで読み込んだときはJavaScriptとして動くし、サーバで動かすときはPHPのインクルードとして動く。これはもっと応用できるんじゃなか…

JavaScriptを使ってHTMLのインクルードを実現する方法

純粋なHTMLだけでインクルードを実現するためのスクリプト。 自分の環境でちょっと試した限りではちゃんと動いてそう。 ■呼び出しイメージ <tr><td> include("foo.txt"); ←これだけ </td></tr> ■出力用JavaScriptfunction include(filename) { include.seq = (include.seq)? in…

タグリブのrtexprvalue属性は、true でいいんじゃないかと

Taglibを作成するときに、各パラメータに指定するrtexprvalue属性についてです。 デフォルトではこの属性は false=動的な値を許可しない、となっているんですが、動的な値を許可したくないときって、僕の経験上、ほとんどないです。気になったので、Servlet…

はじめてのメールクライアント作り

このたびWebメールのサイトを構築することになって、IMAPの仕組みなどをいろいろ調査。それでわかったのですが、、、IMAPでメールを送信したら送信済みトレイにメールが入るのは、メールクライアントがやってる機能なんですね。これまでてっきりメールサーバ…

SELECT INTO で0件だとエラーとなってしまうので

PL/SQLでSELECT INTO 文を使った場合、検索結果が0件だとエラーとなってしまうので、別な書き方を模索してみました。SELECT INTO の場合 declare num number; begin select id into num from .....; end;以下の書き方が一番スマートではないかと。 declare …

Javaの無名クラスで、final宣言しないといけないのは何故?

Java の無名クラス(他の言語でいうところのクロージャ?)では、外のスコープのfinal宣言されていない変数を参照しようとするとコンパイルエラーとなってしまう。 String name = "kenpoco"; new Object() { public String toString() { return name; // コ…

Mac OSXで Eclipse使ってたら勝手にズームする問題

Eclipse使ってコーディングしてると、勝手に画面がズームしてしまうことがときどきあって、これまではキーから手を離すと元に戻ってたから気にしてなかったんだけど、この度、戻らなくなってしまったので調査することに。どうやらユニバーサルアクセスの、ズ…

S2Daoの不思議

S2Daoでは、実装クラスを記述していない(=誰もインプリメントしてない)のに、インターフェースのインスタンスが取得できるのは何故だーー?? S2Container c = SingletonS2ContainerFactory.getContainer(); IDao dao = (IDao)c.getComponent(IDao.class);…

ストアドプロシージャでREF CURSORを渡すには

マニュアルを読まずにネット見ながらコーディングしてたら意外に苦戦。忘れないようにメモ。 type curtype is ref cursor; procedure foo(cu in curtype) is row table_name%rowtype; begin loop fetch cu into row; exit when cu%notfound; -- any process …

OracleのカーソルはSELECT文の理想的な形

久しぶりにPL/SQLでカーソルを使ってプログラミングすることがあって、思い出したり調べたりしながらやりました。で、思ったのだけど、PL/SQLのカーソルってこんなに便利だったっけ? DECLARE CURSOR cu IS SELECT...; BEGIN FOR row IN cu LOOP row.column_…

position: relative;のテーブルの枠だけが表示されてしまう

IEで、非表示にしたはずのテーブルの枠だけが表示されるというなぞの現象。結局、原因わからず。 <html><body> <a href="#" onclick="document.getElementById('div1').style.display = 'block'; document.getElementById('div2').style.display = 'none';">1を表示(2は非表示)</a> <a href="#" onclick="document.getElementById('div2').style.display = 'block';">2を表示</a> <…</body></html>

JspSourceDependent.getDependants() で悩む

とある案件で開発環境を構築していてはまったメモ。 既存のプロジェクトをTomcat5.5上にデプロイし、JSPを表示しようととしたら、、、 Generated servlet error: The return type is incompatible with JspSourceDependent.getDependants()JSPの問題ではなさ…

コメントには意図(why)を書こう

アジャイルプラクティス 達人プログラマに学ぶ現場開発者の習慣作者: Venkat Subramaniam,Andy Hunt,木下史彦,角谷信太郎出版社/メーカー: オーム社発売日: 2007/12/22メディア: 単行本(ソフトカバー)購入: 35人 クリック: 995回この商品を含むブログ (291…

初めてのブログ

ソフトウエア開発に関する雑多なことを書いていこう。