You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
はじめに 弊社で開発するモバイルバックエンドのサーバサイドAPIアプリケーションコード (Play framework + Scala) はビジネスロジックを担う主要なパッケージである services, domains が外部のインフラやAPIインターフェイスに直接依存しないようなパッケージ構成をとっています。(Clean Architecture) services, domains の構成についてはDDDの経験が浅く、まだまだ改善の余地があると考えており、今後どうしていくか考えていくにあたって参考になるであろうページをまとめてみました。 尚、DDDまわりにおける筆者の現在の知識はドメイン駆動設計の第二部までを読み終わり、第三部を読み始めた程度です。 DDDと関連のあるCQRS+ES(Command and Query Responsibility Segregation + Even
#発端 Play 2.4 Migration Guide https://www.playframework.com/documentation/2.4.x/Migration24 Ebean dependencyの項 Ebeanを外部プロジェクト化することで、 Playのライフサイクルとは独立したライフサイクルを持たせ、 互いに依存しないようにする……らしきことが書いてある さらに、Play2.3まではplay.db.ebean.Modelを継承してModelクラスとしていたが、 このパッケージは非推奨になり、com.avaje.ebean.Modelに置き換えられた #編集したファイルと追記内容 公式ドキュメントとほとんど一緒 project/plugins.sbt 以下を追記 addSbtPlugin("com.typesafe.sbt" % "sbt-play-ebean" % "
Play Framework 2.3 For Java 入門記事一覧 第8回はWebアプリケーションで重要な要素の一つであるフォームの話です。 フレームワークに乗っかれば、リクエストのマッピング、バリデーション、エラー表示などいろいろなことを面倒みてくれます。何気にこの仕組みって自分で作ろうとしたらすごく大変です。では、いってみましょう。 1. Playでのformの扱い方を見てみる まず、DocumentationにFormの説明があるんですが、どこから始めればいいかというか、リクエストとかデータベースとの関わりみたいのがピンときません。 どうしようもんかとGoogleの海をサーフィンしてたら、そもそもPlayのトップページにチュートリアル動画があることに気づきました。 このチュートリアル動画がなんとまぁ分かりやすいこと。なぜ、今まで見なかったんだろうかw ということでこの動画を見てみる
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? こんにちは、深澤です! 最近、playframeworkを使うことが多いのですが、 バージョンが上がって、「あぁ、変わったな〜」と感じることがあったので今回まとめてみました。 誰かの参考になれたらと思います。 なお、今回はjavaの方で語っていきます! #eclipseコマンドがなくなった!? はい、最初に気が付いた異常はこれですね。 今まで、playアプリケーションをeclipseのプロジェクトとして読み込む際、 アプリケーションのルートディレクトリで、以下のコマンドを使ってからeclipseにインポートしてました。 $ activa
Windowsに、Play Framework 2.5 (Java)の開発環境をEclipseで構築します。 ※Macはこちら ⇒ Play Framework 2.5 (Java) の開発環境をEclipseで構築:Mac編 - Qiita 環境 Windows 10 Play 2.5.10 JDK 1.8.0 Eclipse 4.6 Neon (Pleiades All in OneのJavaパッケージ) 事前準備 事前に以下の設定をしておく。 JDK 1.8のインストール Eclipse 4.6 (Pleiades All in OneのJavaパッケージ) Pleiades - 統合開発環境 Eclipse 日本語化プラグイン Typesafe Activatorのインストール Lightbend社のページから、Typesafe Activatorをダウンロードする。 https:
JavaとScalaに対応するWebフレームワークPlay Frameworkのバージョン2.3が、今年の5月末にリリースされました。このバージョン以降、これまではオプション扱いだったTypesafe Activatorの利用が必須となりました。 ということで、以下、Linux Mint Debian Edition環境にPlay Framework 2.3.1をセットアップして、使い心地などを試すことにしました。 Play Frameworkのダウンロードと新規プロジェクトの作成 先ずは、Play Frameworkの公式サイトのダウンロードページから、最新版のPlay Frameworkをダウンロードして、ファイルを展開後、次のコマンドで出来上がったフォルダに移動します。 $ cd activator-1.2.3-minimal 続いて、次のコマンドで、新規プロジェクトを作成。 ./a
TypesafeのPlayチームがWebフレームワーク“Damiya”のバージョン2.4をリリースした。前回のメジャーリリースPlay 2.3からは,およそ1年ぶりになる。今回のリリースは,PlayのコントリビュータであったKate von Roeder氏を追悼して,Damiyaと命名されている。 2.3から依存性注入(DI)を採用して開始されたリファクタリングによるモジュール性の向上は,今回のリリースでも継続されている。その方針によって,Anormデータアクセス層やEbeanといったモジュールが別プロジェクトとして切り出された。また今回のPlayではJava 8が必須となり,ラムダやデフォルトメソッドがJava-APIで使用されている。 依存性注入はこれまでのバージョンでもサポートされていたが,今回からは初期状態で使用可能になるとともに,利用が推奨されるようになった – グローバルステー
はじめに 2014/07/12現在、IntelliJ IDEA 14.1 で Play Framework 2.4 (Scala) 以降のプロジェクトをインポートすると、routes ファイル内で名前解決が行われず、シンタックスエラーになってしまう問題があります。 これは、Play Framework 2.3 以前では object として管理していた Controller を、 同2.4以降では class として管理するようになった事に起因しています。 IntelliJ IDEA の Scala Plugin ver 1.5.2(現行最新)は、上記の仕様に対応していないため問題が発生しています。 次のバージョンのリリースが待たれますが、EAP(Early Access Program)バージョンでは、この問題がすでに解決しているため、今回はそちらをインストールする方法をお伝えします。
CM Developers.IO 2016 in Osaka 二週間以上も前のことになりますが、Develpers IO in Osaka 2016 で ゲンバのクリーンアーキテクチャと題して、クリーンアーキテクチャ を用いて、現場でモバイルバックエンドAPIをどのように開発しているかについて発表しました。 発表スライド Content of session 当日発表したセッションの概要です。 クリーンアーキテクチャとは Clean codeの著者であるRovert C.Martin氏が提案したアーキテクチャです。外界(API I/F, DB Schema, 外部システム)に依存しないコードをどのように記述し、パッケージ等を整理するかについて明確な方針を与えます。 外部に依存しないコードを記述するために DI(依存性注入) と DIP(依存性反転の原則)を用いて外部に依存するコードの抽象を
Playframework 2.4がでてました 今年の5月に、Playframeworkの2.4 "Damiya"がリリースされました。 2.2以降、Playにはさわっていなかったのですが、2.4になってDI機能が追加される等、 けっこうかわった部分もあるみたいなんで、ひさびさに使ってみます。 なお、"Damiya"っていうのはPlayのコントリビュータのGithub上のaliasらしいです。 でもって、今後の2.4.x系リリースには全部名前がつくみたいです。 動作環境 今回使用した動作環境は以下のとおりです。 * OS : MacOS X 10.9.4 * Java : 1.8.0_11 Playのインストール&プロジェクト作成 まずはPlay2.4のインストールから始めます。 ここからzipをダウンロードしてパスを通すか、 Homebrewをつかってtypesafe-activator
はじめに CRUD処理およびメール送信を行うWebアプリケーションをPlay 2.5(Scala)で作成してみます。 Kona Linux UEも新しいバージョンになったことですし、今回はノートPCにKona Linux UE 2.0(Ubuntu 16.04 LTS)をインストールしただけの真っ新の状態からスタートし、最終的にAmazon EC2(Ubuntu 14.04 LTS)にデプロイするところまでやってみたいと思います。 なお、今回のコードは下記で公開しています。 https://github.com/imahiro-t/play-app.git 他の関数型言語のWebフレームワークでの実装はこちら Yesod 1.4でのCRUD処理およびメール送信(stackによる開発環境の構築からketerによるデプロイまで) PhoenixでのCRUD処理およびメール送信(mixによる開
Play Framework 2.3 For Java 入門記事一覧 第9回はページャーとかセッションとかやろうと思ったけど、やっぱりフォーム編で話したFieldConstructorという概念がとても難しかったので、もうちょっと詳しく見ていこうと思います。 FieldConstructorは@form(){}の中で、@inputText()などのフォームのヘルパーを使うと自動的に適用されるというものだってことは分かりました。でも、実際のWebアプリケーションで、フォームの中が全て、同じtypeのフォームばっかり(例えばテキストボックスだけ)みたいなことって絶対ないし、同じhtml構造をとれるわけがないと思います。 例えば、サンプルプロジェクトの一つの、computer-database-javaだと、こんな風に一つのフォームに対して、全て同じtwitterBootstrapInputのF
Play Framework 2.3 For Java 入門記事一覧 第11回はリレーションを持つエンティティに関するCRUDについてです。 #6 データベース接続(JPA with Hibernate)編で一つのテーブルだけ持つ場合のCRUDはできることが分かって、これでだいたいOKかなと思ってたけど全然まだまだだった。 実際の世界ではそんな単純な構造や関係というのはめったになくて、必ず1対1、1対多、多対多などのリレーションを持ったエンティティによって構成されます。なのでこのリレーションを持った場合のサンプルアプリケーションを作ってみました。 これがほんとに正しいかは分からないけど、ひとまず一通りのリレーションとCRUDを考慮してあります。 mpon/play-jpa-relation · GitHub サンプルアプリケーションのERの説明 サンプルとして、こんなERを作ってみた。 "
※ 環境構築 が完了していることを前提とします。 今日作成するアプリ 画面表示 登録後 1.ScalaとPlay Frameworkの簡単な説明 Scalaについて オブジェクト指向言語と関数型言語の特徴を統合した言語 Javaプラットフォーム(Java仮想マシン)上で動作する 既存のJavaのプログラムと容易に連携できるため、Javaの豊富なライブラリが使える Scalaの採用事例 主な採用事例 Twitter 株式会社ドワンゴ 株式会社はてな(mackerel) SmartNews LINE株式会社 ヌーラボ(Typetalk, Backlog) Scalaの採用事例一覧 Play Frameworkについて ScalaとJava言語で書かれたオープンソースのWebアプリケーションフレームワーク Ruby on RailsやDjangoと似た同種のフレームワーク 2.ディレクトリ構成に
Play Framework 2.3 For Java 入門記事一覧 第10回はログイン認証です。playの公式ドキュメントは色々な要素が紹介されてて、2.2系のdocumentには、認証に関するトピック - Adding Authenticateionがあったんだけど、2.3系にはログイン認証に関するページが存在しなかったので、色々見ながら最低限それっぽく動くところまでをやってみました。 最終的なソースはこちらmpon/play-shop · GitHub 2.2系のdocumentには、@Security.Authenticatedでリクエストの認証をやってるっぽいけど、2.3ではどうなんでしょう。deprecatedなやり方なのかな?とか不安に思ったんですが、2.3系のdocumentでもページこそ存在してないけど、こんな記述がありました。 JavaActionsCompositio
Java,Scala言語用フレームワーク Play Framework について、インストールからeclipseとの連携までを記載。基本的に公式ページ(日本語訳あり)を見ながらやるのがよいと思うのでここでは軽く流す程度にしておきます。※注意:Rails勉強中に見つけて興味持った程度なので詳しくはありません。 Play Framework 公式ページ。 https://www.playframework.com/ Play Framework ダウンロードページ。 https://www.playframework.com/download ドキュメント。(2.3.x系、日本語)インストール・開発方法など一通り解説あり。 https://www.playframework.com/documentation/ja/2.3.x/Home 1.activator ダウンロード&インストール 今回
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く