タグ付けされた質問 「spring-boot」

Spring Bootは、最小限の手間で、Springを利用したプロダクショングレードのアプリケーションとサービスを簡単に作成できるフレームワークです。これは、Springの新規および経験豊富なユーザーのために機能するように設計されたSpringプラットフォームの見解を示しています。

14
WebサーバーなしのSpring Boot
JMSキューからメッセージを取得し、一部のデータをログファイルに保存する単純なSpring Bootアプリケーションがありますが、Webサーバーは必要ありません。WebサーバーなしでSpring Bootを起動する方法はありますか?
101 java  spring-boot 

10
Spring Bootによって暗黙的に使用されるJackson JSONマッパーをカスタマイズする方法は?
私はSpring Boot(1.2.1)を、RESTful Webサービスの構築チュートリアルと同様の方法で使用しています。 @RestController public class EventController { @RequestMapping("/events/all") EventList events() { return proxyService.getAllEvents(); } } 上記のように、Spring MVCはEventListオブジェクトをJSONにシリアル化するために暗黙的にJacksonを使用します。 しかし、次のようなJSON形式にいくつかの簡単なカスタマイズを行いたいと思います。 setSerializationInclusion(JsonInclude.Include.NON_NULL) 問題は、暗黙のJSONマッパーをカスタマイズする最も簡単な方法は何ですか? このブログ投稿でCustomObjectMapperを作成するなどの方法を試しましたが、ステップ3「Springコンテキストでのクラスの登録」は失敗します。 org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jacksonFix': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire method: public void com.acme.project.JacksonFix.setAnnotationMethodHandlerAdapter(org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter); nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No …

13
EclipseでSpring Bootアプリケーションをデバッグする方法は?
私のSpring Bootwebappは問題なく実行されています。Eclipseを使用してデバッグしたいと思います。 それでは、リモートJavaアプリケーションデバッガーを起動するときに、どのポートをリッスンする必要がありますか?そして、デバッグを有効にするために設定する必要がある私のwebappの設定はありますか?

8
メソッドorg.postgresql.jdbc.PgConnection.createClob()はまだ実装されていません
このエラーを解決するにはどうすればよいですか: java.lang.reflect.InvocationTargetException: null at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_161] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_161] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_161] at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_161] at org.hibernate.engine.jdbc.env.internal.LobCreatorBuilderImpl.useContextualLobCreation(LobCreatorBuilderImpl.java:113) [hibernate-core-5.2.14.Final.jar:5.2.14.Final] at org.hibernate.engine.jdbc.env.internal.LobCreatorBuilderImpl.makeLobCreatorBuilder(LobCreatorBuilderImpl.java:54) [hibernate-core-5.2.14.Final.jar:5.2.14.Final] at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentImpl.<init>(JdbcEnvironmentImpl.java:271) [hibernate-core-5.2.14.Final.jar:5.2.14.Final] at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:114) [hibernate-core-5.2.14.Final.jar:5.2.14.Final] at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:35) [hibernate-core-5.2.14.Final.jar:5.2.14.Final] at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.initiateService(StandardServiceRegistryImpl.java:88) [hibernate-core-5.2.14.Final.jar:5.2.14.Final] at org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:259) [hibernate-core-5.2.14.Final.jar:5.2.14.Final] at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:233) [hibernate-core-5.2.14.Final.jar:5.2.14.Final] at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:210) [hibernate-core-5.2.14.Final.jar:5.2.14.Final] at org.hibernate.engine.jdbc.internal.JdbcServicesImpl.configure(JdbcServicesImpl.java:51) [hibernate-core-5.2.14.Final.jar:5.2.14.Final] at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.java:94) [hibernate-core-5.2.14.Final.jar:5.2.14.Final] at …
99 java  spring-boot 

7
Spring Boot-application.ymlからマップを挿入する
私は次のSpring Bootアプリケーションを持っていますapplication.yml-基本的にここから取得しました: info: build: artifact: ${project.artifactId} name: ${project.name} description: ${project.description} version: ${project.version} 特定の値を注入できます。 @Value("${info.build.artifact}") String value ただし、マップ全体、つまり次のようなものを挿入したいと思います。 @Value("${info}") Map<String, Object> info それは可能ですか?もちろん、yamlを直接ロードできますが、Springですでにサポートされているものがあるかどうか疑問に思っていました。

7
bootRunからJVMオプションを渡す方法
リモートホストと通信する簡単なSpring Webアプリケーションを開発しています。企業のプロキシの背後でローカルにテストしたいと考えています。「Spring Boot」gradleプラグインを使用していますが、JVMのプロキシ設定を指定するにはどうすればよいですか。 私はそれを行うためにいくつかの方法を試しました: gradle -Dhttp.proxyHost=X.X.X.X -Dhttp.proxyPort=8080 bootRun export JAVA_OPTS="-Dhttp.proxyHost=X.X.X.X -Dhttp.proxyPort=8080" export GRADLE_OPTS="-Dhttp.proxyHost=X.X.X.X -Dhttp.proxyPort=8080" しかし、それらのどれも機能しないようです-「NoRouteToHostException」は「ネットワーク」コードをスローします。また、JVM開始引数をデバッグするためのコードをいくつか追加しました。 RuntimeMXBean runtimeMxBean = ManagementFactory.getRuntimeMXBean(); List<String> arguments = runtimeMxBean.getInputArguments(); for (String arg: arguments) System.out.println(arg); また、出力された引数は「-Dfile.encoding = UTF-8」のみです。 コードでシステムプロパティを設定した場合: System.setProperty("http.proxyHost", "X.X.X.X"); System.setProperty("http.proxyPort", "8080"); すべてうまくいきます!

3
SpringBootTestでMockMvcを使用する場合とWebMvcTestを使用する場合の違い
私はSpringBootを初めて使用し、SpringBootでテストがどのように機能するかを理解しようとしています。次の2つのコードスニペットの違いについて少し混乱しています。 コードスニペット1: @RunWith(SpringRunner.class) @WebMvcTest(HelloController.class) public class HelloControllerApplicationTest { @Autowired private MockMvc mvc; @Test public void getHello() throws Exception { mvc.perform(MockMvcRequestBuilders.get("/").accept(MediaType.APPLICATION_JSON)) .andExpect(status().isOk()) .andExpect(content().string(equalTo("Greetings from Spring Boot!"))); } } このテストでは、@WebMvcTestフィーチャスライステスト用であると私が信じているアノテーションを使用し、WebアプリケーションのMVCレイヤーのみをテストします。 コードスニペット2: @RunWith(SpringRunner.class) @SpringBootTest @AutoConfigureMockMvc public class HelloControllerTest { @Autowired private MockMvc mvc; @Test public void getHello() throws Exception { mvc.perform(MockMvcRequestBuilders.get("/").accept(MediaType.APPLICATION_JSON)) .andExpect(status().isOk()) .andExpect(content().string(equalTo("Greetings …

8
Spring Bootapplication.propertiesの値が入力されていません
非常にシンプルなSpringBootアプリがあり、外部化された構成で動作させようとしています。スプリングブーツのドキュメントの情報に従おうとしましたが、障害にぶつかっています。 以下のアプリを実行すると、application.propertiesファイルの外部構成がBean内の変数に入力されません。何か提案をありがとう、私は愚かなことをしていると確信しています。 MyBean.java(/ src / main / java / foo / bar /にあります) package foo.bar; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.stereotype.Component; @Component public class MyBean { @Value("${some.prop}") private String prop; public MyBean() { System.out.println("================== " + prop + "================== "); } } Application.java(/ src / main / java …

8
Spring Boot @ResponseBodyがエンティティIDをシリアル化しない
奇妙な問題があり、それに対処する方法を理解することができません。単純なPOJOを持っている: @Entity @Table(name = "persons") public class Person { @Id @GeneratedValue private Long id; @Column(name = "first_name") private String firstName; @Column(name = "middle_name") private String middleName; @Column(name = "last_name") private String lastName; @Column(name = "comment") private String comment; @Column(name = "created") private Date created; @Column(name = "updated") private Date updated; …

20
java.lang.IllegalArgumentException:タイプの戻り値のコンバーターが見つかりません
このコードで @RequestMapping(value = "/bar/foo", method = RequestMethod.GET) public ResponseEntity<foo> foo() { Foo model; ... return ResponseEntity.ok(model); } } 次の例外が発生します java.lang.IllegalArgumentException: No converter found for return value of type ジャクソンがないため、オブジェクトをJSONに変換できないと思います。私はジャクソンが春のブーツで組み込まれたと思ったので、なぜだかわかりません。 次に、ジャクソンをpom.xmlに追加しようとしましたが、それでも同じエラーが発生します <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> <version>2.4.3</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.4.3</version> </dependency> これを機能させるには、スプリングブーツのプロパティを変更する必要がありますか? ありがとうございました

11
統合テスト用のSpring-bootのデフォルトプロファイル
Spring-bootはSpringプロファイル(http://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-profiles.html)を利用します。これにより、たとえば、環境ごとに個別の構成を設定できます。この機能を使用する1つの方法は、統合テストで使用するテストデータベースを構成することです。ただし、独自のプロファイル「test」を作成し、各テストファイルでこのプロファイルを明示的にアクティブ化する必要があるのでしょうか。今、私はそれを次のようにしています: src / main / resources内にapplication-test.propertiesを作成します そこにテスト固有の構成を書き込みます(今のところデータベース名のみ) すべてのテストファイルには、次のものが含まれます。 @ActiveProfiles("test") よりスマートで簡潔な方法はありますか?たとえば、デフォルトのテストプロファイル? 編集1:この質問はSpring-Boot1.4.1に関連しています

17
SpringBootアプリのapplication.propertiesファイルでHikariCPを構成するにはどうすればよいですか?
Spring Boot(1.2.0.M1)アプリでHikariCPをセットアップして、TomcatDBCPの代わりに使用してテストできるようにしようとしています。Tomcatで行っていたようにapplication.propertiesファイルで接続プールを構成したいのですが、どのように行うべきかわかりません。私が見つけたすべての例は、JavaConfigスタイル、または別のHikariCPプロパティファイルの使用を示しています。誰かが私がapplication.propertiesでそれを構成するためにプロパティ名を理解するのを手伝ってもらえますか?また、見た目がすっきりしていて推奨されているため、driverClassNameアプローチの使用からDataSourceClassNameアプローチの使用に切り替えたいと思います。これは私のapplication.propertiesファイルでも可能ですか? これがTomcatDBCP用に持っていたものです(完全にフラッシュされていない、いくつかの基本的な構成のみ) spring.datasource.validation-query=SELECT 1 spring.datasource.max-active=10 spring.datasource.max-idle=8 spring.datasource.min-idle=8 spring.datasource.initial-size=5 spring.datasource.test-on-borrow=true spring.datasource.test-on-return=true そして、私は現在、driverClassNameとjdbcurlを使用して接続を設定しています。 spring.datasource.url=jdbc:mysql://localhost:3306/myDb spring.datasource.driverClassName=com.mysql.jdbc.Driver

11
SpringBoot-実行中のポートを取得する方法
私はSpringBootアプリケーション(組み込みのTomcat 7を使用)を持っており、ランダムなポートを持つことができるように設定server.port = 0しましたapplication.properties。サーバーを起動してポートで実行した後、選択したポートを取得できるようにする必要があります。 @Value("$server.port")ゼロなので使えません。これは一見単純な情報ですが、Javaコードからアクセスできないのはなぜですか?どうすればアクセスできますか?

6
Spring BootTestはlogging.levelを無視します
Mavenモジュールの1つが、テストの実行時にログレベルを無視します。 でsrc/test/resources、私持っていますapplication.properties: app.name=bbsng-import-backend app.description=Import Backend Module for Application spring.profiles.active=test # LOGGING logging.level.root=error logging.level.org.springframework.core =fatal logging.level.org.springframework.beans=fatal logging.level.org.springframework.context=fatal logging.level.org.springframework.transaction=error logging.level.org.springframework.test=error logging.level.org.springframework.web=error logging.level.org.hibernate=ERROR 私も試しましたapplication-test.properties。 私のアプリケーションは、特にコンテキストをロードするときに、多くのログを記録します。私が試したlogback.xml、logback-test.xmlとlogback-spring.xml何も助けません。 私のpom: <parent> <groupId>at.company.bbsng</groupId> <artifactId>bbsng-import</artifactId> <version>0.1.0-SNAPSHOT</version> </parent> <artifactId>bbsng-import-backend</artifactId> <name>bbsng-import-backend</name> <properties> <start-class>at.company.bbsng.dataimport.ApplicationImportBackend</start-class> </properties> <dependencies> <!-- APPLICATION ... --> <dependency> <groupId>at.company.bbsng</groupId> <artifactId>bbsng-app-domain</artifactId> <scope>test</scope> </dependency> <!-- SPRING ... --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-batch</artifactId> …

7
@ComponentScanから@Componentを除外する
@ComponentScan特定のから除外したいコンポーネントがあります@Configuration: @Component("foo") class Foo { ... } そうでなければ、それは私のプロジェクトの他のクラスと衝突するようです。衝突についてはよくわかりませんが、@Component注釈をコメントアウトすると、思い通りに動作します。ただし、このライブラリに依存する他のプロジェクトでは、このクラスがSpringによって管理されることを想定しているため、自分のプロジェクトでのみスキップしたいと思います。 私は使ってみました@ComponentScan.Filter: @Configuration @EnableSpringConfigured @ComponentScan(basePackages = {"com.example"}, excludeFilters={ @ComponentScan.Filter(type=FilterType.ASSIGNABLE_TYPE, value=Foo.class)}) public class MySpringConfiguration {} しかし、それは機能していないようです。を使用しようとするとFilterType.ASSIGNABLE_TYPE、一見ランダムに見えるクラスを読み込めないという奇妙なエラーが発生します。 原因:java.io.FileNotFoundException:クラスパスリソース[junit / framework / TestCase.class]が存在しないため、開くことができません 私もtype=FilterType.CUSTOM次のように使用してみました: class ExcludeFooFilter implements TypeFilter { @Override public boolean match(MetadataReader metadataReader, MetadataReaderFactory metadataReaderFactory) throws IOException { return metadataReader.getClass() == Foo.class; } } @Configuration …

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.