Tag: spring

Maven WAR Build for Tomcat:“无法打开ServletContext资源”

关于这个话题已经有一些问题了,但是我的Tomcat运行还不顺畅。 我的工作空间包括jsf和spring。 只要我在Eclipse中构build和运行locale中的项目并将其部署到Eclipse中的Tomcat中,一切都运行良好。 但是现在我想将war文件部署到外部Tomcat中,在我的情况下是Docker-Container中的Tomcat。 所以我做的是: *使用以下Maven-pom(摘录)构buildWAR文件。 *并将战争文件复制到我的正在运行的容器,如下所示: docker cp projectName.war containerID:/ usr / local / tomcat / webapps / 在Tomcat启动期间,我总是得到以下错误。 一开始,我已经将applicationContext.xml文件直接放在WEB-INF文件夹中。 但是我知道在“\ WEB-INF \ classes”中使用它会更好,所以我将它移动到那里,并在web.xml中执行了以下context-Location-parameter。 所以工作空间的Hierarchy看起来像下面的图片projectName | – 网页内容 | – WEB-INF | – pom.xml 另一件事是,当我在构build之后提取war文件以查看applicationContext.xml文件的实际位置时,我在“\ WEB-INF \ classes”中find了它,但是在web中的context-Location-parameter .xml缺lessfind它。 我也试着把applicationContext.xml -File的副本放到src / main / resources中 ,这导致,这个文件位于WAR文件的正确位置,但web.xml改变了。 有人build议在何处放置applicationContext.xml文件,以及如何在构build过程中包含和指向正确的方法。 此外,为什么web.xml在构build过程中发生变化。 还是有一个完全不同的问题? 感谢帮助。 的pom.xml <version>0.0.1-SNAPSHOT</version> <packaging>war</packaging> <properties> […]

从docker云在docker上的docker集装箱

我在Docker云上有一些存储库。 我build立和部署在我家的Ubuntu的服务器,并且工作得很好。 在我的家庭服务器,我可以访问这些服务与他们的url(如http://registry:8761 )。 我想在Windows上的Kitematic上运行我的服务,所有我的服务都在本地主机上运行,​​所以我的configuration在application.yml,我说我的registry服务是在http://registry:8761不起作用。 有人可以帮我吗? 谢谢

JRebel和Docker bean初始化错误

我正在使用运行在Docker上的JBoss部署我的应用程序。 当我运行脚本来build立和运行图像时,一个bean仍然在制造麻烦: ServerService Thread Pool — 100| ERROR [org.springframework.web.context.ContextLoader] – Context initialization failed: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'applicationValidatorService': Cannot resolve reference to bean 'applicationValidator' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'applicationValidator' defined in file [/home/exion/.jrebel/cache/ib-validation-ws-impl/deployment/META-INF/spring/ws-applications-beans.xml]: Cannot resolve reference to bean 'poolTaskManager' while setting bean property 'taskManager'; […]

在Docker上的Eureka上获取正确的域名

我正在微服务体系结构上使用Spring框架,我正在使用带有自签名证书(* .mydomainname.fr)的HTTPS。 作为注册我使用尤里卡和作为代理我使用Zuul。 所以我的服务必须在名为"service-name".mydomainname.fr Eureka上注册,因为我的证书。 此外,我暂时不使用DNS,我只是在/ etc / hosts(127.0.0.1 register.bec3.fr)中手动添加域名。 在这里,我的微服务架构。 我想用docker-composedocker把我所有的服务都装上去。 我的docker-compose.yml是: version: '3' services: registration-service: image: maven:alpine container_name: register.bec3.fr working_dir: /usr/src/spring-boot-app volumes: – ./scripts:/usr/src/spring-boot-app/scripts – ./sslcert:/usr/src/spring-boot-app/ssl – ./registration-service:/usr/src/spring-boot-app – ./.m2:/root/.m2 expose: – 8761 entrypoint: bash -c "keytool -noprompt -import -alias ioteam.bec3 -file /usr/src/spring-boot-app/ssl/ioteam.pem -keystore /usr/lib/jvm/java-1.8-openjdk/jre/lib/security/cacerts -storepass xxxxxx && mvn -Dspring.profiles.active=docker spring-boot:run" #entrypoint: bash […]

无法在Docker容器中运行jar Spring引导

我有Spring启动应用程序,我想在Docker容器中运行它。 我可以使用java -jar在我的OS X中运行jar文件,但不能在容器中运行。 我使用mvn clean package docker:build docker run wayruha/schedule_guard构build镜像mvn clean package docker:build使用docker run wayruha/schedule_guard mvn clean package docker:build和运行容器,并得到exception(问题结尾的堆栈跟踪) jar子的内容: -META-INF | — MANIFEST.MF | —行家 | -boot-INF | —class | —– COM | —– LIB | —–的logback-spring.xml | —– 其他资源 | -org 当然,它不能find在src/main logback属性,它不在那里,但为什么它在我的操作系统? 或者为什么它不在容器中工作? 除此之外,我的代码中没有任何对src/main/resources/logback-spring.xml (也许Spring试图find它?) 非常感谢您的帮助,我自己也找不到解决办法 这是我的pom.xml <?xml version="1.0" encoding="UTF-8"?> <project […]

Docker – SpringConfig – 连接拒绝configuration服务器

我想用DockerCompose部署一个ConfigServrService和一个远程仓库的客户端。 docker-compose.yml就像: version: '2' services: rabbitmq: image: rabbitmq ports: – "5672:5672" config-server: image: config-server environment: – "SPRING_PROFILES_ACTIVE=desa" ports: – "8888:8888" links: – rabbitmq depends_on: – rabbitmq user-service-config: image: user-service-config environment: – "SPRING_PROFILES_ACTIVE=desa" ports: – "8090:8090" links: – config-server – rabbitmq depends_on: – rabbitmq – config-server 在他们部署的那一刻,客户端控制台显示: cccConfigServicePropertySourceLocator:从服务器获取configuration: http:// localhost:8888 (而不是http:// config-server:8888 ) 之后,控制台显示: 找不到PropertySource:对“ http:// […]

在Docker虚拟机上运行并在本地主机上运行的服务如何dynamic注册到EUREKA?

我的Eurekaconfiguration有问题。 通常我所有的服务都作为虚拟机中的docker容器运行。 我的configuration如下所示: eureka: instance: prefer-ip-address: true ip-address: 192.168.99.100 有时我想debugging一个服务并在本地启动它作为spring-boot应用程序,并且仍然在上面注册IP。 据我了解,configuration中的IP只是覆盖真实的IP。 我的想法解决这个问题,是一个configuration文件,它覆盖了Docker虚拟机IP。 但是我的机器IP正在定期更换。 有没有办法让IP的configuration根据我的机器IPdynamic变化。 eureka: instance: prefer-ip-address: true ip-address: 192.168.99.100 — spring: profiles: local eureka: instance: ip-address: TODO change dynamically 如果这还没有实施,我可以自己实施吗? 非常感谢! 🙂

在OpenShift上Spring Bean注入失败

我在Spring Boot应用程序中添加了一个Spring Messaging的新Spring集成configuration。 应用程序在我的MAC上正确部署和运行。 但是,当部署到OpenShift(使用OpenJDK)或Docker运行时部署失败,并出现以下错误: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'org.springframework.messaging.MessageChannel' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Qualifier(value=ftpChannel)} 下面是代码失败的一个简化的版本以相同的错误: import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.messaging.MessageChannel; import org.springframework.stereotype.Service; @Service public class FtpService { private final MessageChannel ftpClientInboundChannel; public FtpService(@Qualifier("ftpChannel") MessageChannel […]

JHipster微服务的服务模板无法从UAA服务器检索JWT token_key

我已经在我的本地机器上使用docker-compose部署了我的jhipster-registry , UAA服务器和GATEWAY服务器。 现在我试图用mvnw或者mvn spring-boot部署我的服务:运行 ,(没有docker来部署它)因为我更容易使用我的IDE进行debugging。 然而,一旦我尝试开始我的服务,我得到这个输出: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'org.springframework.security.oauth2.config.annotation.web.configuration.ResourceServerConfiguration': Unsatisfied dependency expressed through field 'tokenStore'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'tokenStore' defined in class path resource [id/co/fifgroup/dpa/config/MicroserviceSecurityConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.security.oauth2.provider.token.TokenStore]: Factory method 'tokenStore' threw exception; […]

使用Firebase侦听器的后端Java应用程序的多个实例的问题

我正在运行在docker中的后端Java应用程序(使用Spring)中工作。 此应用程序有一个Firebase实时监听器。 在本地它是完美的! 但是,当我在Docker中部署它并创build2个实例(容器)时,当我在Firebase RTDB中进行更改(它应该只执行一次)时,它开始运行相同的逻辑2次。 这是我在Bean中创build侦听器的代码: FirebaseOptions options; options = new FirebaseOptions.Builder() .setServiceAccount(new FileInputStream(resourceDir + File.separator +"test1.json")) .setDatabaseUrl("https://test1.firebaseio.com/").build(); FirebaseApp.initializeApp(options); final FirebaseDatabase database = FirebaseDatabase.getInstance(); DatabaseReference listenerRef; DatabaseReference commerceRef; commerceRef.orderByChild("got").equalTo(0).addChildEventListener(new ChildEventListener() { @Override public void onChildAdded(DataSnapshot dataSnapshot, String prevChildKey) { LOGGER.info("data changed:" + dataSnapshot.getKey()); LOGGER.info("data ref:" + dataSnapshot.getRef()); ……logic …. } catch (Exception e) { LOGGER.info("Error […]