レガシーJava / JSP WebアプリでのGroovy / Grailsの使用
質問
私は幸運にもGrailsを使い始められました。ただし、多くの人から、GroovyやGrails、あるいはその両方をレガシーJava / JSP Webアプリに追加する方法を尋ねられました。 GroovyとGrailsを大規模なレガシーアプリケーションに最適に組み込む方法に関する経験や推奨事項はありますか?
解決
このIBM Developerworksの記事では、 Grailsをレガシーデータベースで使用する方法。
レガシーデータベースをgrailsドメインオブジェクトにマッピングするのに役立つツールは、 GRAG-the Grails Application Generator 。これは、マッピングクラスの生成に役立つ便利なツールです。
3番目のオプションは、gorm / domainレイヤーにGrailsを使用しないことです。代わりに、Javaで非常にうまく機能するため、既存のレガシーJavaコードを呼び出すサービスを作成できます。ビジネスロジックと永続性のため。
これらのアプローチのいずれかがあなたの役に立つことを願っています。
他のヒント
私が見たことの1つは、GrailsをエンタープライズJavaアプリケーションの管理インターフェイスとして使用することです。統合されていないので、それはまさにあなたが尋ねたものではありません。 Grailsでは、簡単に分割して非常に迅速に開発された一連の要件がありました。実際には、それらは別々のアプリケーションですが、同じデータを使用します。
jspsとgrailsアプリ間でデータモデルを共有することから始めます(プレーンはJavaクラスとhibernate configで実行できます。したがって、既にhibernateを使用している場合は、hibernateクラスを再利用するのは難しくありません) 。次に、各jsp / servletをそのまま grailsに移行します。すでにspringを使用している場合は、同じアプリケーションコンテキストを共有できるため、作業が簡単になります。
アプリの大きさやその他の要件に応じて、特にレガシーアプリでspringまたはhibernateを使用しない場合は、全体を書き直した方がよい場合があります。
Groovletとgspを取得する方法を説明したこの記事を見つけました 動作し、web.xmlの更新と、 プロジェクト。
http://www.ibm.com/developerworks/java/library/j-pg03155
次のjarファイルをプロジェクトに追加し、groovletは機能しました。
groovy-1.5.7.jar
asm-2.2.jar
antlr-2.7.6.jar
まだgspが動作していません。
「grails / groovyを追加」の意味に依存すると思います。アプリへ-grailsは完全なスタックであるため、「追加」する場合はつまり、古いものを新しいものに置き換えてから、書き直す価値があるかもしれません。
他の人が言ったように、Grailsは完全なスタックなので、Grailsを既存のJavaアプリに追加することは、あなたが探しているものではないかもしれません。ただし、既存のGrailsアプリにJavaを追加するのは簡単です。また、既存のJavaアプリにGroovyを追加するのもそれほど難しくないかもしれません。
あなたが話しているJavaアプリの種類に大きく依存します。 Grailsは、Spring MVC、Hibernate、および類似の標準Javaテクノロジーに基づいて構築されているため、Javaアプリがそれらすべてを使用している場合、レガシーJavaコードを使用してアプリをGrailsに簡単に変換できます。