在 WebLogic Server 9.2 上部署 Spring 时,抛出 NotWritablePropertyException 异常。根据 stack 信息显示发现是无法装配 某些 bean 相关的 property。但是配置信息都是依据 Spring 的的规范进行配置的,不可能产生错误的。
后来在网上搜索一下相关的资料发现好多同学都碰到这种情况,而且产生异常的原因比较古怪。大部分都是由于 Class 的 property 名称引起的,也就是变量名称的第二个字母不能为大写。例如:
当然 Spring 配置文件就会如下所示:
<
bean
id....
<property name
="eRgotAdapter"
>
<
ref
bean
="eRgotAdapter"
/>
</
property
>
</
bean
>
此时如果启动 weblogic 定然会报错,后来修改为如下的方式后即可正常启动:
.....
private
ERgotAdapter ergotAdapter;

public
void
setErgotAdapter(ERgotAdapter ergotAdapter) ...
{
this.ergotAdater = ergotAdapter
}
......
<
bean
id....
<property name
="ergotAdapter"
>
<
ref
bean
="eRgotAdapter"
/>
</
property
>
</
bean
>
目前还不知道具体是什么导致了这个问题的发生。
后来在网上搜索一下相关的资料发现好多同学都碰到这种情况,而且产生异常的原因比较古怪。大部分都是由于 Class 的 property 名称引起的,也就是变量名称的第二个字母不能为大写。例如:
.....
private
ERgotAdapter eRgotAdapter;

public
void
setERgotAdapter(ERgotAdapter eRgotAdapter)
{
this.eRgotAdater = eRgotAdapter
}
......





......
当然 Spring 配置文件就会如下所示:





此时如果启动 weblogic 定然会报错,后来修改为如下的方式后即可正常启动:













目前还不知道具体是什么导致了这个问题的发生。