2016-03-22 37 views
4

neden benim port üyesi 0 Jersey ResourceConfig sınıfımdaki çalışma zamanında mı?Spring Boot, Jersey'in ResourceConfig sınıfındaki @Value özelliğini ayarlamıyor

Application.property dosyası:

#web server 
server.port=9000 

JerseyConfig dosyası: Yardımlarınız için

@Component 
@ApplicationPath(Pathes.APPLICATION_PATH) 
public class JerseyConfig extends ResourceConfig { 

    @Value("${server.port}") 
    private int port; 

    public JerseyConfig() { 
     final BeanConfig beanConfig = new BeanConfig(); 
     beanConfig.setVersion("1.0.0"); 
     beanConfig.setHost("localhost:" + port); 
     beanConfig.setBasePath(Pathes.APPLICATION_PATH); 
     beanConfig.setResourcePackage(myPackages); 
     beanConfig.setScan(true); 

     register(ApiListingResource.class); 
     register(SwaggerSerializers.class); 
    } 
} 

Teşekkür'ın!

+0

https://github.com/dsyer/spring-boot-jersey –

+0

mülkleriniz xml kayıtlıdır nasıl paylaşabilir miyim? –

+0

İlkbahar açılışında XML yapılandırma dosyası yok. Başlangıçta önyükleme ile yüklenen application.properties dosyasını kullanıyorum. – Chrisposure

cevap

5

İlkbahar kapsayıcısı tarafından başlatılmadan önce, bağlantı noktasında bağlantı noktasını kullanıyorsunuz. Bunu Spring ile yapamazsın. yerine

Do yapıcı enjeksiyon:

@Component 
@ApplicationPath(Pathes.APPLICATION_PATH) 
public class JerseyConfig extends ResourceConfig { 

    @Autowired 
    public JerseyConfig(@Value("${server.port}") int port) { 
     final BeanConfig beanConfig = new BeanConfig(); 
     beanConfig.setVersion("1.0.0"); 
     beanConfig.setHost("localhost:" + port); 
     beanConfig.setBasePath(Pathes.APPLICATION_PATH); 
     beanConfig.setResourcePackage(myPackages); 
     beanConfig.setScan(true); 

     register(ApiListingResource.class); 
     register(SwaggerSerializers.class); 
    } 
} 
+0

Teşekkür ederiz! Bu kadar! – Chrisposure