2016-12-27 10 views
2

Я пытаюсь загрузить файл внешних свойств весной загрузки с помощью tomcat, он работает как ожидалось, поместив его в папку lib, но я не могу загрузить веб-сервер, хотя Я поместил файл application.properties в папку lib.Не удалось загрузить файлы внешних свойств с помощью springboot в weblogic

Фрагмент кода:

 public class ApplicationFilesInitializer extends SpringBootServletInitializer implements WebApplicationInitializer { 

     @Override 
     protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { 

      return application.sources(Application.class).properties(getProperties()); 
     } 

     static Properties getProperties() { 
      Properties props = new Properties(); 
props.put("spring.config.location","classpath:{appname}-application.properties"); 
     return props; 
     } 

    } 
+0

Трудно сказать без более подробно. Вы пишете код, который читает файл внешних свойств? Вы можете это показать? –

+0

@StephaneNicoll: Я добавил код. –

+0

, поэтому вы помещаете файл с именем «appname-application.properties» в каталог lib, и вы ожидаете, что веблогик увидит его? Если бы я получил это право, это, вероятно, какая-то особенность Tomcat, но вы не должны полагаться на это. Убедитесь, что этот файл находится на пути к классу сервера. –

ответ

2

Так Ниже ссылка для загрузки файла внешних свойств.

https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html

код, который вы разделяете будет работать в Tomcat, как под Lib папкой является фактическими классами, так что будет загружаться в то время как сервер запускается, но он не будет работать с WebLogic как WebLogic классы папка домена пользователя и а не папке lib.

Можете ли вы попробовать поместить файл application.properties в папку домена пользователя, и он должен работать.

Найдите свой путь домена пользователя в weblogic и установите приложение. файлы там.

Ниже приведен код, который вы можете найти WebLogic домена пользователя путь /:

классам
String appDomianPath= System.getProperty("user.dir"); 
System.out.println(appDomianPath); 
+0

@Boot: Как я могу найти путь к классу weblogic serverpath? –

+1

Я отредактировал в ответе. Я также согласен с @Stephane, что вы не должны ожидать такого же поведения, как tomcat в weblogic. Правило Thumb - ваши файлы должны быть в вашем пути к классам. –

+1

Он отлично работает после размещения файла app.prop в моем пути к классам (который находится на одном уровне выше папки lib). Спасибо @S Boot и StephaneNicoll за очистку моей концепции и за быструю помощь. –

 Смежные вопросы

  • Нет связанных вопросов^_^