SiNBLOG

140文字に入らないことを、極稀に書くBlog

2012-01-01から1年間の記事一覧

Slim3でModelを便利に扱う

Slim3のModelを使うと便利になることがたくさんある。 プロパティをタイプセーフに扱うのは言わずもがなだけど、他にも色々と用意してくれている! まずは、ModelMetaの機能として、以下のような感じ。 modelToJson() jsonToModel()modelsToJson() jsonToMod…

Slim3でModelをJsonに加工する方法を考える

Slim3でAjax用のレスポンスをJsonで返す時の方法について、あれこれと悩んでた。Slim3にはMeta.modelToJson()があるので、始めはこれを使えば良いと思っていた。 しかし、いくつかやりたいことで、できないことがあることが分かった。・getter,setterだけで…

GAEでSPDY対応サイトを作る!

SPDYを利用すると、ServerとClient間の通信が早くなる。 銀の弾丸のようなものではないけど、使えるなら、使って損は無いだろう。 僕もあんまり詳しいところは分かってないので、以下を参照して欲しい。Google提唱の新プロトコル「SPDY」とは--SPDYで変わる…

goog.net.XhrManagerを使ってみた!

Closure LibraryでXMLHttpRequestを扱うgoog.net.XhrManagerを使ってみました。 これは前回のgoog.net.XhrIoを内部に持ち、複数リクエストを簡単に扱えるようにしたものらしいです。 WEB開発メモ: Closure Library - XhrManager まずはコンストラクタ実行時…

goog.net.XhrIoを使ってみた!

Closure LibraryでXMLHttpRequestを扱う。goog.net.XhrIoを使ってみました。app.js xhrioSample.App.prototype.getBookList = function(xhrio){ //取得成功 gevents.listen(xhrio, goog.net.EventType.SUCCESS, function(e){ var res = e.target.getResponse…

Closure Templatesを使ってみた!

Google Closure Toolsの1つClosure Templatesを試してみました。 Closure Templates | Google DevelopersClosure Templates単体でも使えますが、私はClosure Libraryと共に使っています。 Java版とJavaScript版がありますが、私が使ったのはJavaScript版です…

Slim3でClosure LibraryのUnitTestを使ってみた・・・が。

UnitTestが無いコードは、レガシーコード!と言われるぐらい昨今UnitTestは重要なものとなっています。 僕もフレームワークに求めるのはテストのしやすさなのかも!と思ってます。ClosureLibraryにもUnitTestをするために機能があります。 JsUnitを使ったテ…

Slim3でClosure Libraryを使ってみた!

ClosureLibraryはGoogleが作成しているJavaScriptのLibraryです。 Gmail,Google CalendarなどGoogleのサービスで利用されています。Closure Library | Google Developersなかなか面白いもので、以下のような特徴があります。 豊富なUIコンポーネント jQuery …

GAE/JでGson利用時にjava.lang.VerifyErrorが発生する

Jsonを利用するライブラリとして、Gsonを利用しているのですが、最近Errorが出る。 しかも、それがProduction環境のみという、なかなか辛い状況。 更に原因がよく分からず、デプロイする度に変わるという辛い状況。Errorが発生しているのは、Gsonのコンスト…

Slim3 Source Code Reading No12 Router

Slim3 Source Code Reading #12 - ChugokuGTUGに参加してきました! 今回も@ttyokoyama 殿と2人だったので、まったりと進みました。 まぁ、他の方が参加していても、まったり進むのですがwT.Yokoyamaのブログ: Slim3 Source Code Reading #12 今回はRouter…

Slim3 Source Code Reading No11 Mock

Slim3 Source Code Reading #11 - ChugokuGTUGに参加してきました! 今回も@ttyokoyama 殿と2人だったので、まったりと進みました。 まぁ、他の方が参加していても、まったり進むのですがwT.Yokoyamaのブログ: Slim3 Source Code Reading #11 今回はtester…

Slim3 Source Code Reading No10 tester

Slim3 Source Code Reading #10 - ChugokuGTUGに参加してきました! 今回も@ttyokoyama 殿と2人だったので、まったりと進みました。 まぁ、他の方が参加していても、まったり進むのですがwT.Yokoyamaのブログ: Slim3 Source Code Reading #10 今回も前回に…

Slim3 Source Code Reading No9 tester

Slim3 Source Code Reading #9 - ChugokuGTUGに参加してきました! 今回も@ttyokoyama 殿と2人だったので、まったりと進みました。 まぁ、他の方が参加していても、まったり進むのですがwT.Yokoyamaのブログ: Slim3 Source Code Reading #9 今日の記事はtes…

Slim3 Source Code Reading No9 ModelRef

Slim3 Source Code Reading #9 - ChugokuGTUGに参加してきました! 今回も@ttyokoyama 殿と2人だったので、まったりと進みました。 まぁ、他の方が参加していても、まったり進むのですがwT.Yokoyamaのブログ: Slim3 Source Code Reading #9 今回読んだのはM…

JSONICでMapの値を扱う

前回のエントリーの中で、Helpを発していたら、JSONICの開発者の方がコメントしてくれました! JavaでJSONを扱うライブラリ gson を使ってみた! - SinDiary また、丁度各ライブラリの速度比較もされていたようです。 2012-02-12 - A.R.N [日記] さて、本題…

JavaでJSONを扱うライブラリ gson を使ってみた!

今までJSONを扱う時は、JSONICを使っていました。 まぁ、これしか知らなかったのですねw しかし、とあることをしようとした時に、どうやれば良いのか分からなかったのです。 それは、Mapに入れたClassをEncodeした後、元のClassに戻すこと。 Ajaxで戻す時に…

Slim3 Source Code Reading No8 JSP

Slim3 Source Code Reading #8 - ChugokuGTUGに参加してきました! 今回も@ttyokoyama 殿と2人だったので、まったりと進みました。 まぁ、他の方が参加していても、まったり進むのですがwT.Yokoyamaのブログ: Slim3 Source Code Reading #8ちょっと今回は僕…

ChugokuGTUG GAE/Jハンズオンしてきました!

第12回勉強会@岡山 - ChugokuGTUGで、GAE/Jのハンズオンの講師をしてきました! 講師として前に出るのは初めてだったので、緊張しましたね。 しかも、いつもよりかなり参加者が多いという! 少し予想外ではありましたが、何とか無事終えることができまし…

Slim3 Source Code Reading No7 Validation

Slim3 Source Code Reading #7 - ChugokuGTUGに参加してきました! 今回も@ttyokoyama 殿と2人だったので、まったりと進みました。 まぁ、他の方が参加していても、まったり進むのですがwT.Yokoyamaのブログ: Slim3 Source Code Reading #7 今回はValidatio…

Slim3 BlobstoreAPIを使ってみた! Part2

前回に引き続き、Blobstoreです。今回は更に以下を利用します。 FileService AppEngineFile ImageService FileServiceとAppEngineFileを使えば、BlobstoreへのFileUploadを、redirectせずに行うことができます。 また、サーバ側で作成したファイルをBlobstor…

Slim3 BlobstoreAPIを使ってみた!

先日、Slim3 Source Code Reading でFileUploadを読みました。 その時に、横山殿がBlobstoreのサンプルも作ってきてくださいました。 Blobstoreに関しては、Slim3というよりはGAEの話になりますが、FileUploadと同じような用途で使うということで試してみた…

Slim3 もっと読むを作ってみた!

ソーシャル系なんかで、よく見る"もっと読む"機能。 これを作りたかったので、やってみました。 基本的には公式のサンプルにあるページングと同じです。http://code.google.com/intl/ja/appengine/articles/paging.html最初はoffset,limitを使って作ろうと思…

Slim3 Source Code Reading No6に参加してきた!

Slim3 Source Code Reading #6 - ChugokuGTUGに参加してきました! 今回も@ttyokoyama 殿と2人だったので、まったりと進みました。 まぁ、他の方が参加していても、まったり進むのですがwT.Yokoyamaのブログ: Slim3 Source Code Reading #6 さて、今回はFir…

Slim3 シャーディングカウンタを改良した!

Slim3 シャーディングカウンタ作ってみた。 - SinDiary先日作成したシャーディングカウンタですが、あおうさ殿にご指南をいただきました! window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (…

Slim3 Source Code Reading No5に参加してきた!

Slim3 Source Code Reading #5 - ChugokuGTUGに参加してきました! 今回も@ttyokoyama 殿と2人だったので、まったりと進みました。 まぁ、他の方が参加していても、まったり進むのですがwT.Yokoyamaのブログ: Slim3 Source Code Reading #5 まずは、Memcach…

Slim3 シャーディングカウンタ作ってみた。

Slim3でシャーディングカウンタを作ってみました。Slim3 シャーディングカウンタを改良した! - SinDiary 改良版が上記になります! シャーディングカウンタをご存じない方のために簡単に説明します。 GAEでアクセスカウンタなどを作ろうとした時に、1つのE…

Slim3 PRGパターン

2012-01-17上記のBlogを見て、PRGパターンとはなんだろう?と思って調べてみた。 PRGパターンとは, POSTメソッドによるリクエストに対してリダイレクトを返し, GETメソッドの応答として遷移先の画面を表示するというものです。ということらしい。 因みに上…

Slim3 カスタムインデックスを試してみた。

window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) return t; js = d.createElement(s); js.id = id; js.src = "https://platform.twitter.com/widgets.js"; fjs.paren…

Slim3 UnitTestでXGTransactionを使う時の課題

Slim3 Source Code Reading #4 に参加してきました。その時に、話題になったのが、UnitTestでXGTransactionを使う時に、 そのクラス単体でテストすると動作するのに、プロジェクト全体のテストを行う時は、Errorになるということ。使い方自体は、shin1ogawa…

XG Transaction がUnitTestで動かない。

Slim3のUnitTestでXGTransactionを動作させることができなくてハマっている。とりあえず、現状は以下の通り。■環境 GAE 1.6.0 Slim3 1.0.15 Eclipse 3.5 まずは、実行の構成をHRDに設定 http://code.google.com/intl/en/appengine/docs/java/tools/devserver…