You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by gn...@apache.org on 2006/08/11 20:09:42 UTC
svn commit: r430840 - in /geronimo/xbean/trunk:
xbean-spring-common/src/main/java/org/apache/xbean/spring/context/impl/
xbean-spring-v1/src/main/java/org/apache/xbean/spring/context/v1/
xbean-spring-v2/src/main/java/org/apache/xbean/spring/context/v2/
Author: gnodet
Date: Fri Aug 11 11:09:41 2006
New Revision: 430840
URL: http://svn.apache.org/viewvc?rev=430840&view=rev
Log:
XBEAN-39: NPE in XBeanHelper.createBeanDefinitionReader with some Classloaders
Patch submitted by Stefan Kleineikenscheidt
Modified:
geronimo/xbean/trunk/xbean-spring-common/src/main/java/org/apache/xbean/spring/context/impl/XBeanHelper.java
geronimo/xbean/trunk/xbean-spring-v1/src/main/java/org/apache/xbean/spring/context/v1/XBeanXmlBeanDefinitionParser.java
geronimo/xbean/trunk/xbean-spring-v2/src/main/java/org/apache/xbean/spring/context/v2/XBeanNamespaceHandler.java
Modified: geronimo/xbean/trunk/xbean-spring-common/src/main/java/org/apache/xbean/spring/context/impl/XBeanHelper.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-common/src/main/java/org/apache/xbean/spring/context/impl/XBeanHelper.java?rev=430840&r1=430839&r2=430840&view=diff
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-common/src/main/java/org/apache/xbean/spring/context/impl/XBeanHelper.java (original)
+++ geronimo/xbean/trunk/xbean-spring-common/src/main/java/org/apache/xbean/spring/context/impl/XBeanHelper.java Fri Aug 11 11:09:41 2006
@@ -6,7 +6,6 @@
import org.apache.xbean.spring.context.SpringApplicationContext;
import org.springframework.beans.factory.support.BeanDefinitionRegistry;
import org.springframework.beans.factory.xml.XmlBeanDefinitionReader;
-import org.springframework.core.SpringVersion;
public class XBeanHelper {
@@ -14,7 +13,16 @@
SpringApplicationContext applicationContext,
BeanDefinitionRegistry registry,
List xmlPreprocessors) {
- String version = SpringVersion.getVersion();
+
+ String version = "2.0";
+
+ try {
+ Class spring20Clazz = Class.forName("org.springframework.core.AttributeAccessorSupport");
+ version = "2.0";
+ } catch(ClassNotFoundException e) {
+ version = "1.2.8";
+ }
+
String className = "org.apache.xbean.spring.context.v" + version.charAt(0) + ".XBeanXmlBeanDefinitionReader";
try {
Class cl = Class.forName(className);
Modified: geronimo/xbean/trunk/xbean-spring-v1/src/main/java/org/apache/xbean/spring/context/v1/XBeanXmlBeanDefinitionParser.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v1/src/main/java/org/apache/xbean/spring/context/v1/XBeanXmlBeanDefinitionParser.java?rev=430840&r1=430839&r2=430840&view=diff
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v1/src/main/java/org/apache/xbean/spring/context/v1/XBeanXmlBeanDefinitionParser.java (original)
+++ geronimo/xbean/trunk/xbean-spring-v1/src/main/java/org/apache/xbean/spring/context/v1/XBeanXmlBeanDefinitionParser.java Fri Aug 11 11:09:41 2006
@@ -23,6 +23,9 @@
import java.beans.PropertyDescriptor;
import java.beans.PropertyEditor;
import java.io.ByteArrayInputStream;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.util.Arrays;
@@ -685,6 +688,14 @@
* Loads the resource from the given URI
*/
protected InputStream loadResource(String uri) {
+ if (System.getProperty("xbean.dir") != null) {
+ File f = new File(System.getProperty("xbean.dir") + uri);
+ try {
+ return new FileInputStream(f);
+ } catch (FileNotFoundException e) {
+ // Ignore
+ }
+ }
// lets try the thread context class loader first
InputStream in = Thread.currentThread().getContextClassLoader().getResourceAsStream(uri);
if (in == null) {
Modified: geronimo/xbean/trunk/xbean-spring-v2/src/main/java/org/apache/xbean/spring/context/v2/XBeanNamespaceHandler.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2/src/main/java/org/apache/xbean/spring/context/v2/XBeanNamespaceHandler.java?rev=430840&r1=430839&r2=430840&view=diff
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2/src/main/java/org/apache/xbean/spring/context/v2/XBeanNamespaceHandler.java (original)
+++ geronimo/xbean/trunk/xbean-spring-v2/src/main/java/org/apache/xbean/spring/context/v2/XBeanNamespaceHandler.java Fri Aug 11 11:09:41 2006
@@ -21,6 +21,9 @@
import java.beans.PropertyDescriptor;
import java.beans.PropertyEditor;
import java.io.ByteArrayInputStream;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.lang.reflect.Method;
@@ -713,6 +716,14 @@
* Loads the resource from the given URI
*/
protected InputStream loadResource(String uri) {
+ if (System.getProperty("xbean.dir") != null) {
+ File f = new File(System.getProperty("xbean.dir") + uri);
+ try {
+ return new FileInputStream(f);
+ } catch (FileNotFoundException e) {
+ // Ignore
+ }
+ }
// lets try the thread context class loader first
InputStream in = Thread.currentThread().getContextClassLoader().getResourceAsStream(uri);
if (in == null) {