Hi Dan,
I still encounter <cxf:bus name=""> doesn't work with this commit.
You can reproduce by editing
rt/management/src/test/resources/managed-spring.xml
do change like
- <cxf:bus id="CXF-Test-Bus" bus="cxf"/>
+ <cxf:bus id="CXF-Test-Bus" name="cxf" bus="cxf"/>
then run mvn test -Dtest=BusRegistrationTest, you can see the error like
testRegisterMultipleBuses
(org.apache.cxf.management.jmx.BusRegistrationTest):
org.springframework.beans.factory.BeanCreationException: Error
creating bean with name 'cxf.config': Initialization of bean failed;
nested exception is
org.springframework.beans.ConversionNotSupportedException: Failed to
convert property value of type
'org.apache.cxf.bus.spring.BusDefinitionParser$BusConfig' to required
type 'org.apache.cxf.Bus' for property 'bus'; nested exception is
java.lang.IllegalStateException: Cannot convert value of type
[org.apache.cxf.bus.spring.BusDefinitionParser$BusConfig] to required
type [org.apache.cxf.Bus] for property 'bus': no matching editors or
conversion strategy found
Regards
Freeman
On 2011-9-9, at 下午8:23, dk...@apache.org wrote:
Author: dkulp
Date: Fri Sep 9 12:23:45 2011
New Revision: 1167126
URL: http://svn.apache.org/viewvc?rev=1167126&view=rev
Log:
Fix issue of using <cxf:bus name=""> causing problems in spring
Modified:
cxf/trunk/rt/core/src/main/java/org/apache/cxf/bus/spring/
BusDefinitionParser.java
Modified: cxf/trunk/rt/core/src/main/java/org/apache/cxf/bus/spring/
BusDefinitionParser.java
URL:
http://svn.apache.org/viewvc/cxf/trunk/rt/core/src/main/java/org/apache/cxf/bus/spring/BusDefinitionParser.java?rev=1167126&r1=1167125&r2=1167126&view=diff
=
=
=
=
=
=
=
=
======================================================================
--- cxf/trunk/rt/core/src/main/java/org/apache/cxf/bus/spring/
BusDefinitionParser.java (original)
+++ cxf/trunk/rt/core/src/main/java/org/apache/cxf/bus/spring/
BusDefinitionParser.java Fri Sep 9 12:23:45 2011
@@ -54,6 +54,10 @@ public class BusDefinitionParser extends
String bus = element.getAttribute("bus");
if (StringUtils.isEmpty(bus)) {
bus = element.getAttribute("name");
+ if (StringUtils.isEmpty(bus)) {
+ element.setAttribute("bus", bus);
+ element.removeAttribute("name");
+ }
}
if (StringUtils.isEmpty(bus)) {
addBusWiringAttribute(bean, BusWiringType.PROPERTY);
---------------------------------------------
Freeman Fang
FuseSource
Email:ff...@fusesource.com
Web: fusesource.com
Twitter: freemanfang
Blog: http://freemanfang.blogspot.com