問題タブ [spring-boot]
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.
spring - Spring Boot Secure サンプルスタックトレース
Spring Boot GIT プロジェクトをプルダウンしmvn eclipse:eclipse
、spring-boot-sample-secure フォルダーで実行し、そのプロジェクトだけを STS にインポートしました。ただし、実行すると、次のようになります。
maven を実行して Eclipse プロジェクトをビルドする以外 (およびインポート時に STS が行った可能性があるもの) 以外は、ファイルにまったく変更を加えていません。サイトは正常に動作しているようです。ユーザー/パスワードを使用してログインできます。ログアウトできます。エラーなし。しかし、そのスタック トレースは見栄えが悪いです。これは、大量消費の準備が 100% できていない可能性があるあまり生産的ではないコードによって引き起こされた、ただのレッド ヘリング メッセージですか、それとも追跡すべき問題を示しているのでしょうか?
templates - thymeleaf を使用して親レイアウトでテンプレートをラップする
spring-boot と thymeleaf を使って小さなプロジェクトを始めることにしました。
thymeleaf 自体は今のところ素晴らしいように見えますが、私の質問は、ページの基本的なレイアウトをもたらす、layout.html などを作成するための最良の方法は何かということです。
like
- 一般的な css インクルージョン
- 一般的な js インクルージョン
- 基本構造 (例: 2/3 列のレイアウト)
これは、単一のページのコンテンツ (ブログ投稿の表示、コメントの表示、ギャラリーの画像の表示など) にラップされているため、すべてのテンプレートに共通のものを持ち込む必要はありません。
今まで私が見つけた唯一の方法はフラグメントインクルージョンを使用することですが、これが現在のリクエストに対してレンダリングしたいテンプレートの周りの完全な構造を取得するための正しいアプローチであるかどうかはわかりません
<div class="content"></div>
私のテンプレートをどのように取得しますか?
誰かが助けてくれることを願っています。
前もって感謝します
spring-boot - スプリングブート組み込み戦争
Spring-Boot アプリにサードパーティの戦争を含めるにはどうすればよいですか? 従来の tomcat デプロイ ルートではなく、単一の実行可能なアーティファクトに固執したいのですが、hawtio ( http://hawt.io/getstarted/index.html ) のようなものも含めたいと思います。
どんな提案でも大歓迎です。
java - Spring アプリを本番サーバーにデプロイするにはどうすればよいですか?
私は戦争として(グラスフィッシュに)展開しようとしているEclipseで構築されたSpring MVCアプリを持っています。次のような Application クラスがあります。
編集: 私は近づいています。war ファイルがデプロイされます。しかし、どの Web サービス エンド ポイントにも到達できません (それらはすべて 404 を返します)。
そして、次のような application-context.xml :
コントローラーは次のようになります。
編集2 ポインタをありがとう。ここからの解決策: http://spring.io/guides/gs/convert-jar-to-war/は、このようなクラスを追加することでした。まだテストしていませんが、これは web.xml の代わりになると思います:
ありがとう
java - カスタム @Configuration クラスで spring-boot プロパティの注入が機能しない
データベース関連のもの (EntityManager、DataSource、TransactionManager) をセットアップし、フィールドで使用@Value("${property.name}")
するプロパティを取得する DatabaseConfig クラスを作成したかったString
お気に入り
問題は、プロパティ ファイルの値ではなく、これらすべての文字列が NULL であることです。
コードを自分のApplication
クラス (main
と で参照されているクラス) に入れるとSpringApplication.run(Application.class, args);
、値の注入が機能します。
つまり、 @Value は Application クラスでは機能しますが、カスタム @Configuration クラスでは機能しません:(
何が間違っている可能性がありますか?それとももっと情報が必要ですか?
更新: より多くのコード
方法 1、Application.java の DB Config と @Value は、PropertySourcesPlaceholderConfigurer の有無にかかわらず動作します
方法 2 (私がしたいこと)、独自のファイル (DatabaseConfing.java) 内の DB スタッフはPropertySourcesPlaceholderConfigurer
、DatabaseConfig 内の @Beans の後に常に呼び出されるため、(Application または DatabaseConfig) がある場所に関係なく機能しません:(
init.d - デーモンとしての Spring Boot (Tomcat) ベースのアプリケーション - 停止方法は?
組み込みの tomcatをコンテナーとして使用するSpring Boot Web サービスを作成しました。
システムが再起動した場合に備えて、いくつかの情報を mysql データベースにバックアップしたいと考えています。
私のWebサービスでは、バックアップを実行するために@Scheduled()
とを使用しています。@PreDestroy
^C でサーバーを停止するとうまくいきます。
しかし、sysV スクリプト( /etc/init.d
) と kill コマンドを使用してプロセスを強制終了すると、デーモンが mysql に依存していても、バックアップが完了する前に mysql サーバーがシャットダウンされます (ログに SQL 例外が発生します)。
もちろん、その理由は、 kill はプロセスを停止するためのシグナルのみを送信するためです。
(sysv スクリプトから) 実行中の Spring Boot Tomcat サーバーを同期的に停止するにはどうすればよいですか?
spring - Spring Boot の application.properties で使用できるプロパティのリストは?
Spring Boot ドキュメントには、application.properties ファイルでプロパティを設定できると書かれています。
しかし、設定できる利用可能なプロパティをリストしたドキュメントが見つかりません。
そのようなドキュメントはどこにありますか?
たとえば、埋め込みサーブレットの documentRoot を設定したいとします。
setDocumentRoot() メソッドが AbstractEmbeddedServletContainerFactory.java に実装されていることがわかりました。
しかし、メソッドをいつどこで呼び出すか、または application.properties で設定できるプロパティの名前がわかりません。
Spring Boot の目的は構成を容易にすることなので、簡単なはずだと思います。
前もって感謝します。
アップデート:
M. Deinum さんの提案で、application.properties に「server.document-root: someDirectoryName」を追加したところ、以下のエラーが発生しました。
org.springframework.boot.context.embedded.properties.ServerProperties の実装方法が原因だと思います。( https://github.com/spring-projects/spring-boot/blob/97cb7f096798ecd016de71f892fa55585d45f5eb/spring-boot/src/main/java/org/springframework/boot/context/embedded/properties/ServerProperties.javaを参照)
「@ConfigurationProperties(name = "server", ignoreUnknownFields = false)」を宣言します。そのため、「server」で始まるアプリケーション プロパティを管理し、不明なプロパティ名を許可しません。
また、documentRoot の getter/setter はサポートしていません。
ところで、ServerProperties クラスは org.springframework.boot.autoconfigure.web.ServerPropertiesAutoConfiguration によって Bean に作成されます ( https://github.com/spring-projects/spring-boot/blob/97cb7f096798ecd016de71f892fa55585d45f5eb/spring-boot-autoconfigure/srcを参照)。 /main/java/org/springframework/boot/autoconfigure/web/ServerPropertiesAutoConfiguration.java ) を設定して、構成プロセスに参加できるようにします。
そこで、ServerProperties 風のものと ServerPropertiesAutoConfiguration 風のものを自分で実装してみました。
コードは次のとおりです。
そして、application.properties に次の行を追加しました。
sample.server.documentRoot: someDirectoryName
...そしてそれはうまくいきます!
「############## setDocumentRoot」がコンソールに出力され、ドキュメント ルートが実際に設定されます。
それで、今は幸せですが、これは正しい方法ですか?