在Spring中传递整数时出现错误。
<bean id="propConfig" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location" value="/WEB-INF/application.properties"/>
</bean>
<bean id="portListenerService" class="com.service.portListenerService" scope="prototype" lazy-init="true" parent="abstractService">
<property name="devicePort" value="${devicePort}"/>
</bean>
portListenerService.java:
@Required
public final void setDevicePort(Integer devicePort) {
this.devicePort= devicePort;
}
这是正确的方法吗?因为出现错误:
org.springframework.beans.factory.BeanCreationException:创建在ServletContext资源[/WEB-INF/service-config.xml]中定义的名称为'portListenerService'的bean时出错:初始化bean失败;嵌套的异常是org.springframework.beans.TypeMismatchException:无法将类型[java.lang.String]的属性值转换为属性'devicePort'的必需类型[int];嵌套异常为java.lang.IllegalArgumentException:原始不得为null
即使当我对端口进行硬编码而不是从
application.properties
中提取端口时,我也会遇到相同的错误。还有其他问题吗? 最佳答案
devicePort
相关代码是否可能违反javabean规范-如此discussion中那样?