量産メモ帳

忘れっぽいのでメモを残しています。浅く適当に書きます。

2012-11-01から1ヶ月間の記事一覧

XMLファイルの中身をPOJOのリストに変換する。

XMLファイル名が"pojos.xml"、ルート要素が"PojoRoot"という前提で、以下の様な感じで行ける。 List loadFromXml() throws Exception { Unmarshaller unmarshaller = JAXBContext.newInstance(AnyNameWillDo.class).createUnmarshaller(); JAXBElement eleme…

POJOのリストをXMLファイルに保存する。

こんな感じで行けた。 void saveToXml(List pojoList) throws Exception { Pojo[] pojos = pojoList.toArray(new Pojo[0]); Marshaller marshaller = JAXBContext.newInstance(pojos.getClass()).createMarshaller(); marshaller.marshal(new JAXBElement(ne…

SQL Server 2005 SP2 セキュリティ更新プログラム(KB970895)インストール失敗。

SQL Server 2005 をアンインストールしたのに、Windows Update で何故か KB970895 のインストールを促され、インストールしようとすると失敗してしまう。 最後に実行したのは、以下の Fix it である。 インストールできない、削除できない、またはダウンロー…

Windows のプロダクトキーを再インストールする方法。

全部試していないけど、これでできるらしい。(実行は自己責任で!) 「コマンドプロンプト」を右クリックして「管理者として実行」をクリックする。 以下のコマンドでプロダクトキー(Activation ID)を確認する。 slmgr /dlv 以下のコマンドでプロダクトキ…

VMware 上の Linux の時刻同期を行う。

まだ数秒ズレる時もあるけど、修正したのは以下の2つのファイル。 /boot/grub/grub.conf /etc/ntp.conf まず、/boot/grub/grub.conf ファイルの方は kernel パラメータを変更した。(太字で書かれた部分を追加) default=0 timeout=5 splashimage=(hd0,0)/gr…

Apache のモジュール mod_proxy_balancer を使ってロードバランシングを行う。

例として、以下のサイトが動いている前提で、、 http://localhost/ http://192.168.0.1/ http://192.168.0.2/ httpd.conf を以下の様に編集して*1、HTTPD を再起動すれば、、 LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_balancer_modul…

VMware 上の CentOS(6.3) のタイムゾーンを JST にする。

シンボリックリンクを貼って解決した。 ln -sf /usr/share/zoneinfo/Japan /etc/localtime ちなみに /etc/sysconfig/clock ファイルも以下のように修正してみたが、これだけでは変わらなかった。 ZONE="Asia/Tokyo" UTC=false ARC=false SRM=false 参考資料…

ConcurrentSkipListMap の API ドキュメントにある SkipLists のリンクをクリックすると、、

ConcurrentSkipListMap (Java Platform SE 6) SkipLists の発明者と言われる Bill Pugh 氏の Web サイトが表示されるが、 以下のようにいきなり火を吹いている画像が出てくる。 「何でこんなものが埋め込んであるのか?」と最初はイタズラかと思った。 どう…

Windows Vista が起動中にフリーズする問題と解決方法について。

今回の問題は、Windows Search サービス用のインデックスファイル(windows.edb)に不良クラスタがあったことが原因。 チェックディスクを実行して不良セクタを置換し、PCを再起動したらフリーズしなくなった。 Windows Search サービスに依存するサービスはな…

VMware 上の CentOS-6.3 で動く Apache HTTPD に外部からアクセスできるようにする。

以下の様に HTTP と HTTPS 用のポートを開放するべく、iptables にファイアウォールのルールを追加・保存すれば良い。 iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ] 上の例では INPUT チェーンの5行目にルールを挿入しているが、これ…

Windows Vista 上の VMware Player に CentOS (6.3) をインストールする。

CentOS のインストールも手こずった。 まず、VMware Player に読み込ませる CentOS のディスクイメージをダウンロードする必要がある。 ディスクイメージファイルは、以下のページに記されているミラーサイトからダウンロードできる。 FrontPage - CentOS Wi…

VMware Tools (9.2.2) をダウンロードする。

後で述べるゲストOSをインストールする時に嵌ったのが、VMware Tools のダウンロードとインストール。 VMware Player を起動して、メニューの「Player」→「管理」→「VMware Tools のインストール」をクリックした時、以下のように 「アップデートサーバにコ…

Windows Vista に VMware Player (5.0.1) をダウンロード・インストールする。

VMware Player のインストールは意外と簡単ですけど、Windows Vista では少し注意が必要です。

Windows Vista 上の VMware Player に Ubuntu (12.10) をインストールする。

CentOS のインストールに苦労した分、Ubuntu は楽にインストールできた。 Ubuntu のディスクイメージは公式サイトからダウンロード。 Download Ubuntu Desktop | Download | Ubuntu 今回ダウンロードしたのは以下のファイル。 ubuntu-12.10-desktop-i386.iso…

DKIMキーの長さを調べて、メールが成り済ましかどうかを見極める。

つい先日、話題なった以下の記事を読み、他人事のように「へー!」と感心していた。 驚きの顛末、グーグルの脆弱性が採用メールから悪戯されるまで ? WIRED.jp その一方で、つい最近、利用している某サイトから送られてくる複数種のメールを受け取るためのア…

Skype を起動すると、Apache HTTP Daemon を起動できなくなる。

最終的に解決に繋がった資料: http://www.karate-style.jp/2007/08/22/xampp-3/ 以下のように Skype の設定を変更すれば解決できる。 「ツール」→「設定」をクリックして、【設定】ダイアログを開く。 「詳細」→「接続」をクリックして、「上記のポートに代…

レジストリを直接編集して IPv4 と IPv6 の DNS サーバーの指定を変更する。

事の発端は IPv4 の「プロパティ」ボタンが押せなくなってしまったこと。(下図左側) 一方、IPv6の「プロパティ」ボタンは押せる。(上図右側) UAC やアンチウィルスソフトを無効にしても変更できないままだったので、原因は不明。 ちなみに【ローカルエリア接…

Eclipse CDT で Unresolved Inclusion エラーが発生する場合の対処方法について。

C/C++ のコンパイラにパスが通っていないことが原因だと思われたので、手っ取り早い解決方法として MinGW をインストールすることにしました。 MinGW | Minimalist GNU for Windows

クラスの拡張方法の違い。

Java だと、これで問題なく拡張できる。 public class Base { } public class Sub extends Base { } C++ の場合、以下のように書いても拡張できるようだが、親クラスと子クラスの変数に対する参照が入れ替わったりして、おかしな事になったりする。 class Ba…

ローカル変数の戻り値に対する参照の違い。

Java の場合、あるメソッド内部のローカル変数が、そのメソッドの戻り値として返されても、メソッドを呼び出した側は、受け取った変数を参照することができる。 public static String getString() { String str = "Value of local variable"; return str; } …

配列の要素数の取得方法の違い。

Java の場合はこんな感じになる。 int[] array = new int[] {1,2,3,4,5,6,7,8,9,10}; int arraySize = array.length; 一方、C++ の場合はこんな感じになるようだ。 int array[] = {1,2,3,4,5,6,7,8,9,10}; int arraySize = sizeof array / sizeof array[0]; …

構造体とクラスの違い。

Java には構造体というものはない。 Java のクラスと C++ のクラスは似ている。 ちなみに、C++ のクラスと C のクラスは別物で、そもそも概念が違うようだ。 C++ における構造体とクラスの違いは、以下のページに詳しく書かれている。 構造体とクラス その他…

前書き。

今まで仕事で Java を使うことは多かったが、C++ を使う機会は殆どなかったので、C++ に関する知識は限りなく素人である、と言い訳しておく。