ラベル Groovy の投稿を表示しています。 すべての投稿を表示
ラベル Groovy の投稿を表示しています。 すべての投稿を表示

2012年8月10日金曜日

Groovyで禁煙

毎日1箱吸ってるから、チャンピックス飲んで1日3本ずつ減らすと8日目には禁煙状態になる。
結果をメモにコピペして本数を記録。
暗算も面倒なオレでも禁煙できればね。


println "禁煙スケジュール"
println "日:本数 実績"
(1..7).each {
    def honsu = 20-(it-1)*3
    assert honsu > 0
    println it + ": " + sprintf("%2d", honsu)
}

2010年10月10日日曜日

Grails 1.2 , 1.3 の GORM ドメインクラスでカラムのindexを作成出来ない件

Grails 1.2 , 1.3 の GORM ドメインクラスでカラムのindexを作成出来ない。

公式リファレンスではドメインクラスでカラムのindexを作成できるはずなのだが、、
5.5.2.6 Database Indices

class Person {
  String firstName
  String address
  static mapping = {
      table 'people'
      version false
      id column:'person_id'
      firstName column:'First_Name', index:'Name_Idx'
      address column:'Address', index:'Name_Idx,Address_Index'
  }
}

う〜ん。本番環境に最初にデプロイしたときはcreateでDBにつなげて、それ以降のデプロイはupdateにすれば良いのかな。あとからindexの追加がしたければ手動でやるしかない。

2010年9月5日日曜日

以前の記事の訂正(1) Grails on GAE/J - NetBeansを使って

以前、
って記事を書いて、
アプリケーションの停止と起動の問題、つまり、GAEのSpin Up/Down時のアプリケーションの停止を回避するのに、定期的にcronで自身のアプリケーションにアクセスすることにしました。
cron設定時は、再起動に伴う cron 実行の失敗も1日数回程度で済んでいたのですが、翌日以降、1日数回、数分〜数十分程度、Spin Up/Down時にアプリケーションが停止しているようです。頻度は日によって違うようです。

2010年5月13日木曜日

Grailsプラグインのインストール時間が遅い


grails install-plugin hoge とかすると、公開されているプラグイン情報の読みに時間がかかり過ぎる。
grailsのバージョンは1.2.2
何とかならないかな。

2010年5月11日火曜日

GrailsアプリケーションとIDE

私はNetBeansとEclipseを場合によって使い分けている。
これまでJavaのアプリケーションの開発ではプロジェクト作成の際に、NetBeansではプロジェクトディレクトリーのなかに"nbproject"ディレクトリー、Eclipseの場合は".project"と".classpath"ファイルが出来て、プロジェクトの管理がされていた。
最近、Grailsでの開発をはじめて気がついたのだが、NetBeansでGrailsアプリケーションのプロジェクトを作成した場合、"nbproject"ディレクトリーが出来ていないのに気づいた。Eclipse(STS)ではこれまで同様に".project"と".classpath"ファイルが出来ている。
また、"grails create-app"コマンドでGrailsアプリケーションのプロジェクトを作成した場合も".project"と".classpath"ファイルが出来ている。内容もEclipseで作った時と同様。
ということは、同じプロジェクトディレクトリーをNetBeansとEclipse両方で開発出来るということ。メンバー間ででバージョン管理でプロジェクトを共有していて、各メンバーの好みでNetBeansもEclipseも使っているという場合に便利だ。

2010年3月4日木曜日

Grails on GAE/J - NetBeansを使って

ようやく動作確認が出来た。
Grails AppEngine plugin の英語の説明をよ〜く読めば出来るのだが、、正しく手順を踏むことが重要。

Grails AppEngine plugin の説明
http://www.grails.org/plugin/app-engine

これでようやく、Grails のアプリケーションを GAE/J で動かせる。

2010年2月16日火曜日

STS + Google Plugin for Eclipse で Groovy on GAE/J

Eclipse で Groovy, Grails を扱う場合、素の Eclipse に Groovy-Eclips プラグインを入れるより、STS (SpringSource Tool Suite) を別途導入したほうが、Grails もすんなり使えて便利だ。
また、Google App Engine (GAE) 向けのWebアプリケーションも Groovy, Grails で開発することで、Java (GAE/J) でも Python 以上の開発効率を期待できる。
ただ、Grails on GAE/J はもう少し Grails の "Grails AppEngine plugin", "GORM-JPA Plugin" や関連するプラグインの成熟を待って取り組んだほうが良いと思っている。

今回は、STS と Google Plugin for Eclipse を使って Groovy で GAE/J 向けのWebアプリケーション開発を試してみたのでみたので、その要点を以下にまとめている。

・STS
STSはプラグインではなく、単体で導入してみた。
http://www.springsource.com/products/sts

・Google Plugin for Eclipse
Google Plugin for Eclipse は STS にインストールした。
http://code.google.com/intl/ja/appengine/docs/java/tools/eclipse.html

・Groovy で GAE/J 向けのWebアプリケーション (Groovy on GAE/J)
CodeZine の記事を元に試してみた。
「GroovyとGoogle App Engineでアプリ開発」
http://codezine.jp/article/detail/4192

CodeZine の記事に従って試せばOKだけど、STS + Google Plugin for Eclipse の場合はもう少しすんなり開発ができる。

・GAE/J Webアプリケーション用のプロジェクトを Groovy 対応にする
Google Plugin の ボタンで GAE/J Webアプリケーション用のプロジェクトを作成したまでは良いが、これは Java のプロジェクトなので Groovy 対応にする。
STS には Java のプロジェクトを Groovy 対応にさせる機能があるので、これを利用する。
パケージエクスプローラーでプロジェクトを右クリックすると下のほうに、"Configure -> Convert to Groovy Project" と出るので、これを選択すれば良い。


CodeZine の記事のようにビルドスクリプトを実行しなくても、javaファイル同様に "src" ディレクトリ以下の groovyファイルが自動でコンパイルされるようになる。

・実行ライブラリに Goovy ランタイムライブラリーを追加
groovyファイルのコンパイルは可能だが、実行の際にクラスパスが Goovy ランタイムライブラリーに通っていないので、このままでは Groovy で記述したプログラムをローカル、サーバーで動作出来ない。
実行時のクラスパスは "war/WEB-INF/lib" ディレクトリ内のjarファイルをを参照するので、ここに Goovy ランタイムライブラリー をコピーする。
Goovy ランタイムライブラリーは Grails の "groovy-all-x.x.x.jar" を利用した。



↓コピー後


これで、Groovy で記述したプログラムをローカル、サーバーともに利用できるようになる。

・Groovlet, gsp での日本語
あと、Groovlet, gsp での日本語はそのままだと文字化けするので、"war/WEB-INF/appengine-web.xml" ファイルの "system-properties"に以下のようにプロパティーを追加。



もちろん、Groovlet, gsp の記述は UTF-8 で。
試してみたところ、日本語は問題無く表示出来ました。