最近、Spring Bootに付属のServletRegistrationBeanを使用して、自分自身のサーブレットBeanをMVCに追加することができました。しかし、ドキュメントはこれが埋め込みサーブレットコンテナのためだけであることを示唆しているようです:http://docs.spring.io/spring-boot/docs/current/reference/html/howto-embedded-servlet-containers.html 私の簡単な質問は、ServletRegistrationBeanを埋め込みコンテナで使うことができるか、あるいは外部のTomcatに戦争を展開するときですか?Spring Boot ServletRegistrationBeanと外部Tomcatへのデプロイ
1
A
答えて
2
ServletRegistrationBean
は、Tomcat(または他のサーブレットコンテナ)にBootアプリケーションをデプロイするとき、Bootが独自のDispatcherServlet
を登録する方法とまったく同じです。
0
私はSpringブートwarファイルをweblogicにデプロイするときに同様の問題がありました。サーブレットはServlet 3.x Webコンテナのサポートに登録することができます。 weblogicはサーブレットBeanの新しいサーブレットインスタンスインスタンスを作成しようとしています。
@Bean
@ConditionalOnMissingBean
public GraphQLServlet graphQLServlet(GraphQLSchemaProvider schemaProvider, ExecutionStrategyProvider executionStrategyProvider) {
return new SimpleGraphQLServlet(schemaProvider, executionStrategyProvider, objectMapperConfigurer, listeners, instrumentation, errorHandler, contextBuilder, graphQLRootObjectBuilder);
}
@Bean
ServletRegistrationBean graphQLServletRegistrationBean(GraphQLServlet servlet) {
return new ServletRegistrationBean(servlet, graphQLServletProperties.getServletMapping());
}
およびWebLogicは、このような例外がスローされます。
<Oct 2, 2017 4:08:31 PM SGT> <Error> <HTTP> <BEA-101125> <[[email protected][app:cpapps-gra3.1]] Error occurred while instantiating servlet: "simpleGraphQLServlet".
java.lang.InstantiationException: graphql.servlet.SimpleGraphQLServlet
at java.lang.Class.newInstance(Class.java:427)
at weblogic.servlet.internal.WebComponentContributor.getNewInstance(WebComponentContributo
at weblogic.servlet.internal.WebComponentContributor.getNewInstance(WebComponentContributo
at weblogic.servlet.internal.WebComponentContributor.createServletInstance(WebComponentCon
at weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.newServletInstanceIfNece
Truncated. see log file for complete stacktrace
Caused By: java.lang.NoSuchMethodException: graphql.servlet.SimpleGraphQLServlet.<init>()
at java.lang.Class.getConstructor0(Class.java:3082)
at java.lang.Class.newInstance(Class.java:412)
at weblogic.servlet.internal.WebComponentContributor.getNewInstance(WebComponentContributo
at weblogic.servlet.internal.WebComponentContributor.getNewInstance(WebComponentContributo
at weblogic.servlet.internal.WebComponentContributor.createServletInstance(WebComponentCon
Truncated. see log file for complete stacktrace
>
Webリクエストが直接のWebLogicなく、春のディスパッチャサーブレットに行くようです。
しかし、同じwarファイルをtomcatに配備して、エラーなく実行できることは難しいです。
関連する問題
- 1. 外部Tomcatにプロジェクトをデプロイ
- 2. spring-boot + tomcat RewriteValve
- 3. Spring Boot Embedded Tomcatパフォーマンス
- 4. Spring Boot Tomcatの配備
- 5. Spring Boot Tomcatで外部サーバーのSSL証明書を設定する方法は?
- 6. spring boot war log4j2
- 7. tomcat 5.5でのSpringのデプロイ
- 8. TomcatコンテキストTomcatにSpringアプリケーションをデプロイするときのルーツ - タイル例外
- 9. spring-bootのtomcatのデフォルト接続プール?
- 10. Grails 3.1.10 spring-boot-starter-tomcatプラグインをWAR生成から除外
- 11. Spring BootとDockerを使用する外部プロパティファイル
- 12. spring boot/thymeleafネストループオブジェクトへのアクセス
- 13. spring-boot以外のConfigurationProperties
- 14. tomcatにspring-boot appを設定する
- 15. Spring BootアプリケーションでTomcatがハングする
- 16. spring-boot-starter-webとspring-boot-starter-web-servicesとspring-boot-startter-jerseyの相違点
- 17. Spring Boot埋め込みTomcatまたは埋め込みTomcat
- 18. Spring Boot APP - ユニットテスト
- 19. Liberty Spring Boot対Spring Boot
- 20. SpringブートTomcat依存関係を除外
- 21. Intellij spring boot PropertiesLauncher
- 22. Spring Boot外部化プロパティが機能しない
- 23. spring-boot - 外部log4j設定が動作しない
- 24. Spring Boot Kotlin Jersey ModelValidationException
- 25. Spring mvc:外部フォルダへのリソースのアクセス
- 26. tomcatに外部webappをデプロイする方法は?
- 27. inMemoryAuthentication with Spring Boot
- 28. 埋め込まれたTomcatログの静的パスと外部パス
- 29. GAEからTomcatへのGWTアプリケーションのデプロイ
- 30. spring-boot 1.4.x