web-dev-qa-db-ja.com

GrailsアプリケーションをScala Play / Sprayに移行する

PostgreSQLを介してGORM/Hibernateを使用する中程度のサイズのGrails Webアプリケーションと、HTMLを提供するGSP、およびいくつかのREST APIがあります。Scalaで標準化しており、このアプリケーションをPlayに移行したいと考えていますまたはスプレー。Slickを使用して既存のデータベースにアクセスします。

Nimble は現在、認証/承認およびユーザー/ロール/などに使用されています。管理。

ビッグバン移行を回避して段階的に移行を行うために私たちがとることができるアプローチは何ですか?

それらは両方ともJVM言語ですが、それらを別々のポートで別々のポートで実行されている別々のWebアプリとして扱うことを回避する方法はありますか?

12
John M

個人的には、書き換えの方が効率的に聞こえますが、段階的に行う必要がある場合は、次のアプローチをとることをお勧めします。

  • Slickを使用するように既存のデータベースコードを移動します(多すぎる変更から既存のコードを保護するには、おそらくその周りにラッパーが必要になります)。
  • 次に、Playをランタイムに統合し、Playアクションでの認証と承認にSilhouetteを使用します。
  • その後、個々のGSPを一度に1つずつPlay/Twirlに移動できます。

残念ながら、同じポートをリッスンする方法がわからないので、シームレスにするためにGrailsからPlayポートにリダイレクトする必要があります。

1
rspencer