問題タブ [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.
java - Spring-Boot サンプルを開始できません
私はスプリングブーツのサンプルを試していました。これは具体的には、実行しようとしているspring-boot-sample-tomcatの例です。
指示通り、実行mvn package
して成功しました。しかし、 jar を実行するjava -jar target/spring-boot-sample-tomcat-0.5.0.BUILD-SNAPSHOT.jar
と、以下の例外が発生します。
クラスパスに配置する必要がある jar があるかどうかを確認してください。または、それを実行するために何をすべきか。
使用されているpom.xmlへのリンク。
java - @ComponentScan から @Component を除外する
@ComponentScan
特定の から除外したいコンポーネントがあります@Configuration
:
そうしないと、プロジェクト内の他のクラスと衝突するようです。衝突を完全には理解していませんが、注釈をコメントアウトすると、@Component
思いどおりに動作します。しかし、このライブラリに依存する他のプロジェクトは、このクラスが Spring によって管理されることを期待しているため、私のプロジェクトでのみスキップしたいと考えています。
私は使用してみました@ComponentScan.Filter
:
しかし、うまくいかないようです。を使用しようとするとFilterType.ASSIGNABLE_TYPE
、一見ランダムなクラスを読み込めないという奇妙なエラーが発生します。
原因: java.io.FileNotFoundException: クラスパスリソース [junit/framework/TestCase.class] が存在しないため開けません
私もtype=FilterType.CUSTOM
次のように使用してみました:
しかし、それは私が望むようにコンポーネントをスキャンから除外していないようです。
どうすれば除外できますか?
configuration - web.xml を使用した spring-boot アプリケーションの構成
生成された war ファイルに Jetty Web サーバーが組み込まれるように、既存の Spring Web アプリケーションを起動しています。回帰を制限するために、できる限り既存の構成に固執したいと考えています。
ここに既存のものがありweb.xml
ます:
ここに私のメインクラスがありJettyApplication.java
ます:
Gradle ビルド スクリプトを機能させるために、いくつかの変更を行いました。
- spring-boot-starter および spring-boot-starter-jetty への依存関係の追加
- spring-boot プラグインの構成
アプリは正常に起動し、コントローラーが読み込まれ、サーバーにクエリを実行できます。しかし、web.xml で定義されているフィルターはどれも有効になっていません。
PropertiesConfiguration.class
ここで、ApplicationConfiguration.class
とSpringDispatcherServletConfiguration.class
inのインポートを削除し、埋め込みサーブレット コンテナにJettyApplication.java
のコンテンツをロードまたはインポートすることで、何らかの方法でそれらを置き換えたいと考えています。web.xml
しかし、それが正しい戦略であり、それができるかどうかは無視します。助けていただければ幸いです。
- 解決
JettyApplication.class
デイブの答えに基づく最終的なものは次のとおりです。
近い将来、web.xml を ServletContainerInitializer に置き換えます... しばらくお待ちください ;)
spring - 休止状態の命名戦略
Spring (Boot) を使用して REST Web サービスを構築しており、xml 構成なしで hibernate を orm マッパーとして使用しようとしています。
基本的には動作するようになりましたが、構成の問題で立ち往生しています。@Configuration ファイルのLocalContainerEntityManagerFactoryBean
ようにインスタンス化します。@Bean
次の例のように設定hibernate.ejb.naming_strategy
します->テーブルが存在しない場合(列名は@Entityクラスのようにキャメルケースです)、テーブルを作成するために機能するようですが、クエリが実行されると、休止状態はこの命名構成を「忘れ」、 under_score_attributes で別の種類の命名戦略を使用しようとします --> 明らかに、これらのクエリは失敗します。設定する必要がある他のプロパティはありますか?
または、好ましくはまたはを追加せずにプロパティを構成する別の方法?cfg.xml
persistence.xml
java - Spring Boot - 環境 @Autowired が NullPointerException をスローする
Spring Boot 0.5.0.M5を使用してプロジェクトをセットアップしています。
私がしようとしている構成ファイルの1つで、@Autowire Environment
それはNullPointerException
.
これが私がこれまでに持っているものです:
アプリケーション.java
私がしようとしているJpaConfig.java@Autowire Environment
プロパティ ファイルで構成されたデータベース プロパティをロードしようとしています。ただし、Environment
は挿入されず、コードは で失敗しNullPointerException
ます。XML ファイルに構成がありません。
プロパティ ファイルについては、次のように構成PropertySourcesPlaceholderConfigurer
しました。
スワップを試み@Autowired
ましたが、これまでのところ何も機能していません@Resource
。@Inject
助けていただければ幸いです。ありがとう。
spring - Spring Boot を使用した Spring Security の構成
Java Configを使用してSpring Securityを構成するのは初めてです。この投稿をフォローしようとしていました。ただし、アプリを実行すると、を含むすべての URL でBasic Auth チャレンジが発生します。以下のユーザー ID/パスの組み合わせのいずれかを入力しても機能しないようです。/
私のコントローラー:
他に何を試すべきかわからない。これが機能しない理由についてのガイダンスを探しているだけです。
アップデート
完全を期すために、構成クラスを次に示します。
そして WebApplicationInitializer:
これらは、参照されているブログ投稿からほとんどコピーして貼り付けたものであるため、以前は含めていませんでした。
spring - インメモリデータベースを使用したSpring Bootのテスト
Spring Boot を使用して Spring Web プロジェクトを作成しました。テストに関する慣行を理解したい。初期のschema.sqlを使用するjunitには、hsqlまたはh2などのインメモリ組み込みデータベースが必要です。メインアプリケーションでは、データベースは mysql または oracle と言うことができます
Spring Boot 以外のプロジェクトでは、通常、Web アプリによって参照される別の applicationcontext.xml があり、テストには applicationContext-text.xml を使用します。
さて、Spring ブートではすべてが自動的に作成され、Spring Boot も操作されます。Junits 用の埋め込みインメモリ データベースと、アプリケーション用の MySQL のような外部データベースをセットアップする方法を知りたいです。
私が考えることができる 1 つの解決策は、プロファイルを使用することです。2 つのプロパティ ファイル application.properties と application-test.properties を使用します。私のjunitsにテストプロファイルを使用します。
私が取るべきアプローチに関する推奨事項。
spring - Spring Boot と Tomcat で .keystore ファイルを指定するにはどうすればよいですか?
Spring Boot の組み込み Tomcat インスタンスと連携するように Spring Security をセットアップしようとしています。これを行う基本的なサンプルはかなりの数ありますが、私はそれらが終了したところで立ち往生しています。それらは HTTP (HTTPS ではなく) を介して基本的な認証を行います。
Tomcat 構成ファイル ( ) にアクセスできる場合はおそらく機能させることができますserver.xml
が、Spring Boot は組み込みの Tomcat インスタンスを使用するため (そうでなければ非常に便利です)、Tomcat 構成ファイルにアクセスすることはできません (少なくとも、私の知識)。
これには設定があるかもしれapplication.properties
ませんが、追跡できませんでした。Tomcat の構成ファイルの置き換えに関係があるのではないかと思われるserver.contextPath
フィールドへの参照を見てきました。application.properties
関連していたとしても、とにかくどこから始めればよいかわかりません.Tomcat SSLの指示はすべて、既存のserver.xml
ファイルを編集することから始まり、ゼロから構築することではありません.
これは Spring Boot で実行できますか (何らかの方法でスニペットを指定するserver.xml
か、他の手段を介して)。そうでない場合、これを行う最も簡単な方法は何ですか? Spring Boot の Tomcat コンポーネントを除外する必要があるかもしれないことは理解していますが、可能であればそれを避けたいと考えています。
spring - スプリングブートローダーの拡張
spring-boot-loader の README ファイルに記載されている情報がわかりません
https://github.com/spring-projects/spring-boot/tree/master/spring-boot-tools/spring-boot-loader
埋め込みサーバーjarファイルを作成するためにスプリングブートによって内部的に使用される以外のスプリングブートローダーの正確な目的は何ですか。このプロセスを利用して、ファイルパスから追加の jar をロードして、クラスパスに含めることはできますか
spring - 使用するランチャーの指定
使用する別のランチャーをどのように指定できますか。M5リリースで追加されたPropertiesLauncherを使いたい
Mainfest ファイルを変更して、PropertiesLauncher クラスを使用するように強制しようとしましたが、機能しますが、このエラーがスローされます]
2013 年 10 月 28 日 12:42:44 PM org.springframework.boot.loader.PropertiesLauncher initializeProperties
情報: 見つかりました: application.properties 2013 年 10 月 28 日 12:42:44 PM org.springframework.boot.loader.PropertiesLauncher initializePaths 情報: ネストされたアーカイブ パス: [lib/]
2013 年 10 月 28 日 12:42:44 PM org.springframework.boot.loader.PropertiesLauncher getClassPathArchives 情報: lib/ からのクラスパス エントリの追加
java.lang.IllegalStateException: org.springframework.boot.loader.archive.Archive.getMainClass(Archive.java:52) で 'Start-Class' マニフェスト エントリが指定されていません org.springframework.boot.loader.PropertiesLauncher.getMainClass(PropertiesLauncher) .java:298) at org.springframework.boot.loader.Launcher.launch(Launcher.java:53) at org.springframework.boot.loader.PropertiesLauncher.main(PropertiesLauncher.java:343) で失敗したようですStart-Class が指定されていない jar を含む..