問題タブ [grails-3.1]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
angularjs - webapp Grails 2 を Grails 3 にアップグレード: index.html が表示されなくなりました
Grails 2 webapp プロジェクト (Grails バックエンドとフロントエンドとしての Angular) を Grails 3 に更新しました。
すべての web-app フォルダーを grails2 プロジェクトから src/main/webapp (src/main/resources でも試しました) フォルダーに移動しました。
現在、bootRun を実行中 --> http://localhost:8080/稼働中
http://localhost:8080/index.htmlにアクセスしようとするとエラーが発生します...
つまり、HTML ファイルにアクセスできないということです。エラーが表示されます:「このアプリケーションには /error の明示的なマッピングがないため、これはフォールバックとして表示されています。」URLMappings でエラーのリダイレクトについてコメントしたためです。ただし、Grails 3 では、同じ構成の URLMappings を使用して Grails2 で動作しているのに、index.html にアクセスできなくなった理由がわかりません。
確かに何かが欠けていますが、何の手がかりがありませんか?
どうもありがとう。
grails - Grails 3 での Sitemesh の使用
私は一連の grails 2.0.4 アプリケーションをバージョン 3.x に移行しています。それらはすべて、多数の Java アプリケーションとともに同じサーバーにデプロイされます。Java と grails アプリケーションの両方のセットは、sitemesh と freemarker テンプレートを使用して共通のルック アンド フィールを持っています。しかし、grails 3.x では、commond 装飾を機能させることができません。アプリケーションは、代わりに、layouts/main.gsp を使用して gsp をレンダリングすることを要求します。
これまでのところ (grails 2.0.4)、共通の装飾を提供することはかなり単純です。各 grails アプリケーションの /WEB-INF/decorators.xml ファイルは、適用可能な freemarker テンプレートへの参照を提供します。また、web.xml には、sitemesh フィルターと freemarker デコレーター サーブレットの宣言とマッピングが含まれています。
decorators.xml:
web.xml からの Sitemesh フィルターと freemarker サーブレット:
私が試したこと:
- decorators.xml を src/main/webapp/WEB-INF の下に移動しました
- Grails 3.x では、sitemesh フィルターはもう存在しないため、sitemesh.xml を削除しました。
- web.xml は使用されていないため、spring/resources.groovy で freemarker サーブレットを定義しました。
resources.groovy:
ただし、grails 3.x アプリケーションは、layouts/main.gsp を使用して gsp ページをレンダリングすることを要求します。decorators.xml が処理されていないようです。私は何が欠けていますか?
json - Grails 3.1 json レンダリング
アプリケーションを grails 3.0.13 から grails 3.1.1 にアップグレードしました。そうすることで、JSON レンダリングで興味深い問題が発生しました。
カスタム JSON マーシャラーを使用しています。
これを grails 3.1.1 で使用しようとすると、次のエラーが発生します。
そして、予定.リソース?.名前行で発生します。これを回避するさまざまな方法を試し、1 つのユースケースの回避策に成功しましたが、別の場所で同じエラーが発生しています。これをどこでも変更するのは、間違った方法のように思えます。
私のドメイン クラスでは、次のような関係を宣言しました。
リソースと顧客フィールドを熱心にロードする必要があると思いましたか? (私は以前、grails 3.0.14 ユーザー "customer lazy: false" で動作しました。
ただし、現在は機能しません。gorm 5 でのセッションの動作に変更はありましたか? json レンダリングでリレーションを引き続き使用できるようにするには、どうすればよいですか?
grails - grails 3 プロジェクトへのインプレース プラグインの追加
grails 2.x では、BuildConfig.groovy に以下を追加することで、インプレース プラグインを追加できました。
grails.plugin.location."my-plugin" = "../my-plugin"
私の質問は、ローカル プラグインを grails3.0 でも同様にインプレースで追加できるか、または grails でこれを行う別の方法があるかどうかです。
実際の目的は、プラグインを bintray にプッシュする前に、プラグインが正しく動作しているかどうかをテストすることです。