Play! framework 2.0 から 2.1 に移行したときの苦労話

を見ながらやったけどそれだけじゃうまく動いてない。

  • パッケージ名がいくつか変わった
    • play.api.PlayException.UsefulException => play.api.UsefulException
  • null を返していたプロパティーなどがOptionを返す用になった
    • UsefulException.cause など
    • cookie.maxAge など
  • Html.+ が非推奨になって Html.+= に
  • json の扱いが変わった
    • jacksonの新しいやつ使ってたけど変更が大変そうだったので使わないようにした
    • Json.toJson が使えなくなった
  • multipartFormDataパーサがファイル未送信時もテンポラリファイルを作って返すようになった
    • なんで・・・
    • MultipartFormData[TemporaryFile].get()
    • ファイルサイズなどを見て未送信かどうかを判断しないといけなくなった
  • testの設定にフレームワーク縛りが入った
  • eclipse から インテグレーションテストすると javascript の読み込みが失敗する
    • テスト中に classpath に target/scala-2.10/classes を無理矢理追加するようにした
  • DB.withTransaction がその中でreturnしているとコミットもロールバックもしてくれなくなった
  • seleniumjquery 1.7.1 をうまく実行出来ない
    • 1.8.1に変えたらうまく動いてる
  • scala が 2.10 になった(追記:以下勘違いかも コメント欄参照)
    • for( i <- aaa) などでaaaがfilterだけ実装していれば仕えたけれどforeach等を実装しないと使えなくなった。
    • then というメソッド名が警告が出るようになった
    • 可変数引数の扱いが変わってるっぽい。暗黙の型変換がうまくいってない→明示的に変換するようにした
  • テストが落ちる socket closedとかいって落ちる(3/29追記)


あと Enumerator.fromCallback が警告が出て Enumerator.generateM をつかえといってくるけどよくわからない・・・(;´Д`) Enumerator.outputStream が使いやすそう。