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 2004/01/19 11:38:32 UTC
cvs commit: cocoon-2.2/src/java/org/apache/cocoon/components/container ComponentContext.java
cziegeler 2004/01/19 02:38:32
Modified: src/java/org/apache/cocoon/components/container
ComponentContext.java
Log:
Avoid NPE
Revision Changes Path
1.3 +12 -3 cocoon-2.2/src/java/org/apache/cocoon/components/container/ComponentContext.java
Index: ComponentContext.java
===================================================================
RCS file: /home/cvs/cocoon-2.2/src/java/org/apache/cocoon/components/container/ComponentContext.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- ComponentContext.java 10 Jan 2004 14:38:19 -0000 1.2
+++ ComponentContext.java 19 Jan 2004 10:38:32 -0000 1.3
@@ -54,6 +54,7 @@
import org.apache.avalon.framework.context.ContextException;
import org.apache.avalon.framework.context.DefaultContext;
import org.apache.cocoon.components.ContextHelper;
+import org.apache.cocoon.environment.internal.EnvironmentContext;
import org.apache.cocoon.environment.internal.EnvironmentHelper;
import java.util.Map;
@@ -118,12 +119,20 @@
public Object get( final Object key )
throws ContextException {
if ( key.equals(ContextHelper.CONTEXT_OBJECT_MODEL)) {
- return EnvironmentHelper.getCurrentEnvironmentContext().getEnvironment().getObjectModel();
+ final EnvironmentContext envContext = EnvironmentHelper.getCurrentEnvironmentContext();
+ if ( envContext == null ) {
+ throw new ContextException("Unable to locate " + key + " (No environment available)");
+ }
+ return envContext.getEnvironment().getObjectModel();
}
if ( key instanceof String ) {
String stringKey = (String)key;
if ( stringKey.startsWith(OBJECT_MODEL_KEY_PREFIX) ) {
- final Map objectModel = EnvironmentHelper.getCurrentEnvironmentContext().getEnvironment().getObjectModel();
+ final EnvironmentContext envContext = EnvironmentHelper.getCurrentEnvironmentContext();
+ if ( envContext == null ) {
+ throw new ContextException("Unable to locate " + key + " (No environment available)");
+ }
+ final Map objectModel = envContext.getEnvironment().getObjectModel();
String objectKey = stringKey.substring(OBJECT_MODEL_KEY_PREFIX.length());
Object o = objectModel.get( objectKey );