Attached diff contains:

  Updates the exception message in DefaultContainmentModelAssemblyHelper
  to improve clarity of the generated message in the even of an invalid 
  explicit dependency path assignment.

  ComponentProfile update to include an initial ContextDirective
resolving
  A NPE condition when that could occur if non context directive is 
  Declared for an optional context entry.

  Dependencies/manual/build.xml - fixes a bug in the bloc definition 
  (Gloria and nancy were undefined).

Steve.

Index: 
runtime/composition/impl/src/java/org/apache/avalon/composition/model/impl/DefaultContainmentModelAssemblyHelper.java
===================================================================
--- 
runtime/composition/impl/src/java/org/apache/avalon/composition/model/impl/DefaultContainmentModelAssemblyHelper.java
       (revision 47168)
+++ 
runtime/composition/impl/src/java/org/apache/avalon/composition/model/impl/DefaultContainmentModelAssemblyHelper.java
       (working copy)
@@ -351,8 +351,10 @@
             DeploymentModel model = m_model.getModel( path );
             if( null == model )
             {
-                final String error = "Could not locate a model at the address: ["
-                        + path + "] in " + this + ".";
+                final String error = 
+                  "The supplied dependency path ["
+                  + path 
+                  + "] does not reference a known component.";
                 throw new AssemblyException( error );
             }
             assembleModel( model, subjects );
Index: 
runtime/composition/api/src/java/org/apache/avalon/composition/data/ComponentProfile.java
===================================================================
--- 
runtime/composition/api/src/java/org/apache/avalon/composition/data/ComponentProfile.java
   (revision 47168)
+++ 
runtime/composition/api/src/java/org/apache/avalon/composition/data/ComponentProfile.java
   (working copy)
@@ -129,7 +129,7 @@
     /**
      * The configuration for component (if any).
      */
-    private ContextDirective m_context;
+    private ContextDirective m_context = new ContextDirective( new EntryDirective[0] 
);
 
     /**
      * The dependency directives.
Index: planet/tutorials/dependencies/manual/build.xml
===================================================================
--- planet/tutorials/dependencies/manual/build.xml      (revision 47168)
+++ planet/tutorials/dependencies/manual/build.xml      (working copy)
@@ -8,6 +8,8 @@
 
   <target name="build" depends="standard.build">
     <x:block name="tutorial" embed="MAIN">
+      <x:component name="gloria" class="tutorial.IdentifiableComponent"/>
+      <x:component name="nancy" class="tutorial.IdentifiableComponent"/>
       <x:component name="hello" class="tutorial.HelloComponent">
         <x:dependencies>
           <x:dependency key="primary" source="gloria"/>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to