読者です 読者をやめる 読者になる 読者になる

JIRAで外部のDBにあるデータを課題のフィールドに使用する #augj

Atlassian Advent Calendar 2012 21日目のエントリーです。最近試したJIRA Database Values Pluginについて書いてみたいと思います。Database Values Pluginは、その名のとおりDBに入っているデータから課題のフィールドを作成することができるプラグインで…

オブジェクト指向JavaScript

オブジェクト指向JavaScript作者: Stoyan Stefanov,水野貴明,渋川よしき出版社/メーカー: アスキー・メディアワークス発売日: 2012/04/13メディア: 大型本購入: 1人 クリック: 117回この商品を含むブログ (1件) を見る 本自体に初心者向けとあるとおり、jQue…

Sorj からDataImportHandlerのインポートを実行する

SolrのJavaクライアントライブラリであるSolrjからDataImportHandler経由でのドキュメントのインポートを実行するコードです。 abortなども、基本的にはコマンドを変更するだけで同じです。 参考 Data Import Request Handler

リーダブルコード

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)作者: Dustin Boswell,Trevor Foucher,須藤功平,角征典出版社/メーカー: オライリージャパン発売日: 2012/06/23メディア: 単行本(ソフトカバー)購入: 54人…

[本]データベースリファクタリング

データベース・リファクタリング作者: スコット W アンブラー,ピラモド・サダラージ,梅澤真史,越智典子,小黒直樹出版社/メーカー: ピアソンエデュケーション発売日: 2008/03/26メディア: 単行本購入: 9人 クリック: 194回この商品を含むブログ (44件) を見る…

Bloggerをお試し中

はてなブログに移行したばかりですが、その少し前からBloggerを試しに使ってます。しばらく新しい投稿はBloggerの方に書こうと思いますので、よろしかったらご覧下さい。 azuki note2 → 特にBloggerの方が優れているという点もないように思ったので、もうし…

はてなブログに移行しました

はてなブログに移行しました。 Bloggerに移そうかと思っていたのですが、はてなダイアリーからインポートできるようになったようなので、ひとまず移行しました。

達人に学ぶDB設計徹底指南

達人に学ぶDB設計 徹底指南書 初級者で終わりたくないあなたへ作者: ミック出版社/メーカー: 翔泳社発売日: 2012/03/16メディア: 単行本(ソフトカバー)購入: 18人 クリック: 254回この商品を含むブログ (15件) を見る 「初心者で終わりたくないあなたへ」…

IIJmio高速モバイル/D

スマートフォンの通信環境として、いままで日本通信のb-mobile Fairを使っていたのですが、期限が切れたのを機に、IIJmio高速モバイル/Dのファミリーシェア1GBプランに変更してみました。ファミリーシェア1GBプランは通信量1GBまでは2940円/月で、特徴的なの…

継続的デリバリー

継続的デリバリー 信頼できるソフトウェアリリースのためのビルド・テスト・デプロイメントの自動化作者: David Farley,Jez Humble,和智右桂,高木正弘出版社/メーカー: アスキー・メディアワークス発売日: 2012/03/14メディア: 大型本購入: 23人 クリック: 5…

Gitによるバージョン管理

Gitによるバージョン管理作者: 岩松信洋,上川純一,まえだこうへい,小川伸一郎出版社/メーカー: オーム社発売日: 2011/10/25メディア: 単行本(ソフトカバー)購入: 6人 クリック: 210回この商品を含むブログ (25件) を見る git関連の本は入門gitを持っている…

VBScriptでAmazon SES経由でメールを送信する

AWS

結構前からですが、Amazon Simple Email Service(SES)でSMTP経由でのメール送信ができるようになりました。それまではGMailのSMTPサーバを使用したり、SESを使用する場合はPerlのスクリプト経由で送信していたのですがだいぶ便利になります。 以下、VBScript…

Play framework2.0を使ってみた

ちょうどPlay framework 2.0が正式にリリースされたましたが、1ヶ月くらい前(RC2くらいのころ)に、Scalaの方を少し試してみたときのメモや感想です。とりあえず、Play Scalaのチュートリアル(‘Yet Another Blog Engine’)を、2.0で写経してみました。もとも…

AWS SDK for Rubyでインスタンスのイメージ(AMI)を登録する

未だにEC2インスタンスのバックアップというかスナップショットからのリストアのベストプラクティスというのがわかりません。VMwareでのスナップショットと同じ感覚で操作したいのですが。。 EBSボリュームのスナップショットから復元する場合には、以下のよ…

2011年に読んだ本

すでに1月も終わりに使いのですが、、昨年、読んだ(買った)本とともに昨年の活動を振り返ってみたいと思います。途中になっている本もかなりあります。あとは雑誌で会社にあるSoftware DesignとWeb+DBプレスを読んでます。 Java Java: The Good Parts Java…

IEでselect要素のchangeイベントが発生しない場合の対応

セレクトボックスが変更されたら、連動して別の要素を更新するということをしますが、SeleniumでこれをテストするとIEのみchangeイベントが発生しないようです。この場合は、以下のようにSeleniumから強制的にイベントを発生させます*1。 // IEでイベントが…

Jerseyで@RolesAllowedアノテーションを使った認可の設定

JAX-RSでは、権限のあるユーザのみリソースにアクセスすることを可能にするために、アノテーションによる宣言型の記述とプログラマティックな処理をのためのAPIがあります。アノテーションを使う場合には、特定のロールを持つユーザのみ許可するのであれば、…

extjsのGridPanelで動的に列を追加する

最新のextjs 4ではなく3.4です。 // GridPanelを生成 var grid = new Ext.grid.GridPanel({ // config options for GridPanel here ... columns: [{ {id: 'name', header: 'Name', width: 200, sortable: true, dataIndex: 'name'}, {id: 'email', header: '…

JAX-RS (Jersey) でパラメータとして独自のクラスをインジェクトする (2)

このエントリの続きです。パラメータが多い場合には、対応するメソッドの引数が増えてしまうので、引数をDTOにまとめたいという話です。 例えば、id, foo, bar, bazという引数があるメッソッドで、これらの引数を以下のようなDTOにしてクエリパラメータやパ…

JJUG CCC 2011 fall 行ってきた

すごい今更ですけど、10/17にJJUG CCC 2011 fall に行ってきました。基調講演の途中から参加しました。会場の国立オリンピック記念青少年総合センター初めて行ったので迷ってしまった。。 G-2 基調講演 JavaOne報告会 Part.2 JavaOne 2011 Report View more …

Google Developer Day 2011に行ってきた

もう一週間近く経ってしまいましたが、11/1にGoogle Developer Day 2011 Japanに行ってきました。 セッションのメモ 個人的に気になった部分だけのメモですが。 Android の優れたユーザーエクスペリエンス fast UIスレッドで時間がかかる処理をしない。Stric…

GoogleAppsでアカウントでChromeの同期ができなくなった

デスクトップとノートでChromeの同期を使っているのですが、少し前にノートPCのWindowsがブルースクリーンで落ちてしまって、それ以降、「お客様のドメインでは同期サービスをご利用いただけません。」というメッセージでChromeの同期機能が使えなくなってい…

Android 2.3.3でのGalaxy SのGPS

遅ればせながら一ヶ月ほど前にGalaxy Sを2.3.3にアップデートしました。Androidのアップデート自体は非常に満足しています。2.3からレスポンスに関してはストレスなしで使えるレベルに達したように思います。 Galaxy Sは当初からGPSに不満がありいろいろ試し…

Jerseyでアップロードされたファイルを処理する

サーバーサイド Jerseyでマルチパート(multipart/form-data)によりアップロードされたファイルを処理するためには、jersey-multipartというモジュールを使用します。 pom.xmlのdependencyにjersey-multipartを追加します。 <dependencies> <dependency> <groupId>com.sun.jersey</groupId> <artifactId>jersey-server</artifactId> <version></version></dependency></dependencies>…

maven-assembly-pluginでSNAPSHOTバージョンの依存ライブラリ

maven-assembly-plugin は、依存ライブラリのjarファイル等をまとめて配布用のファイルを作成してくれるプラグインです。dependencyで指定したライブラリにSNAPSHOTのバージョンがある場合の動作で困った事があったので対応方法をメモしておきます。Mavenお…

JerseyでJSONシリアライズ対象外のプロパティを指定する (2)

JerseyでJSONシリアライズ対象外のプロパティを指定する (1) こちらの続きです。JAX-RS(Jersey)でJavaオブジェクトをJSON形式に変換する際に、@XmlTransientをつけて対象外のプロパティを指定しましたが、今回はJacksonMixInAnnotationsを使用する方法を試し…

Selenium 2でChromeDriverを使う

WebアプリケーションのテストにSeleniumを使っていますが、少し前になりますがSelenium 2が正式にリリースされたので試しています。Selenium 2は、WebDriverベースとなりアーキテクチャ的にも大きく変更されています。Selenium RCで使用していたSeleniumServ…

AWS SDK for Rubyでインスタンスを起動/停止するスクリプト

AWS SDK for Rubyでインスタンスをまとめて起動/停止するスクリプトを書きました。 特定の時間しか使わないインスタンスが複数あるのですが、これらをスケジュールにしたがってまとめて起動・停止するために、いままでCloudworksを使わせていただいていたの…

JerseyでJSONシリアライズ対象外のプロパティを指定する (1)

JerseyでJSONを帰す場合には、以下のいずれかの方法を使用します。 対象オブジェクトにJAXBアノテーションを付加してJAXB経由でシリアライズする POJOをそのままシリアライズする 対象オブジェクトのうち特定のプロパティをシリアライズ対象外とするには、JA…

IEでのみブラウザ内でPDFファイルを表示できない場合

Content-TypeもContent-Dispositionの設定も問題ないはずなのにIEでのみ、PDFファイルのブラウザ内での表示ができずにダウンロードダイアログが表示されてしまう。 レスポンスヘッダのContent-Typeにいつの間にかcharsetが付加されていることが原因でした。 …

HttpServiceとWAB(Web Application Bundle)

GlassfishでWebアプリケーションからOSGiバンドルを利用する 前回のサンプルでは、Webアプリケーション自体はwarとしてディプロイし、依存するサービスをOSGiバンドルとしてディプロイして@Resourceでインジェクションしていました。今回は、アプリケーショ…

Javaでtarファイルを操作する

Javaでtarファイルを操作する場合には、Commons Compressを使用するのが簡単そうです。Commons Compresは他にもbzip2やgzipにも対応しています。サイトのサンプルとJavadocを見ればだいたいの使い方はわかると思いますが。 File[] filesToArchive = {file1, …

GlassfishでWebアプリケーションからOSGiバンドルを利用する

NetBeans IDE の Maven を使用した OSGi 宣言型サービス このサンプルを動かしてみました。Glassfishは通常のWebアプリケーション(war/ear)と同じようにOSGiバンドルがディプロイできます。このサンプルは、GlassfishにディプロイしたOSGiバンドルが公開する…

Glassfish 3.1でautodeployフォルダに入れたjarがディプロイされない

GlassFish Server Open Source Edition 3.1 (build 43)時点での情報で、将来的には変更されるかもしれませんが、ドメインのautodeploy/bundleフォルダにコピーしたjarの自動ディプロイ(インストール)が初期状態で無効になっているようです。 Glassfish Proje…

IAMでS3のbucketにアクセスできるユーザーを制限する

AWS ConsoleでAWS Identity and Access Management (IAM)が操作できるようになったので試してみました。しかし、APIを直接叩かなくなくてよくなったから簡単、ではなかったです。 いずれの方法にしろJSON形式のPolicyを定義する必要があります。AWS Policy G…

Gladinet Cloud DesktopでS3のBucketをマウントする

Gladinet Cloud Desktopは、S3のようなクラウドストレージサービスをWindowsのネットワークドライブとしてマウントするアプリケーションです。以前、Linuxでs3fsのようなソフトがないかと調査したときには有償ソフトだと思っていたのですが、Starter Edition…

b-mobile Fairを買ってみた

いままで、Galaxy Sにb-mobile U300というSIMを入れて使ってきましたが6ヶ月の期間が切れたので、b-mobile Fairにしてみました。ちょうど2週間くらい使ったので感想を書きたいと思います。b-mobile Fairは、最長120日間で1GBまで通信できるサービスで使い切…

Bluetoothヘッドフォンのレビュー

最近、通勤や散歩中はGalaxy SにBluetoothヘッドフォンを接続してPodcastや音楽を聞いていることが多いんですが、コードレスなのは快適です。以前、iPodにBluetoothアダプタをつけて使っていたときは、充電など使い勝手が悪くて結局やめてしまったのですが、…

エリック・エヴァンスのドメイン駆動設計

エリック・エヴァンスのドメイン駆動設計 (IT Architects’Archive ソフトウェア開発の実践)作者: エリック・エヴァンス,今関剛,和智右桂,牧野祐子出版社/メーカー: 翔泳社発売日: 2011/04/09メディア: 大型本購入: 18人 クリック: 1,330回この商品を含むブロ…

子供が川崎病にかかり入院していました

すでに退院し後遺症もみられず元気になっていますが、先月、2歳の息子が川崎病にかかって2週間ほど入院していました。記録として書いておこうと思います。 患者と家族のための川崎病Q&A作者: 原田研介出版社/メーカー: ライフサイエンス発売日: 2006/12メデ…

EC2でLinuxインスタンスのボリュームサイズを変更する

Linuxインスタンスでボリュームサイズを変更する手順です。 AWS Consoleで、インスタンスを停止します。 変更したいボリュームのスナップショットを作成します。 スナップショットからボリュームを作成します。ここで変更後のサイズを指定します。 ボリュー…

"No version string found in output of hg version"というエラーでMercurialリポジトリにアクセスできない

FisheyeはAtlassian社の高機能なリポジトリビューアです。 FisheyeにはGitやMercurialといった分散バージョン管理システムにアクセスする機能がありますが、バージョン2.5.5のGlobal Settings画面でMecurialの実行ファイルのパスを指定しようとすると、以下…

UbuntuでのApache + Subversion + ViewVC環境構築

サーバを移行したときの作業のメモです。Ubuntu Serverに、ApacheのWebDAVでアクセスするSubversionリポジトリを構築して、リポジトリビューアとしてViewVCをインストールします。apt-getで必要なソフトウェアをインストールします sudo apt-get install apa…

SQL Serverのsqlcmdに引数を渡す

SQL Serverのsqlcmdで、コマンドラインからSQLを実行する場合に引数(スクリプト変数)を渡すには、-vオプションを使います。 sqlcmd -b -v foo=bar -i input.sql SQL文中では$(foo)として参照することができます。-bオプションを付けるとスクリプト変数が存在…

コマンドラインからJenkinsのジョブを実行する

コマンドラインからJenkinsのジョブを実行する方法を二つ。 wgetでURLにアクセスする Jenkins CLIを使う wget ジョブの実行ボタンをクリックしたときのURLにwgetやcURL経由でアクセスします。認証をかけている場合にはBasic認証でユーザ名/パスワードを渡し…

Ubuntuのデフォルトロケールを変更する

EC2で利用可能なUbuntu ServerのAMIには日本語リソースが入っていないので、ロケールを変更しただけではコンソールで日本語が使えません。 $ sudo apt-get install language-pack-ja $ sudo update-locale LANG=ja_JP.UTF-8 これで、日本語の言語パックがイ…

Jenkins Mercurial Pluginでbitbucketにアクセスする

JenkinsでMercurial Pluginを使ってbitbucketのリポジトリにアクセスしてみます。 まずは、マスタのサーバにMercurialをインストールします(Ubuntuです)。 ubuntu@ci: ~$sudo apt-get install mercurial 認証用のSSH鍵を作成していない場合には作成します。…

Ubuntuでのタイムゾーンの変更

$ sudo dpkg-reconfigure tzdata ウィザードが起動したら、Asia -> Tokyo を選択。

EC2インスタンス起動時にRoute53のリソースレコードを更新する

EC2は完全従量制でインスタンスを起動していないときには、EBSを除きほぼ課金が発生しないため、検証用など必要なときだけすぐにサーバを準備できるので非常に便利です。ただ、必要なときしか使わないインスタンスに、Elastic IPアドレス(固定IP)を割り当て…

コマンドラインからRoute53を操作する

Route 53 Getting Started Guideでは、Hosted Zoneを操作するためのXMLは別途作っておいて、dnscurl.plというスクリプトで署名してリクエストを送信しています。もう少し高レベルのAPIで操作できるものはないかと探してみたところ、cli53というpythonのツー…