java
Logbackの、FixedWindowRollingPolicyを使って、日時ローテートしたいときに使えるTriggeringEvent。 package com.example; import java.io.File; import java.util.Date; import ch.qos.logback.core.Context; import ch.qos.logback.core.rolling.Triggeri…
Tomcat6を使ってCometができるようなので試す。 http://www.oki.com/jp/oss/document/tomcat/tomcat60-docs-ja/aio.htmlCometの通信を扱うクラスは、org.apache.catalina.CometProcessorインタフェースをしたサーブレットとして用意する。 import java.io.IO…
S2Pagerを使っていたら大量な検索結果のあるSQLで、OutOfMemoryError。原因を調べていたら、これ。http://otndnld.oracle.co.jp/document/products/oracle10g/101/doc_v5/java.101/B13514-02.pdf via http://otn.oracle.co.jp/forum/thread.jspa?messageID=1…
jad -s java -r -nonlb -lnc -f -o
ストアドの定義 create or replace procedure update_syohin ( pi_syohin_id in number, pi_syohin_name in varchar2, pi_remarks in varchar2, po_syohin_count out number ) is begin select count(syohin_id) into po_syohin_count from nms_t_syohin_1 w…
OSの設定は、8192 にしてるのに、WebLogicが以下のログを出力しており、なぜかファイルディスクリプタを、1024 しか使用してくれない。 ####JST> > <> ####JST> > <> どうやら、過去に、1024に制限するようなパッチを入れたらしい。 commEnv.shの中の rese…
これは便利だ。 http://java.sun.com/j2se/1.5.0/ja/docs/ja/tooldocs/share/jmap.htmlEden/From/To領域それぞれの値とか出してくれるし。 クラスごとのオブジェクト数とサイズも出してくれる。 この出力結果をパースしてグラフ化してくれるツールがあれば、…
ヒープ最大サイズ512Mが、1時間程度で食いつぶされて。 数秒ごとにFull GC。 そして、CPU100%。OutOfMemoryError。 明らかにまともな状況ではないと思われる。 けど、Weblogicのフレームワークをいろいろ使っている上*1に、実装に関わってないから、よくわか…
http://jp.bea.com/e-docs/wls/docs81/programming/classloading.html クラスローダの一部だけを更新することはできない。更新したいときは全て捨てる必要がある。 weblogic.xmlのprefer-web-inf-classesでWeb アプリケーションに関連するClassLoaderのロー…
MessageFormatとかDateFormatってスレッドセーフじゃないのね。 今まで、スレッドセーフだと思い込んでた。。 前の会社でやってたシステムで、スレッドセーフだと思いこんだまま、作りこんじゃってるのがあるぞ。 まぁ、今更言ってもどうにもならないけど。 …
使っていないと、すぐに使い方を忘れてしまうのでサンプルで作ったプログラムごとメモしておく。 サーバプログラム import java.net.*; import java.io.*; public class SocketListenerSample { public static void main(String[] args) throws Exception { …
デフォルトで使われているディレクティブは(if、foreach等)、org/apache/velocity/runtime/defaults/directive.properties に定義されている。 directive.propertiesの内容は以下の通り。 directive.1=org.apache.velocity.runtime.directive.Foreach direct…
org.apache.velocity.runtime.Parser#parse( Reader reader, String templateName )
SQLインジェクションされないようにPreparedStatementを使います。 パフォーマンスがよくなるのでPreparedStatementを使います。 といっても、PreparedStatementをこんな風に使われてたら何の意味も無い。 String sql = "SELECT * FROM HOGE WHERE ID='" + i…
インナークラスを定義して、 public class Hoge { public class InnerClass() { } }Hogeクラスのインスタンスを作っから、 Hoge hoge = new Hoge(); hoge.new〜する。 Hoge.InnerClass innerClass = hoge.new InnerClass();hoge.new の部分が何気にスクリプ…
http://java.sun.com/j2se/1.4/ja/docs/ja/guide/jdbc/getstart/statement.html#999472知らなかったのでメモしておく。OracleでLIKE構文中にエスケープ文字を指定する場合は以下のように書く。 〜 WHERE name LIKE 'hoge\_moge' ESCAPE '\'でもこれはOracle…
Javaで、シグナルを扱えないものかと思い、探してみたらあった。 sun.miscだけど。実装は簡単。 SignalHandlerを実装して、Signalのhandleに登録するだけ。 import sun.misc.Signal; import sun.misc.SignalHandler; public class SignalTestMain { public s…
□CoolなEclipseプラグイン(5) http://www.atmarkit.co.jp/fjava/rensai3/eclipseplgn05/eclipseplgn05_1.html QuickRExプラグイン Log4Eプラグイン CrossJ PropEditorプラグイン 3つともよさげ。 プロジェクトで地味に活躍しそう。
http://www-6.ibm.com/jp/developerworks/java/050325/j_j-jester.html Jesterはソースコードを変更して再コンパイルし、テスト・スイートを実行して、何かが壊れないかを調べるのです。例えば、1を2に、あるいは if (x > y) を if (false)に変更します。 ほ…
セッションがつまらないので途中で帰宅。眠い。 まじめに聞いてたのは、Linda DeMichielの基調講演だけ。 内容はこれまでのEJBの変遷とEJB3.0について。 昨日のCraigさんの話と似た展開。 今までEJBの新しいリリースに興味もつことってなかったんだけど、EJB…
http://jp.sun.com/jc2005/index.html明日明後日はこれ。1日目は丸一日Annotation。 眠くなりそうだ。
とあるJavaで構築されているサイトで、HTTPS でアクセスさせたいのに、あるページにアクセスすると、HTTPになっちゃう事象発生。 あるページってのは、リダイレクトを使ってるページ。 原因は、SSLアクセラレータとアプリが上手く連携できるようなつくりにな…
管理サーバへのアクセスを特定のポートかつ、SSLでのみ接続可能にするために、管理ポートを有効にする。 http://edocs.beasys.co.jp/e-docs/wls/docs81/adminguide/network.html#1158445 余裕!と思ってたら、はまったので、めも。 最初の設定は以下のとおり…
オブジェクトを登録するとこで、Class#getDeclaredMethods()呼んでる。。例えば、 public Parent { public String getLastName() { return "山田"; } public String getFirstName() { return "太郎"; } } public Child extends Parent { public String getFi…
JSONRPCBridgeには、register〜というメソッドがいくつかある。 それぞれを以下に説明する。 void registerObject(Object key, Object o) oのインスタンスメソッド全てをリモートメソッドとして登録する。 これは先の例でも使った。 void registerClass(Stri…
非同期でリモートメソッドをコールする。 先のJSPのJavaScript部分を以下のように書き換え。 jsonrpc = new JSONRpcClient("/jsonrpc/JSON-RPC"); var callback = function(result, error, profile) { document.write(result); } jsonrpc.hello.sayHello(cal…
http://oss.metaparadigm.com/jsonrpc/ から、ダウンロード。JSON-RPCは、JavaScriptからサーバサイドのJavaオブジェクトをリモート呼び出しするライブラリ。サーバサイドのJavaオブジェクトを以下のようなJavaScriptのコードから呼び出せる。 var jsonrpc =…
via 2005-02-23 どれこれも楽しげ。 明日、触ってみよう。
POMは、プロジェクトってこういうものよってのをあらわしたモデル。 プロジェクトには、ソースがあったり、バージョンがあったり、テストケースがあったりするものよ、と。 で、project.xmlは、具体的な値(ソースのディレクトリだったり)を、そのPOMのモデ…
■プロジェクトディスクリプタのリファレンス http://maven.apache.org/reference/project-descriptor.html ■プロジェクトディスクリプタのXML-Schema http://cvs.apache.org/viewcvs.cgi/maven/src/xsd/maven-project.xsd ■ディレクトリのレイアウト http://…