myfaces与mojarra(JSF RI)处理空属性类型的不同

最近写了一点JSF程序,在使用mojarra的时候没有问题,但是改为myfaces为就会报错,错误是ClassNotFoundException,但是没说明到时是那个Class没找到,这个问题搞了好久才发现原来是某个ManageBean的property的class设置为空,如下:

<managed-property>
            <property-name>travel</property-name>
            <property-class></property-class>
            <value>#{travel}</value>
        </managed-property>

mojarra在处理这个空的property-class属性时候,会自动辨别,若是空的,则自己会通过反射去查找class,而myfaces的处理则不同,他会傻傻的去加载一个空的class,而且这种错误很难找,系统没办法告诉我那个class没有找到。我没有看过jsf规范,不清楚规范怎么规定这个的,不过可以看出JSF的兼容性只停留在理论上。

由于我使用的是eclipse的wtp可视化工具来编辑faces-config,这个工具比较垃圾,我若是没选class的话,就设置一个空的,而不会不使用property-class属性。看来可视化工具还是不好,还写手写的好,至少可以控制一切,尤其在java领域,工具还没有VS studio那么强大,很多时候,还是相信自己的手。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值