You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by cz...@apache.org on 2005/04/24 08:59:58 UTC
svn commit: r164454 - in /cocoon/trunk/src/java/org/apache/cocoon/core:
CoreUtil.java container/ComponentEnvironment.java
container/ComponentFactory.java
Author: cziegeler
Date: Sat Apr 23 23:59:57 2005
New Revision: 164454
URL: http://svn.apache.org/viewcvs?rev=164454&view=rev
Log:
Fix NPEs
Modified:
cocoon/trunk/src/java/org/apache/cocoon/core/CoreUtil.java
cocoon/trunk/src/java/org/apache/cocoon/core/container/ComponentEnvironment.java
cocoon/trunk/src/java/org/apache/cocoon/core/container/ComponentFactory.java
Modified: cocoon/trunk/src/java/org/apache/cocoon/core/CoreUtil.java
URL: http://svn.apache.org/viewcvs/cocoon/trunk/src/java/org/apache/cocoon/core/CoreUtil.java?rev=164454&r1=164453&r2=164454&view=diff
==============================================================================
--- cocoon/trunk/src/java/org/apache/cocoon/core/CoreUtil.java (original)
+++ cocoon/trunk/src/java/org/apache/cocoon/core/CoreUtil.java Sat Apr 23 23:59:57 2005
@@ -47,6 +47,7 @@
import org.apache.cocoon.Cocoon;
import org.apache.cocoon.Constants;
import org.apache.cocoon.components.ContextHelper;
+import org.apache.cocoon.components.container.ComponentContext;
import org.apache.cocoon.configuration.ConfigurationBuilder;
import org.apache.cocoon.core.source.SimpleSourceResolver;
import org.apache.cocoon.matching.helpers.WildcardHelper;
@@ -76,7 +77,7 @@
protected final BootstrapEnvironment env;
/** "legacy" support: create an avalon context. */
- protected final DefaultContext appContext = new DefaultContext();
+ protected final DefaultContext appContext = new ComponentContext();
/** The settings. */
protected Settings settings;
Modified: cocoon/trunk/src/java/org/apache/cocoon/core/container/ComponentEnvironment.java
URL: http://svn.apache.org/viewcvs/cocoon/trunk/src/java/org/apache/cocoon/core/container/ComponentEnvironment.java?rev=164454&r1=164453&r2=164454&view=diff
==============================================================================
--- cocoon/trunk/src/java/org/apache/cocoon/core/container/ComponentEnvironment.java (original)
+++ cocoon/trunk/src/java/org/apache/cocoon/core/container/ComponentEnvironment.java Sat Apr 23 23:59:57 2005
@@ -62,10 +62,13 @@
this.loggerManager = loggerManager;
this.context = context;
this.serviceManager = serviceManager;
- try {
- this.core = (Core)this.context.get(Core.ROLE);
- } catch (ContextException ignore) {
- // this can never happen
+ // FIXME - we should ensure that the context is never null!
+ if ( this.context != null ) {
+ try {
+ this.core = (Core)this.context.get(Core.ROLE);
+ } catch (ContextException ignore) {
+ // this can never happen
+ }
}
}
@@ -80,7 +83,7 @@
ComponentInfo ci = null;
final InputStream is = this.classLoader.getResourceAsStream(bu.toString());
if ( is != null ) {
- final Settings settings = this.core.getSettings();
+ final Settings settings = (this.core == null ? null : this.core.getSettings());
final ConfigurationBuilder cb = new ConfigurationBuilder(settings);
final Configuration conf = cb.build(is);
ci = new ComponentInfo();
Modified: cocoon/trunk/src/java/org/apache/cocoon/core/container/ComponentFactory.java
URL: http://svn.apache.org/viewcvs/cocoon/trunk/src/java/org/apache/cocoon/core/container/ComponentFactory.java?rev=164454&r1=164453&r2=164454&view=diff
==============================================================================
--- cocoon/trunk/src/java/org/apache/cocoon/core/container/ComponentFactory.java (original)
+++ cocoon/trunk/src/java/org/apache/cocoon/core/container/ComponentFactory.java Sat Apr 23 23:59:57 2005
@@ -66,10 +66,13 @@
public ComponentFactory( final ComponentEnvironment environment,
final ComponentInfo info)
throws Exception {
- try {
- this.core = (Core)environment.context.get(Core.ROLE);
- } catch (ContextException ignore) {
- // this can never happen
+ // FIXME - we should ensure that the context is never null!
+ if ( environment.context != null ) {
+ try {
+ this.core = (Core)environment.context.get(Core.ROLE);
+ } catch (ContextException ignore) {
+ // this can never happen
+ }
}
this.environment = environment;
this.serviceInfo = info;
@@ -152,7 +155,7 @@
ContainerUtil.enableLogging(component, this.componentLogger);
ContainerUtil.contextualize( component, this.environment.context );
ContainerUtil.service( component, this.environment.serviceManager );
- if ( this.configureSettingsMethod != null ) {
+ if ( this.configureSettingsMethod != null && this.core != null) {
this.configureSettingsMethod.invoke( component, new Object[] {this.core.getSettings()});
}
ContainerUtil.configure( component, this.serviceInfo.getConfiguration() );