[ 
https://issues.apache.org/jira/browse/XBEAN-106?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Guillaume Nodet closed XBEAN-106.
---------------------------------

    Resolution: Fixed
      Assignee: Guillaume Nodet

Sending        
xbean-spring/src/main/java/org/apache/xbean/spring/context/v2c/XBeanBeanDefinitionParserDelegate.java
Adding         
xbean-spring/src/test/java/org/apache/xbean/spring/context/FavoriteUsingXBeanMixedTest.java
Adding         
xbean-spring/src/test/resources/org/apache/xbean/spring/context/favorite-xbean-mixed.xml
Transmitting file data ...
Committed revision 671837.

> Id is required for elements when NOT used as a top-level tag
> ------------------------------------------------------------
>
>                 Key: XBEAN-106
>                 URL: https://issues.apache.org/jira/browse/XBEAN-106
>             Project: XBean
>          Issue Type: Bug
>          Components: spring
>    Affects Versions: 3.4
>         Environment: xbean-spring-3.4.1
> spring-*-2.5.4
>            Reporter: Tuomas Kiviaho
>            Assignee: Guillaume Nodet
>
> I was using org.apache.xbean.spring.context.ClassPathXmlApplicationContext in 
> my beanRefContext.xml and noticed weird behaviour with util:properties (and 
> util:map)
> <bean class="org.apache.activemq.spring.ActiveMQConnectionFactory">
>       <property name="properties">
>               <util:properties location="classpath:jndi.properties" />
>       </property>
> </bean>
> Caused by: 
> org.springframework.beans.factory.parsing.BeanDefinitionParsingException: 
> Configuration problem: Configuration problem: Id is required for element 
> 'properties' when used as a top-level tag
> at 
> org.springframework.beans.factory.parsing.FailFastProblemReporter.error(FailFastProblemReporter.java:68)
>       at 
> org.springframework.beans.factory.parsing.ReaderContext.error(ReaderContext.java:85)
>       at 
> org.springframework.beans.factory.parsing.ReaderContext.error(ReaderContext.java:72)
>       at 
> org.springframework.beans.factory.xml.AbstractBeanDefinitionParser.parse(AbstractBeanDefinitionParser.java:73)
>       at 
> org.springframework.beans.factory.xml.NamespaceHandlerSupport.parse(NamespaceHandlerSupport.java:69)
>       at 
> org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1253)
>       at 
> org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseNestedCustomElement(BeanDefinitionParserDelegate.java:1302)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>       at java.lang.reflect.Method.invoke(Method.java:597)
>       at 
> org.apache.xbean.spring.context.v2c.XBeanBeanDefinitionParserDelegate.internalParseNestedCustomElement(XBeanBeanDefinitionParserDelegate.java:90)
>       at 
> org.apache.xbean.spring.context.v2c.XBeanBeanDefinitionParserDelegate.parsePropertySubElement(XBeanBeanDefinitionParserDelegate.java:47)
> When using org.springframework.context.support.ClassPathXmlApplicationContext 
> or supplying and id this problem disappeared.
> * * * IRRELEVANT FYI * * *
> I couldn't get ActiveMQ XBean variant to accept properties at all. 
> <amq:connectionFactory>
>       <property name="properties">
>               <util:properties id="foobar" 
> location="classpath:jndi.properties" />
>       </property>
> </amq:connectionFactory>
> It created PropertyValue named 'property' along with properties which 
> naturally failed due to missing 'property' named property.
> <amq:connectionFactory>
>       <util:properties id="foobar" location="classpath:jndi.properties" />
> </amq:connectionFactory>
> It resolved correctly but property type coercion lead to ManagedMap instead 
> of property file. Here I revered from using ActiveMQ XBean to format used 
> above.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to