ページビューの合計

2011年4月19日火曜日

Bitnami RedmineをWindows OSからCentOSへ移転 with アップデート。

旧サーバー
OS:Windows Server 2008
Redmine:BitNami Redmine Stack 1.0.1-0


新サーバー
OS:Linux CentOS 5.5
Redmine:BitNami Redmine Stack 1.1.2-1


1.旧RedmineサーバーのDBをバックアップ。
\BitNami Redmine Stack\mysql\bin>mysqldump.exe --default-character-set=utf8 -u bitnami --port=3306 -p bitnami_redmine > dump_utf8.sql


2.旧Redmineサーバーの「<Redmine_HOME>/files」ディレクトリを圧縮(バックアップ)

これで旧Redmineサーバーでやることは終わり。


3.http://bitnami.org/stack/redmine」でLinux用最新のインストールファイルダウンロードし、インストール。(GUI)






4.「/opt/redmine/apps/redmine/config/database.yml」ファイルを以下のように修正。
production:
adapter: mysql
database: bitnami_redmine
host: localhost
username: bitnami
password: <旧RedmineサーバーのDBパスワード>
port: 3306
encoding: utf8


5.「/opt/redmine/mysql/my.cnf」ファイルに以下のように追記。
[mysqld]
...
省略
...
skip-character-set-client-handshake
default-character-set = utf8


6.旧Redmineサーバーからバックアップしたデータをリストア(インポート)する。
/opt/redmine/mysql/bin/mysql -u root -p bitnami_redmine < dump_utf8.sql


7.DBの文字コードを設定。(この処理は必要ないかも)
mysql> alter database bitnami_redmine character set utf8;


8.旧Redmineサーバーの「<Redmine_HOME>/files」ディレクトリを新サーバーに入れ替え。


9.以下のようにrubyのパスを追加。
# export PATH=$PATH:/opt/redmine/ruby/bin


10.Rakefileファイルがある、/opt/redmine/apps/redmineディレクトリに移動し、以下のコマンドを実行。
# rake db:migrate RAILS_ENV="production"
(エラーが発生する場合は「/opt/redmine/ruby/bin/rake db:migrate RAILS_ENV="production"」で実行)
それでもエラーが発生する場合は、MySQLへ接続し、以下のコマンドを実行
mysql> grant all privileges on bitnami_redmine.* to 'bitnami'@'localhost' identified by '<DBパスワード>';


11.新Redmineサーバーを再起動し、動作確認。
正常に操作しない場合は、DBのパスワードの間違いやプラグインに原因がないか又は以下のURLの内容に設定を変更していないか調べる。
http://rowoon520.blogspot.com/search/label/Redmine



12.旧Redmineサーバーにプラグインをインストールしていたら新Redmineサーバーにもプラグインを追加。



終了。

2011年4月6日水曜日

Javaアプリケーションを起動する際、コンソールを表示させる方法

Javaアプリケーションを起動する際、内部的にどんな処理が行っているかコントロールを確認したい時があります。

以下のようにJavaアプリケーションのコンソールを表示させる方法を紹介します。



Windowsの場合

「スタート」 → 「コントロールパンネル」 → 「Java」をダブルクリック。

以下のように設定すればコントロールが表示されます。



Linuxの場合

「システム」 → 「設定」 → 「Java」をクリック。

以下のように設定すればコントロールが表示されます。

2011年4月5日火曜日

まだ間に合う。クラウド環境を作ってみよう。 - ドキュメント編

Google Cloud Connect for Microsoft Office


Google Cloud Connect for Microsoft OfficeはMicrosoft OfficeフォーマットのファイルとGoogleドキュメントを自動同期し、ドキュメントのバックアップ、共同編集作業、バージョン管理が出来るクラウドサービスです。


(動画を再生中、コントロールバーにあるCCをクリックすると字幕の言語を選択できます。
リストに表示させたい言語がない場合は「Translate Captions」で選択してください。)



Google Cloud Connect for Microsoft Office ダウンロード


※この機能を使うにはGoogleアカウントが必要です。(Gmailアカウントなど)
※僕がこのスクリーンショットを撮った次の日にGoogle Cloud Connectがアップデートされ、
現在は綺麗に日本語化されているので、更に使いやすくなりました。


Google Cloud Connectをインストールして、ExcelやWordなどのOfficeファイルを開くと以下のようにツールバーが表示されます。
(ツールバーが表示されない場合は、PCを再起動してください)
ログインをクリックし、Googleアカウントにログインをします。


アクセス許可を選択



自動で同期を行うように設定する。


ログインしたら、Googleドキュメントと同期を行いましょう。


同期中


同期が完了するとこのドキュメント用のアドレスが割り当てられます。


Googleドキュメントにアップされているのを確認。


実際にドキュメントを開くと以下のようになります。(ドキュメント内容がかなり小さく表示されるのでズームした画面)
右の方にはこのドキュメントをアップロードした時の情報が表示される。


「共有設定」を選択し、他の人と共同編集作業をしてみましょう。


「変更」を選択。


これからの設定は利用者の状況に合わせて設定します。
セキュリティを考えるなら「ウェブ上で一般公開」は避けましょう。
今回の場合は「リンクを知っている全員」を選択します。
社内共同作業なら「限定公開」が理想だと思います。


共有方式選択。
今回はGmailで知らせてみます。


Gmailを選択すると以下のようにアドレスが自動で貼られます。
「〇〇秀」さんと共同編集作業を行ってみます。


〇〇秀さんにメールが届きました。
リンクをクリックするとGoogleドキュメントが開かれます。


〇〇秀さんがGoogleドキュメントを開いた画面。


このファイルをダウンロードして開いてみます。






開いたドキュメントを以下のように編集し、保存をするとGoogleドキュメントと同期が行われます。
(もちろん〇〇秀さんのPCにもGoogle Cloud Connectがインストールされていることを前提にします。)


Version 2 of the document linked above」を選択し、このドキュメントをバージョンアップします。
下のVersion 1~を選択すると新しいファイルとして扱うことにあると思います。


Googleドキュメントで確認すると以下のように編集した内容が更新されました。
更に右の方をみると編集時刻、編集者なのが確認できます。
されにさらに編集前の旧バージョンも全てのバージョンがダウンロードできます。
これでドキュメントのバックアップ、共同編集作業、バージョン管理がこれ一つでできることになりました。












以下のように、「Google cloud connect」部分をクリックするとGoogleアカウントの切り替えなどの設定メニューが表示されます。




以下ようなアイコンのクリックするとドキュメントの共有、履歴確認などの機能を使えます。

2011年3月28日月曜日

Windows OS環境ではAdempiereのビルドが失敗してしまう。

動作環境
Adempiere 3.6
Eclipse 3.6
CentOSなどのLinux環境ではビルドができますが、Windows環境ではビルドが失敗してしまいます。
エラーメッセージが長くて発生時点と思われる個所のみ貼り付けます。
...省略
javac D:\eclipse_ws\SF_Adempiere3.6\adempiere361\base\src\org\compiere\plaf\PlafRes_de.java:84
: 文字列リテラルが閉じられていません。
javac< { "White", "Weiテ? }, javacjavac D:\eclipse_ws\SF_Adempiere3.6\adempiere361\base\src\org\compiere\plaf\PlafRes_de.java:84
: '}' がありません。
javac { "White", "Weiテ? },
...省略
BUILD FAILED D:\eclipse_ws\SF_Adempiere3.6\adempiere361\utils_dev\build.xml:21: The following error occurred whil e executing this line: D:\eclipse_ws\SF_Adempiere3.6\adempiere361\base\build.xml:56: Compile failed; see the compiler error
output for details.
----------------------------------------------------------------------------------------------------------------------
Eclipseの設定は「UTF-8」になっていますし、
build.xmlの1行目に「<?xml version="1.0" encoding="UTF-8"?>」が記述されているにも関わらずエラーが発生します。
このエラーは解決しました。build.xmlの上1行目の「<?xml version="1.0" encoding="UTF-8"?>」だけでは足りないらしく、
本文の中で「javac target="1.6"」から始める行に「encoding="UTF-8"」を追記するとエラーがなくなります。
例)base/build.xml
<javac target="1.6" fork="true" destdir="${build.dir}" deprecation="on" debug="on" memoryinitialsize="512m" memorymaximumsize="512m" encoding="UTF-8">
これから開発を進める際、コメントを日本語で書く必要があると思うのでソースコードを含んでる全てのプロジェクトに「encoding="UTF-8"」を追記した方がよいと思います。
私はJasperReportsプロジェクトに日本語で書き込んだコメントにエラーが発生し気付きました。
追記する必要があるファイル一覧
base/build.xml
client/build.xml
install/build.xml
JasperReports/build.xml
JasperReportsWebApp/build.xml
looks/build.xml
posterita/build.xml
zkwebui/build.xml
ちなみに、JasperReports/build.xml、JasperReportsWebApp/build.xmlには1行目の「<?xml version="1.0" encoding="UTF-8"?>」の記述も抜けていました。

Eclipse上でSVN コミット(commit)のコメントを編集する - VisualSVN

動作環境
Ecilpse 3.6
VisualSVN Server 2.1.2
まずSubversion側で簡単な設定が必要。
VisualSVNのリポジトリのプロパティ画面で以下のように「Pre-revision property change hook」をダブルクリックし、空のhookを作成する。
VisualSVNではない場合は、「hooks/pre-revprop-change」のスクリプトを作成すればよいと思う。


hookが正しく作成されると上のように太字で表示される。
これでSubversion側の設定は終わり。
ちなみに、このhookを設定しないとコミットのコメントを修正する際、以下のようなエラーが発生する。


Eclipseでコメントの編集を行ってみましょう。
Subversionのリストリービューで「改訂プロパティーの表示」を選択。


以下のように改訂プロパティービューでコメントの追加や編集ができる。




残念ながら、コメントを編集してもRedmineとの連携には反映されない。
たとえばコメントを編集し、「refs #<issue番号>」を追記してもRedmineに連携できない。

Eclipse + Mylyn : Redmine + Subversion

動作環境
Eclipse 3.6
Bitnami Redmine 1.0.2
※潰れてる画像はクリックすると原本サイズで見れます。
------------------------------------------------------------------------------------------
今回はEclipseのタスク・リスト(mylyn)とRedmineを連動してみる。
以下は使い方。
issueをクリックすると、Eclipse内部のウェブブラウザーでRedmineのissueページを表示する。
下のメニュー(Private、コンテキスト、ブラウザー)を一度はクリックしてみましょう。
因みにここでissue(チケット)の新規登録も出来る。


次はissueの左のある、白いボールをクリックした後(Active)、ソースコードなどのモジュールを開いてみる。




そうすると自分が開いたモジュールのみエクスプローラーに表示される。




他のissueも同じ流れでタスク別にモジュールを管理することができる。




今のタスクからモジュールを除去(非表示)にしたい場合は、以下のように「コンテキストから除去」を選択する。




全てのモジュールを表示したい場合は、以下のアイコンをクリックする。


この環境を構築することで得るメリットは以下のようになる。
  1. 現在行っているタスクの制御や、タスクのスケジューリングが行えるTask List View
  2. タスクごとに分割した変更履歴の管理
  3. タスクの入力や、編集を行えるリッチエディタ
  4. パッケージエクスプローラーやアウトラインなど、Eclipseが標準的に配布するビュー上でのタスク指向UIモード
  5. BTS(Bug Tracking System)との連携(今回はRedmine)
  6. タスクの検索
-------------------------------------------------------------------------------------------------------------------------
ここからは構築手順になる。
EclipseでWeb Template Connectorプラグインが必要。
プラグインインストールURL:
http://download.eclipse.org/tools/mylyn/update/incubator/
または
http://download.eclipse.org/mylyn/incubator/3.6




インストールが完了するとEclipseの再起動が必要なすこし面倒なプラグインだが、
これから開発の効率が上がることを考えると再起動くらい構わない。
Eclipseを再起動したら、「ビュー表示」ウィンドウで「タスク・リポジトリ」を選択。


開かれた「タスク・リポジトリ」ビューで以下のようにタスク・リポジトリーを追加する。




※下記の記述をそのままコピペ(Copy&Paste)するとダブルクォーテーション(double quotation marks)「"」が正しく認識されない問題に気付いた。
ダブルクォーテーション(double quotation marks)だけを書き直しせば問題ないはず。
※Query Patternの「/redmine」の部分はBitnamiの場合のみ。
------------------------------------------------------------------------------------------------------------
サーバー:<Your Redmine Server>/redmine/
ラベル:<Your Task List Name>
ユーザID:RedmineのユーザID
パスワード:Redmineのパスワード
追加設定
⇒パラメータ追加
パラメータ名:project
値:<Redmineプロジェクトの識別子>


⇒ 拡張構成
Task URL:${serverUrl}/issues/show/
New Task URL:${serverUrl}/projects/${project}/issues/new/
Query Request URL:${serverUrl}/issues
Query Pattern:<td class="subject">.*?<a href="/redmine/issues/show/(\d+)">(.+?)</a></td>
ログイン・リクエスト URL:${serverUrl}/login?username=${userId}&password=${password}&authenticity_token=${loginToken}
Login Form URL:${serverUrl}/login
Login Token Pattern:<input name="authenticity_token" type="hidden" value="(.+?)" />
HTTP認証
ユーザID:RedmineのユーザID
パスワード:Redmineのパスワード
タスク・リポジトリの登録を完了すると以下のような「新規クエリー追加」が表示されるので「はい」を選択。


入力後プレビューを押すと下部のグリッドにRedmineのissue(チケット)が表示される。もしissueが表示されない入力の値に誤りがないかチェックしましょう。
ここも上と同様。ダブルクォーテーション(double quotation marks)「"」だけを書き直す必要がある。
--------------------------------------------------------------------------------------------------------------
パラメータ追加(以下のprojectパラメータが自動で設定されない場合のみ)
パラメータ名:project
値:<Redmineプロジェクトの識別子>
拡張構成
Query URL:${serverUrl}/projects/${project}/issues?set_filter=1&assigned_to_id=me
Query Pattern:<td class="subject">.*?<a href="/redmine/issues/(\d+)">(.+?)</a></td>
「${serverUrl}/projects/${project}/issues?set_filter=1&assigned_to_id=me」は${project}パラメータプロジェクトの自分担当分のみ取得すると言う意味。(多分)
完了ボタンを押してもタスクリストにissueが表示されない場合は、同期化を行ってみましょう。


正しく手順を行ってればRedmineのissueを取ってくる。
更にコミットの時、コメントのテンプレートを書いておけばコミットする度に毎回コメントを書かなくてよいので便利になる。
でも僕の場合はどうやら上手くいかない。
設定箇所:設定 ⇒ タスク ⇒ チーム :
値:(refs #${task.id}) ${task.description}
${task.url}