Chr*_*ure 4 java spring dependency-injection jersey-2.0 spring-boot
为什么我的Jersey ResourceConfig类中的port成员0在运行时?
Application.property文件:
#web server
server.port=9000
Run Code Online (Sandbox Code Playgroud)
JerseyConfig文件:
@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);
}
}
Run Code Online (Sandbox Code Playgroud)
谢谢你的帮助!
在Spring容器初始化之前,您在构造函数中使用port.你不能用Spring做到这一点.
改为构造函数注入:
@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);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
709 次 |
| 最近记录: |