Chonaso's Commentary

InternetやIT技術などについて知ったこと、試したこと、考えたことを書いていきます。

JerseyTestでHttpServletRequestを使いたい

Jerseyのテストフレームワークは小気味よく動くけどフィルタとかちょっと凝ったことしても通るんだろうか、と不安に思っていたらやっぱりテストが通りませんでした。

どうもHttpServletRequestなどServletエンジンに依存するオブジェクトが取れない(nullになる)ようです。

続きを読む

DBFluteフェス2014に行ってきました

昨年に続き「DBFluteフェス2014」に行ってきました。

以前、渋谷Java*1Domaの@nakamura_toさんが参加されていた際に@jfluteさんがDBFluteフェスへの参加を呼び掛けるというプロレスのような展開があり、往年のSeasarファン垂涎のDBFluteフェスが実現しました。

なんとなくtweetの方に力を入れていたこともあり、メモを取っていませんので感想メインです。 (各コマで2セッションだったため、参加したセッションについてのみとなります)

(イベントページ)

(DBFluteコミッタのjfluteさんの記事)

続きを読む

不作法なWebAPIにハマる

プロダクトコードなので詳細は非公開ですが、とあるパブリックじゃないWebAPIへのアクセスで激ハマりしたのでその記録などひとつ。

そのWebAPIの仕様書(のようなもの)にはレスポンス内の文字コードについての言及がなく、「メッセージは英語なのかな」って勝手に思い込んでいたのですが、先方の試験用環境にアクセスしたら思いっきりマルチバイト文字だった、というところから始まりました。

完全に文字化けしていてどうしようもない状態だったので、先方に「これ文字コード何ですか?」と確認したら「シフトJISです(ぺこり)」との回答。

ならば、ちょろっと.getBytesして文字コード変換すればいいかな、と思いましたが、妙な違和感。

そもそもhttpclient使っている系のライブラリでこの手の問題(文字化け)って出くわした(解決した)記憶がないのです。

続きを読む

twitter4jでハマったこと

社内のハッカソンTwitter(twitter4j)を使ったアプリを作りましたが、時間内に解決できなかった問題があって、調査の時間も取れずになかなか解決できずにいました。

問題というのはすぐにAPI制限がかかってしまうというものです。

429:Returned in API v1.1 when a request cannot be served due to the application's rate limit having been exhausted for the resource. See Rate Limiting in API v1.1.(https://dev.twitter.com/docs/rate-limiting/1.1)
message - Rate limit exceeded
code - 88
Relevant discussions can be found on the Internet at:
    http://www.google.co.jp/search?q=ec1fe56d or
    http://www.google.co.jp/search?q=1e3b4ab6
TwitterException{exceptionCode=[ec1fe56d-1e3b4ab6], statusCode=429, message=Rate limit exceeded, code=88, retryAfter=-1, rateLimitStatus=RateLimitStatusJSONImpl{remaining=0, limit=15, resetTimeInSeconds=1410595332, secondsUntilReset=864}, version=4.0.2}
    at twitter4j.HttpClientImpl.handleRequest(HttpClientImpl.java:163)
    at twitter4j.HttpClientBase.request(HttpClientBase.java:53)
    at twitter4j.HttpClientBase.get(HttpClientBase.java:71)
    at twitter4j.TwitterBaseImpl.fillInIDAndScreenName(TwitterBaseImpl.java:128)
    at twitter4j.TwitterImpl.verifyCredentials(TwitterImpl.java:545)
・・・

な感じで怒られます。

続きを読む

秋のJavascript祭り

秋のJavascript祭りに行ってきました。

最近、社内でもフロント周りのニーズが高まってきてることもあり、主に情報収集の一環です。

どうも参加者はデザイナー寄りな方々が多い様子。backbone.jsとかAngularJSあたりのSPAとかバインディング、あるいはnode.jsなどのサーバサイド的な話題はかなり少なめでした。

Javascriptは書けないけどjQueryは書けます」っていうのは「Rubyは書けないけどRailsなら書けます」的な感じなんですかね(適当)。

続きを読む

YAPC::Asia Tokyo 2014

YAPC::Asia Tokyo 2014に行ってきました。

いちおうJavaを生業にしてることになってるんですが、 日常的に書いてる(書き捨ててる)コードといえば今でもPerlだったりします。 CentOS系ならpythonもいいんですが、Perlはだいたい環境を選ばないのでその辺も便利です。

とはいえ、YAPCトークのお品書きを見てもあんまりPerlって感じじゃないですね。

1日目は午後から行ったんですが、人多過ぎでセッションやってる部屋に入れずノベルティ抱えて帰宅して出社。

2日目は前日の教訓から場所取りのために初回セッションの1時間くらい前に到着して待機。 「朝イチのセッションは集まり悪いですねー」とか言いながらセッション始まる頃には振り向くと人がギッシリ。

キャパが小さいなら規模の大きいカンファレンスでよくある、各セッション単位での事前登録制がよさそうです。

続きを読む