You are viewing a plain text version of this content. The canonical link for it is here.
Posted to xbean-scm@geronimo.apache.org by gn...@apache.org on 2008/06/26 11:52:19 UTC
svn commit: r671837 - in /geronimo/xbean/trunk/xbean-spring/src:
main/java/org/apache/xbean/spring/context/v2c/
test/java/org/apache/xbean/spring/context/
test/resources/org/apache/xbean/spring/context/
Author: gnodet
Date: Thu Jun 26 02:52:19 2008
New Revision: 671837
URL: http://svn.apache.org/viewvc?rev=671837&view=rev
Log:
XBEAN-106: Id is required for elements when NOT used as a top-level tag
Added:
geronimo/xbean/trunk/xbean-spring/src/test/java/org/apache/xbean/spring/context/FavoriteUsingXBeanMixedTest.java
- copied, changed from r669121, geronimo/xbean/trunk/xbean-spring/src/test/java/org/apache/xbean/spring/context/FavoriteUsingXBeanTest.java
geronimo/xbean/trunk/xbean-spring/src/test/resources/org/apache/xbean/spring/context/favorite-xbean-mixed.xml
Modified:
geronimo/xbean/trunk/xbean-spring/src/main/java/org/apache/xbean/spring/context/v2c/XBeanBeanDefinitionParserDelegate.java
Modified: geronimo/xbean/trunk/xbean-spring/src/main/java/org/apache/xbean/spring/context/v2c/XBeanBeanDefinitionParserDelegate.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring/src/main/java/org/apache/xbean/spring/context/v2c/XBeanBeanDefinitionParserDelegate.java?rev=671837&r1=671836&r2=671837&view=diff
==============================================================================
--- geronimo/xbean/trunk/xbean-spring/src/main/java/org/apache/xbean/spring/context/v2c/XBeanBeanDefinitionParserDelegate.java (original)
+++ geronimo/xbean/trunk/xbean-spring/src/main/java/org/apache/xbean/spring/context/v2c/XBeanBeanDefinitionParserDelegate.java Thu Jun 26 02:52:19 2008
@@ -44,7 +44,7 @@
public Object parsePropertySubElement(Element ele, BeanDefinition bd, String defaultTypeClassName) {
if (!isDefaultNamespace(ele.getNamespaceURI())) {
- return internalParseNestedCustomElement(ele);
+ return internalParseNestedCustomElement(ele, bd);
}
else if (ele.getTagName().equals(QNAME_ELEMENT)) {
return parseQNameElement(ele);
@@ -83,11 +83,11 @@
return buffer.toString();
}
- private Object internalParseNestedCustomElement(Element candidateEle) {
+ private Object internalParseNestedCustomElement(Element candidateEle, BeanDefinition containingBeanDefinition) {
try {
Method mth = getClass().getSuperclass().getDeclaredMethod("parseNestedCustomElement", new Class[] { Element.class, BeanDefinition.class });
mth.setAccessible(true);
- return mth.invoke(this, new Object[] { candidateEle, null });
+ return mth.invoke(this, new Object[] { candidateEle, containingBeanDefinition });
} catch (Exception e) {
if (e instanceof InvocationTargetException && e.getCause() instanceof RuntimeException) {
throw (RuntimeException) e.getCause();
Copied: geronimo/xbean/trunk/xbean-spring/src/test/java/org/apache/xbean/spring/context/FavoriteUsingXBeanMixedTest.java (from r669121, geronimo/xbean/trunk/xbean-spring/src/test/java/org/apache/xbean/spring/context/FavoriteUsingXBeanTest.java)
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring/src/test/java/org/apache/xbean/spring/context/FavoriteUsingXBeanMixedTest.java?p2=geronimo/xbean/trunk/xbean-spring/src/test/java/org/apache/xbean/spring/context/FavoriteUsingXBeanMixedTest.java&p1=geronimo/xbean/trunk/xbean-spring/src/test/java/org/apache/xbean/spring/context/FavoriteUsingXBeanTest.java&r1=669121&r2=671837&rev=671837&view=diff
==============================================================================
--- geronimo/xbean/trunk/xbean-spring/src/test/java/org/apache/xbean/spring/context/FavoriteUsingXBeanTest.java (original)
+++ geronimo/xbean/trunk/xbean-spring/src/test/java/org/apache/xbean/spring/context/FavoriteUsingXBeanMixedTest.java Thu Jun 26 02:52:19 2008
@@ -23,10 +23,10 @@
* @version $Id$
* @since 2.0
*/
-public class FavoriteUsingXBeanTest extends FavoriteUsingSpringTest {
+public class FavoriteUsingXBeanMixedTest extends FavoriteUsingSpringTest {
protected AbstractXmlApplicationContext createApplicationContext() {
- return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/favorite-xbean.xml");
+ return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/favorite-xbean-mixed.xml");
}
-}
+}
\ No newline at end of file
Added: geronimo/xbean/trunk/xbean-spring/src/test/resources/org/apache/xbean/spring/context/favorite-xbean-mixed.xml
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring/src/test/resources/org/apache/xbean/spring/context/favorite-xbean-mixed.xml?rev=671837&view=auto
==============================================================================
--- geronimo/xbean/trunk/xbean-spring/src/test/resources/org/apache/xbean/spring/context/favorite-xbean-mixed.xml (added)
+++ geronimo/xbean/trunk/xbean-spring/src/test/resources/org/apache/xbean/spring/context/favorite-xbean-mixed.xml Thu Jun 26 02:52:19 2008
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:util="http://www.springframework.org/schema/util"
+ xmlns:b="http://xbean.apache.org/schemas/pizza">
+
+ <b:favorite id="favoriteService">
+ <property name="favorites">
+ <util:map>
+ <entry key="Dan" value="Grey Goose" />
+ <entry key="IndecisiveDan">
+ <util:list>
+ <value>Malbec</value>
+ <bean class="java.lang.Integer">
+ <constructor-arg value="0"/>
+ </bean>
+ </util:list>
+ </entry>
+ <entry key="WithInnerBean">
+ <bean class="org.apache.xbean.spring.example.GinService">
+ <property name="name" value="name"/>
+ </bean>
+ </entry>
+ </util:map>
+ </property>
+ </b:favorite>
+
+</beans>