Java

ネットワークアダプタがふたつあると駄目?

JNDIのLookupでエラーになる…イーサネットのアダプタとループバックアダプタがあるので片方を無効にしたらちゃんと動いた。根本的原因と解決策はどこだろ〜?まあ開発環境で起きる現象だから無視しちゃっても良いけど。ちなみにDBCPで出たエラーはこんなの o…

カスタムタグの属性値にスクリプトレットが反応しない?

とあるカスタムタグの属性にスクリプトレットを書いた時、かっこ()で囲むとスクリプトレットが処理されない現象に初めて遭遇しました。 hoge"; %> <html:button onclick="<%= variable %>" /> カスタムタグ側で変数variableの値を取得したいので、↑こう書きました。これは正常に動いています。 hoge"; </html:button>…

BeanUtils.cloneBean(bean)でエラー

オブジェクトをディープコピーしたい時に便利なメソッド。これ、内部的には引数であるbeanの新たなインスタンスを作成して、getter→setterってやってるんですが、そのどちらかのメソッドでエラーが起きると、以降の処理を中断してExceptionをスローしてしま…

DecimalFormatとNumberFormat

単純なカンマ編集だとNumberFormatを使っていてこのコードになんの疑問も持っていなかったんですが、数値の編集ならDecimalFormatと言われて、根拠のある回答ができなかったorz // 相手のコード DecimalFormat lcf = new DecimalFormat("###,###,###,###,##0…

音楽を聴きながらプログラミング

まともにプログラミングするのは3ヶ月ぶりかな。音楽を聴きながらプログラミングするのはどれくらいぶりだか思い出せません。ん〜〜〜すっごい楽しい!ノリノリですよ(^-^)とりあえずカスタムタグで生成するHTMLをVelocityでテンプレート化する実験を開始。V…

memo

HTMLの共通的な属性のsetter/getterがあるのはBaseHandlerTagクラスで、HTMLのタグを生成するタグライブラリ郡はこれを継承している。 BaseXxxTagがBaseHandlerTagで定義された属性以外の共通の属性を生成している。 属性値はprepareXxxxxx();メソッドで分類…

POJOとAnnotation

何を持ってPlainと呼ぶのかは良く分かってないんですけど、POJOにもバージョンを付けられるかも?とか妄想しました。Annotationが入っているPOJOはPOJO1.5とか。その他は…うーん。POJO?アノテーションが開発の現場で使われるようになるには、広く知られる”…

なぜ楽をする事を考えないんだろう

yyyyMMddHHmmss形式で現在の日付文字列を取得する処理があるんですが、年月日時分秒を別々にCalendarクラスから取得して、全ての項目に0埋めの処理をしています。中途半端にスキルがあるから、こうやればできるっ!って思っちゃうんでしょうね。SimpleDateFo…

スクリプトレットはひとつにまとめてくれ

<% int i = 0; %> <% int j = 0; %> <% int k = 0; %> こうじゃなくて <% int i = 0; int j = 0; int k = 0; %> こうでしょ!そもそもなんでスクリプトレット使ってるんだろう…。

Bugdelプラグイン

id:swatさんのとこより http://www.csg.is.titech.ac.jp/~usui/bugdel/ http://www.csg.is.titech.ac.jp/%7Eusui/bugdel/demo/index.html すごいっ!これぞアスペクトの醍醐味ですよといわんばかりの素敵な機能。Eclipse上でデバック用のコードを元のソース…

Bugdelを使ってみた

行をダブルクリックするとブレークポイントじゃなくて、line pointcutがついちゃう。デバッグしたい時はBugdelエディタじゃなくてJavaエディタに切り替えないと駄目かも。もちろん右クリック→ブレークポイントの切り替えは使えますが。ん〜、おもしろい。wea…

リジュームの仕組みってどうなってるんだろう?

FTPじゃなくてHTTPの方です。例えばファイルのダウンロードさせるServletを書いたとして、そのURLからファイルをリジュームする事は可能なんだろうか?なんでファイルの途中からダウンロードできるのか、サーバ側の仕組みはどうなってるのか興味が出てきた。…

アンテナからdiff部分のみ抽出

はてなアンテナの詳細モードに出ている更新の差分(?)をRSSリーダーで読みたいなぁと思って、エクスポートする方法を探したんだけど、標準では提供されていない?そういうRSSを生成してるサービスも発見したんですけど、ちょっと自前でやってみたくなったので…

HTMLタグに埋め込むカスタムタグ

<input value="<tag:name property=""/>"> たまにこういう記述あるじゃないですか。非常に見づらいしメンテナンスが面倒だと思うんですよね。ここは無理せずスクリプトレット使っても良いと思うんですけど。タグを使わないと値の取得が難しいなら一回変数に入れるとかして、スクリプトレットを使っ…

分割したのに集約する

機能を細かく切って、クラスを分けたのに、作っていくうちに似てる部分が多くて、似てる部分をスーパークラスに書き出していったら、最終的にif文かますだけで良くなってしまい、せっかく分割したクラスがひとつにまとまってしまった…。多少同じコードが出て…

new Date().getTime()とSystem.currentTimeMillis()の違い

new Date().getTime() == System.currentTimeMillis() 結果はtrueでした。JavaDocを見ると厳密には違いがあるようですけど、具体的にどう違うのかはつかめず。たぶんどっちでも欲してる値は取れると思うので、S2に合わせて前者を使おうと思います。

XMLBeans

http://xmlbeans.apache.org/ 後で入門するかも。3分くらい見た感じ、XMLSchemaが必須なのかな?読み書きがかなり便利みたい。 #設定ファイルをポンと読むような簡単なのには重たいかも。本格的にXMLを読み込むならすごい便利かも。 #WEB+DB PRESSに載って…

java.lang.ThreadDeath

Tomcat5になってから、JSPで構文エラーがあるとThreadDeathになる事がある。うーん?

どこからも使われていないクラスを探すには?

そんなソフトがあったと思うんですけど、見つからない<(・・ )三( ・・)>

Daoはプロジェクト固有の自作品が…

あったりしません?(笑) Hibernateを見る回数より、自作を見る回数の方が多いんですけど。自作よりHibernateを使いたくて、HibernateよりiBATISを使いたくて、iBATISよりS2Daoが使いたい!SELECT文一発発行するのに、最も手順が簡単なDaoが好きです。作るフ…

通信プログラムのマルチスレッドで罠

サーバに接続するクライアントがマルチスレッドで作ってあって、複数同時接続できるようになっていても、接続を受けるサーバがシングルスレッドで通信処理に待ち行列作ってたらクライアントがマルチスレッドな理由が全然無いですーorz。原因が判明した時、み…

Listの罠

今日、Listを使ってみましょう!って話をしてたらこんなコードを書いていた人がいたんですよ。 List list = new List(); ええっ?!JDK5.0からインターフェースからクラスに変わったのか!?と思ったら import java.awt.List; ってorz。EclipseでCtrl + Shif…

parseBoolean

BooleanクラスにparseBooleanメソッドが増えてました。つまり従来のコードで言う String bool = "true"; boolean isBoolean = "true".equals(bool); の変数boolがnullだった場合も安全に値を評価できるようになったってことですね。

オートボクシングの罠

String string = "ほげ"; ができるなら Integer integer = 100; もできますよねって、後者はJDK5.0が入っているからできてしまうだけで、意味合いが全然違う事を、きちんと説明しなければいけない時代になりました(苦笑)オートボクシングとはプリミティブ型…

TigerのJWS

Javaアプリケーションキャッシュビューワに最初からOpenSymphonyのOSWorkflow Designerが入っていました。これは知らなかった。あとLookAndFeelの切り替えテストアプリのベンダー名が「Hoge Hoge, Ltd.」になってる!

Staticインポートはjava.lang.も必要

import static System.out; // エラー import static java.lang.System.out; // 正しい コンパイルエラーの内容 Test.java:3: シンボルを見つけられません。 シンボル: クラス System import static System.out; ^ Test.java:3: static import はクラスとイ…

java -version

と打ち込んだら、なにやらベンダーの名前が…。うわー、今までSun純正を使っていたと思っていたのに、突然この名前が出てきますか。知らない間に侵食されていたような気がして、ちょっとショック(笑)もうしばらくは使わないからアンインストールしておこう。

メインのJDKを5.0へ

サブマシンには5.0を入れていたのですが、メインのマシンにもインストールしました。バージョン1.3, 1.4, 5.0が入り乱れている環境が完成しました。特に問題なく使えています。以前、複数のバージョンをインストールして四苦八苦した事があり、クラスパスと…

日本語でネタを作れ

日本語のテストをやっていて、これって実はネタが作れるかも!?と思ってみましたが、ネタにならず…。下のソースコードはちゃんとコンパイルして実行できます。日本語でメソッド名や変数名が書けるんですけど、Javaを使った実務で、日本語を使っているのは見…

ラベル付きfor

入れ子になったループを抜ける方法。パって書いたらこんな風に書いてた… for (int x = 1; x って、なんだか知らないけどVBとJava混ざってますから!上記記述は大間違いで、正しくは以下の通りです。 LOOP_X: for (int x = 1; x この書き方は手抜きなんですけ…