Developers Summit 2014 「Play2/Scalaでドメイン駆動設計を利用した大規模Webアプリケーションのスクラム開発の勘所」
Form submission and validation Handling form submission Protecting against CSRF Custom Validations Custom Field Constructors Main concepts Section introduction Configuration API HTTP programming Asynchronous HTTP programming The Twirl template engine Form submission and validation Working with Json Working with XML Handling file upload Accessing an SQL database Using the Cache Calling REST APIs wi
Play 2.0 では次のように "name" -> text などのマッピングを定義してコメントのフォームを作ります。 例 case class User(name: String, email: Option[String]) val userForm = Form( mapping( "name" -> text, "email" -> optional(text) )(User.apply, User.unapply) ) このフォームにリクエストを Form#bindFromRequest でバコッと bind するがパターンです。 でも 標準では text, number, date などのようなフィールドしかないです。例えば、 MomoiroCloverZ などのフィールドはないです。全く。困ってしまいますね。 このようなときでも、Formatter[MomoiroClove
Dependency injection in Scala with Play 2: it’s free When you write a software you generally split it into several modules with no hardcoded dependencies between them so you can reuse and test them more easily: you just need to wire the different modules together at startup according to your desired configuration. In the Java world, some tools help to perform the wiring task, e.g. Spring or Guice,
Play framework 2.0 betaが出たようです6 – Dependency Injectionをやってみよう PlayでDependency injectionを実現する 先日Play framework2.0でおもしろそうなtipsがblogで紹介されていたので、ここでもご紹介。 そのブログ 内容はPlay framework2.0(Scala)でDIを実現しようというものです。 近年のJava系Webアプリケーションで、DIはあたりまえのように使用されていると思います。 Play frameworkにもSpringやGuiceを使用するためのモジュールがありますが、独自にDIの仕組みをもっているわけではありません。 しかし、今回ご紹介するtipsではPlay framework2.0とScala標準の機能(とデザインパターン)でDIを実現しています。 ではblogの内容に
Using a storage service like AWS S3 to store file uploads provides an order of magnitude scalability, reliability, and speed gain than just storing files on a local filesystem. S3, or similar storage services, are important when architecting applications for scale and are a perfect complement to Heroku’s ephemeral filesystem. This article will show you how to create a Java web application with Pla
こんにちは、馬場です。 唐突ですが、現在Play! + Scalaで開発しています。 それまではほとんどJava (たまにRuby/Rails)で作っていたので、本格的にサービスをScalaで作るのは初めて。 慣れないながらもすごく楽しくやっていましたが、プロジェクト開始早々でてきた不満。それは 「DIしたい…」 なぜなら「テストが面倒だから」。 データベースアクセス、webapiの呼び出し、メール送信と外部リソースへアクセスする処理のオンパレード。テストのたびに実行していたらスローテストに陥ることは目に見えています。リファクタリング/パフォーマンスチューニング/ライブラリのアップデートに耐えるためにも、ここはぜひともDIを導入しておきたい。 というわけで、Scala アプリケーションへのDIの導入体験を紹介したいと思います。 Java で DI まずはJavaのDIコンテナSpri
いろいろ方法があるとは思いますが、紹介するのは文字列をパースして追加する方法です。 com.typesafe.config.ConfigFactory は内部的に利用されているので何もしなくても import 出来ます。 play console [info] Loading project definition from /private/tmp/todolist/project [info] Set current project to todolist (in build file:/private/tmp/todolist/) [info] Starting scala interpreter... [info] Welcome to Scala version 2.9.1.final (Java HotSpot(TM) 64-Bit Server VM, Java 1.6.0_3
設定ファイルを読む Play framework 2.0では、デフォルトの設定ファイルとしてconf/application.confファイルが使用されます。 applicaiton.conf以外に自分でファイルを追加することもできますし、それを別ファイルでincludeすることも可能です。 これらPlay frameworkで使用される設定ファイルは、Typesafe configライブラリに基づいており、 HOCONフォーマット(Human-Optimized Config Object Notation。JSONみたいなフォーマット)を使用して記述可能です。 では試してみましょう。 今回使用した動作環境は以下のとおりです。 OS : MacOS X 10.7.2 Playframework : HEAD Java : 1.6.0_26 Eclipse : 3.7 注意: この記事では
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く