Java
何かを受け取って何かの処理をして何かを出力するってインターフェースとその実装を作っていたらTと?だらけになってわけがわからなくなった。実際に動くコードを見ても抽象的すぎて全く何やってるか分からない。疎結合とかそういうんじゃなくて隠蔽してるだ…
全てのビルドのローカルリポジトリを変更するならsettings.xmlに <localRepository>/.m2/repository</localRepository> のように指定すれば良いですが、ビルド単位に変更したい場合はビルドの実行時引数に -Dmaven.repo.local=/.m2-ut/repository のように指定すればできました。Hudsonはプロジ…
地道な事をやるしか無いのかな?JavaDocのソース見るのとネットを探してみよう。
簡単な方法は無いもんかと模索中。ぱっと思いついたのを列挙してみる。 put(key, value)のコードをハードコーディング key = valueのプロパティファイル形式で指定 <key>value</key>のXML形式で指定 OGNLで指定 JSONテキスト形式 オブジェクトを渡すのではなく、あくま…
相対パスで指定するからクラスパスから良きにはからって読んでくれ!が私の要求(笑)Velocityはいつぞや調べたので覚えている。velocity.propertiesにこう書けばOK。 resource.loader=class class.resource.loader.class=org.apache.velocity.runtime.resourc…
しばらく触ってないとすっかり忘れますね(^_^; Test test = (Test) container.getComponent(Test.class); キャストっているんだっけ?と思って過去の成果物を見てみると、みんなAutoRegisterでコンポーネント登録してたからgetComponentなんて書いてない。た…
Axis1.4を使ったWebServiceの呼び出しでベーシック認証を通過する方法です。org.apache.axis.client.StubクラスのJavaDocに方法が書いてありました。Stubクラスの_setPropertyメソッドを使ってユーザ名、パスワードを設定せよとのこと。WSDL2Javaを使って生…
なぜだ・・・いったいどこを見て1.4って書いてるんだろう?普通にEclipseのプロジェクトを作った時は5.0になってたので。maven-compiler-pluginの方には1.5と定義してあるけどこれを参照してくれるわけではないようだ。jst.webは2.4になっているから良いとし…
すごく面白いバグに出会いました!以下のロジックは「messageが空でない場合messageをログに出力する」というロジックですが、必ずログが出力されます。ぱっと見ただけでこのバグに気づくでしょうか? if (!StringUtils.isEmpty(message));{ log.error(messa…
OPEN SYMPHONYからリリースされているCompassにLucene用のJdbcDirectoryクラスがあった。DbDirectoryなる実装はいくつか見つけたのだけれど、果たしてインデックスをDBに格納するのが有効なのかどうか。インデックスの情報ソースがファイル以外の場合はデフ…
Log4J 1.3で追加されたプロパティApplicationを見て動的にlog4j.propertiesを読み替えてくれるか、出力ディレクトリを分けられたら最高。そこで登場するのがPropertyFilterだったりJoranConfiguratorだったりするのか!?1.3で追加されたJoranConfiguratorを使…
同じファイルに書き込むとファイルが壊れる現象に遭遇しています。多重で起動したプログラムが同じlog4j.propertiesを参照しているので、同じファイルにログが書き込まれます。普段は時系列で多重のプログラムが同じログを出力していますが、たまに時系列が…
log4j.propertiesに下記を定義するだけ log4j.category.org.apache.axis.transport.http.HTTPSender=DEBUG, カテゴリ名 TCPモニタを使いたいがためにAxisの生成するスタブのAddressを書き換えたり、hostsを書き換えなくても、上記設定で楽にロギングができま…
Subversionから拾うと時間かかる。compiler7-b02・・・えっ。そういやクラス数が多いとコンパイルに時間かかるからもっと早くならないかな。マルチでコンパイルしてくれるとか。普段は差分コンパイルだから良いけど、一度でもフルビルドされるとしばら〜〜〜…
minor code 202が役に立たないorzぜんっぜんエラーの内容が分からない。なぜここまで分からないように作ってあるんだ(T_T)
サーバ側に実装が無いなんて言ってる時点で間違いに気づくべきだった!!パラメータに「out」って指定してるじゃないの…。というわけでサーバ側の実装に戻り値を設定するコードを埋め込んだらテストが全部通りました〜。ん〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜…
これほど単純なものの呼び出しに失敗するという事は、根本的に何か間違っているという事だ。解決へ一歩前進〜。 module Challenge { interface Test { const long ID_LEN= 48; typedef octet ID[ID_LEN]; long getId(out ID id); }; };
org.omg.CORBA.UNKNOWN: vmcid: SUN minor code: 202 completed: Maybeこのエラーでつまづきまくりです。inのbyteはOKで、inoutのbyte(Holder)は通信エラーになる・・・。inの時と同じデータを設定しているのになぜだ・・・原因究明が難しい。とりあえず海外の情報…
多重参照でエンコーディングされると困る場合に、多重参照での送受信を不可に設定したいのだが、WSDDの中のglobalConfiguration要素でsendMultiRefsをfalseに設定してもWSDLに変化無し。多重参照のEnvelopeを送ってもちゃんと返ってきてしまうし、生成された…
某アプリケーションサーバでのNamingServiceの取得方法ネーミングサービスのあるサーバ内だと動作するが、他のマシンからだとネーミングサービスが見つからない場合、hostsにサーバのIPとホスト名を設定してみると動く。ORB.init()の引数はこんな感じ ORBIni…
不明。調査中。Java2WSDLがあるので手書きでも大丈夫だけど…めんどくさいし、インターフェースに項目を追加したら追記するの忘れそう。アノテーションで指定しておいてWSDLを自動生成する事はできるけど、そんな事すでに誰かやってそうだからとりあえず調べ…
完全にログを止めたい場合は今までNullAppenderを指定していたんですが、ログレベルに「OFF」って書けばよかったんですね。。。。。今日初めて知りました。ログ止めたんだからファイルも作るなという時はNullAppenderしかないのかなぁ。OFFって書いてもFileA…
Axis1.4の話です。WSDL2Javaの引数に-pを指定して、全てのオブジェクトのパッケージ名を指定していたとします(実際は全ての名前空間を指定したパッケージで上書きするという事)。そうすると同じ要素名で違う名前空間が指定されているオブジェクトは作成でき…
OracleのNUMBER型は、Numberクラスなのはまだ良いとして、TIMESTAMPが、oracle.sql.TIMESTAMP型になるのはどうなのよ・・・。とりあえず使う分には問題ないけど、なんか気持ち悪い〜。DbUtilsはResultSetから値を取り出す時に必ずgetObject()だからいけないんで…
Tomcatに設定されているデータソースをJavaアプリケーション(具体的にはJUnit)から参照したかったのですが、デフォルトではできないという事で、JNDIUnitTestHelperというのを発見しました。http://www.junit.org/news/extension/index.htm#JNDIJNDIUnitTest…
Betwixtで調べ中…けっこう良きにはからってバインディングしてくれるのだが、タグ名の先頭が大文字だとバインディングしてくれない。これを一気に解消するために名前←→バインディングルールの紐付けをやっている所を見ているのだけど、根が結構深くてどこに…
深い関係にあるのね。バインディング時のルールは後から追加できるような感じがするから、よきにはからってバインディングルールを追加してみたいと思います。今日の所は両方のソースをながめただけ。次に時間ができた時にルール作りをしてみたいと思います…
ふぅ〜ひさびさに脳みそに汗かいたね!(笑)とりあえず生成されたオブジェクトをAxisで投げた時に送信されるSOAPエンベロープが送られてきたテストデータと100%一致(ネームスペース名は除く)したのでこのツールは完璧にXML→オブジェクトのバインディングがで…
オブジェクトをXMLに変換する際、下記4パターンの定義がシステムによって違う事で困ってます。 null→空タグ null→タグ無 空文字列→空タグ 空文字列→タグ無し ようは、からっぽの定義なんですよね。プログラム的に見ればどちらも「空っぽ」として扱えばいいと…
いやー、家に帰ってきたらぱっと分かっちゃった。なんでメソッドリストの中でコレに気づかなかったんだろう?って感じ。Class.getComponentType()で取れるのね。オブジェクト配列のインスタンスを作るならArray.newInstance(Class,length)で。んー、今日はす…