java

MavenやNetBeansでJunit実行時に日本語メソッドが文字化けするのを対策する。

NetBeansでテスト流したらもじばけしてた。 よくみたらMaven等でテスト実施時にアスキー変換されてしまっている。 こんなかんじ ------------------------------------------------------- T E S T S -----------------------------------------------------…

Selenium WebdriverのFireFox,Chrome,IEの初期設定およびProxy設定

想定環境はこんな感じ Windows7 64bit Selenium 2.53.0 Proxy 127.0.0.1:28080 各Driverはpj/driver/以下に保存 FireFox FireFoxはDriverの個別DLは不要。 FirefoxProfile profile = new FirefoxProfile(); profile.setPreference("network.proxy.type", 1);…

SeleniumのDriver起動時に認証つきProxyの認証画面が出てきて困る。

これまたバッドノウハウです。もう世界からProxyなんてなくなれば良いのに(嘘Seleniumでテストを作るときにDriverがブラウザを立ち上げますが、 認証つきProxyサーバを使っている場合認証ポップアップが出てしまってテストがとまって不便。 なので対処しま…

JAXRSで@QueryParam()でObjectを受けたい

JAXRSでPostだとこんな感じでパラメータをObjectで受けれるじゃないですか、 @POST @Consumes(MediaType.APPLICATION_JSON) public Response login(LoginForm form) { これをGetでもやりたいとおもったら結構困ったのでメモ 普通のGetはこんな感じ。そもそも…

JAX-RS2.0でRESTサービスを作る際にヘッダーを指定する

RESTサービス作るのを楽にやりたいとおもったらまあJava使わないのですが、 大人の事情でやっぱJavaだよねということはよくあり、そんなときにはJAX-RS (Java API for RESTful Web Services) がめっちゃ便利です。 NetBeansでポチポチーするだけでRestWebサ…

Javaで簡単にかつ正確に文字コード判別する方法

Webページなりファイルなりをいろいろ読み込んで処理するときに文字コードめんどくさいですよね。 大切なものなのですが、大半の人にとって文字コードは大事な関心事ではないので さくっと簡単に、かつミスのないように実装したいところです。そう考えるとJa…

a==b がTrueで a.equals(b) がFalseの状態を作り出す

Javaで「a==b がTrueで a.equals(b)」というへんな状態になったのでメモ。 一般的に ・a == b だったら a.equals(b)は必ず成り立って ・a.equals(b) のときには a == b とは限らないというのがよくある話ですよね。 しかしこれが逆になるへんな事象がありま…

各種プロダクトのProxy設定方法まとめ。

各種プロダクトのProxy設定を良く忘れまくるのでまとめてみた。 基本的にJava系をメインとしたありがちなSIer環境を想定しています。 ・自端末はWindows ・Proxyがないとインターネットにはアクセスできない ・ProxyにはユーザーID,パスワードが必要 ・社内…

Javaのクラスファイルのバージョン。

長く生きていると java.lang.UnsupportedClassVersionError: GaraponTest (Unsupported major.minor version 50.0) みたいなエラーがたまにあって、このクラスファイルのバージョンなんだよっておもって javap -v を打つんですが、そこにでてくるバージョン…

NetBeanのJVM creation failedに対応する。

うぉー!!こうすればよかったのか!!! NetBeans7に変えてからちょいちょい起動時に出るようになった 「JVM creation failed」の対応策はこんな感じでよいらしい。 # Options used by NetBeans launcher by default, can be overridden by explicit # comm…

JSFでエラーハンドラーに複数のExceptionがわたることがあるのか?

JSFのExceptionハンドラーはExceptionQueuedEventがIteratorに入って送られてくるのですが、 ExceptionEventが複数存在するような状況ってどんな状況? 色々考えたけど思いつかない。 JDBC初期のリザルトセットが複数戻る場合に備えたVVHと同じようなものな…

autoboxingでNull

autoboxingでnullはNullPointerになる。 当然だけどこのためにチェック書くのはちょっと微妙だな〜

リダイレクトするとFlash消える

edit?faces-redirect=true とすして遷移するとFlash消えるのね。おぼえとこ

ドットを連続するとだめ。

JSFさんのエラーの分かりにくさは異常! com.sun.el.parser.ParseException: Encountered "" at line 1, column 20. Was expecting one of: at com.sun.el.parser.ELParser.generateParseException(ELParser.java:2252) at com.sun.el.parser.ELParser.gener…

JSFで確認ボタン色々

JSFだとFormに行く先が決まっていてSumbitするという感じじゃなくてボタンに行く先のアクションを指定します。 <f:form> ←Formにアクションを設定しない。 <h:input value="#{LoginBean.name}"/> <h:commandButton action="#{LoginBean.entry}"/> ←ボタンやリンクにアクションを設定 </f:form>なのでJavaScriptでForm.Submitどうすんだろと思っていたら <h:form id="LoginForm"> </h:form>

JSFのELとJSP+JSTLのELは別物だよ!

JSF EL: #{facesContext.XXX} JSP+JSTL: ${XXXX.XXX} 全く別物なので,カスタムタグの属性は,JSF ELのみ受け付けるものやJSP ELのみ受け付けるものがあり注意が必要。 「#」は元々JSFの仕様だったんだけど、JSPでも使えるようにして、Unifided ELって名前に…

OracleTechenologyUpdateにいってきた

http://www.oracle.co.jp/events/jpm100819/ 先週の話ですがいってきた。以下メモメモ JavaSE7のポイント Java in the Boxの櫻庭 祐一さん。Java in the Boxにはかなりお世話になったなぁ、、 そしてプレゼンはJavaFxで動いてるというのも面白かった。こうい…

Androidメモ

アンドロイドの開発は非常に楽ですね。 エミュレータの起動が遅いけど一度起動してしまえばデプロイはそのまま出来るし。 ボタンを作ったのに何か動かないと思ったらリスナーを間違えていたりとか。 楽すぎて楽しくなる。 スタックトレース等のログを見るに…

Javaカバレッジ取得はEclEmmaが便利

t_wadaさんがつぶやいていたEclEmmaが結構便利。 レガシーコード改善のデモで使ったテストカバレッジプラグインはこれです URL #tddbc2010-07-11 12:52:44 via webいいところ Junitを実行するのと全く同じ設定で実行できる(Non-invasive) 軽く軽快に実施で…

DBMS_OUTPUTの出力をJavaから取得する。

PLSQLつかってますか? あまり使っていませんが私は結構好きな言語です。 でもこの言語ってテストしにくいんですよね。 最近SQLDeveloperがだいぶ良くなってデバッグとかも快適になりましたけどまだまだ自動テストとかは未整備です。 そのため私はJunitからP…

System.ExitするとFinallyは呼ばれないよ!!

まあ当たり前なんだけど。 まあSystem.Exitなんか使うなって言う話です。

XMLパーサーがUnknownHostExceptionを吐く場合はEntityResolverでローカルのDTDを読み込ませる。

XMLパーサーをスタンドアロンの端末で動かそうとするとDTD定義を取得しに行ってUnknownHostExceptionを吐きよるのでそんな場合はEntityResolverでローカルのDTD定義を読ませるといいと知った。こんな感じでEntityResolverを実装して private class StrutsRes…

迷路の最短ルートを探索する

ネットでちょっと話題になっていたのでいまさらですがやってみた。 人材獲得作戦・4 試験問題ほか: 人生を書き換える者すらいた。できるだけわかりやすく書こうとしたんだけど結局わかりずらくなってしまった。 移動できるポイントを配列に持ってループしな…

SecurityManagerってすごい

SecurityManagerって結構使える子だったんだね。 System.exitをハンドリングしたりできる。 ニッチなニーズだけどこれは便利じゃ。

synchronizedブロックに使用されているStaticObjectが変更される場合、実質synchronizedされていない

synchronizedブロックに使用されている変数が書き換わる場合それはスレッドセーフではありません。(まあ当然です)例えばこれはNG class TargetDate { private static String staticCal = "書き換えられるかな?"; public void set(String s){ staticCal = …

特権計算ってなんだ?

BigDecimal#equalsを眺めていたらよくわからん実装されていた。 /** * Compares this BigDecimal with the specified Object for equality. Unlike * {@link #compareTo compareTo}, this method considers two BigDecimals * equal only if they are equal …

java.math.BigDecimalが一部の計算結果を誤る

IBMから不具合情報が出ていました。 http://www-06.ibm.com/jp/domino01/mkt/cnpages1.nsf/page/default-ywa00002 JDKで計算結果のミスとか結構深刻です。しかしIBMJDKのみの問題なのでSun Java SDKを使用するOS(SolarisやHP-UX)では発生しません。なのでそ…

文字リテラルの謎が解けた。

友人とまさゆき地図でレベル上げしたりS*1A*2のLV99地図での宝箱漁りしたりした帰りに焼肉食いながらJVMとか.Netについて語り合っていたのですがその話の中で以前なやんでいたStringのカノニカライゼーションの謎が解けました。私はinternメソッドについて根…

シリアライズ&デシリアライズってすごいな

複雑な参照の関連とか、循環参照とかもちゃんとデシリアライズできるんだね。 インスタンスのハッシュ値とかもちゃんと管理してるってことなのか? とりあえずすごい。

ソフトウェアインスペクション・ワークショップ 2009に行ってきた

先日書いたコードレビューの道具、使っていますか?の森崎先生主催のhttp://se.aist-nara.ac.jp/events/siw2009.htmlに行ってきました。 日本初のインスペクションに関するセミナーということで60名枠に114人応募。かなり盛況だった。 いろんな会社の人が来…