On Tue, 19 Nov 2002, at 19:36 [+0100], Stephen McConnell ([EMAIL PROTECTED]:

>
>
> Gary Shea wrote:
>
> >Just a heads up while I try to track this one down... I've got a class
> >which is Contextualizable, looks for the key "options-document-name".
> >The associatied xinfo has the corresponding <entry/> element.  In the
> >kernel.xml profile, a non-empty value is specified in yet another <entry/>
> >element.
> >
>
> The the .xinfo file you are declaring a criteria:
>
>      <entry key="message"/>
>      <entry key="whatever" type="java.io.File"/>
>
> This is saying to the container that this component *must* be supplied
> with to context entried, one entry shall have a key of "message"and a
> type of String (the default type if not specificed), and the other entry
> shall be a File instance supplied under the key "whatever".
>
> The defintions in the kernal.xml (or packaged profiles) and entry
> directives.  These statements are declarations to the container on how
> to go about creating a context entry.  Two possibilities exist (a)
> importing an value from the container such as "avalon:home", or
> programatically constructing something.  For example, the following
> entried in a <compoent> defintion declare context directives (refer
> ContextDirective in excalibur/meta/model javadoc).
>
>    <compoent type="MyComponet">
>      <context>
>         <entry key="message">I'm busy applying your patch</entry>
>          <import name="avalon:home" key="whatever"/>
>      </context>
>    </component>
>
> The above information tells the container to assign the string "I'm busy
> applying your patch" as the value of the context entry for "message",
> and to import the containers defintion of "avalon:home" and assign it
> under the components key of "whatever".

Ah-ha!  I should have waited.  After a small struggle the code yielded
the truth which is that contrary to the doc, the context value is set as
you show above, not as 'value="..."'.  Of course I figured that out
about 30 seconds before your mail ;).  Attached find a few meta patches,
one of which I believe fixes that doc error.

Thanks for the detailed response though!

        Gary

>
> >When the class is contextualized, an "options-document-name"
> >value is provided, but it is the empty string.
> >
> >
>
> Is there is context directive in the kernel.xml file?
>
> >If this reminds you of something let me know please.
> >
> >Oh, the pooling stuff still isn't quite working but this problem is
> >earlier in the output ;)
> >
> >
>
> Getting to that - apply you patch at the moment.
>
> Cheers, Steve.
>
> :-)
? src/java/org/apache/excalibur/meta/info/.nbattrs
? src/java/org/apache/excalibur/meta/info/builder/.nbattrs
Index: src/java/org/apache/excalibur/meta/info/builder/TypeBuilder.java
===================================================================
RCS file: 
/home/cvspublic/jakarta-avalon-excalibur/meta/src/java/org/apache/excalibur/meta/info/builder/TypeBuilder.java,v

retrieving revision 1.6
diff -u -r1.6 TypeBuilder.java
--- src/java/org/apache/excalibur/meta/info/builder/TypeBuilder.java    23 Oct 2002 
16:34:47 -0000      1.6
+++ src/java/org/apache/excalibur/meta/info/builder/TypeBuilder.java    19 Nov 2002 
+18:42:08 -0000
@@ -176,6 +176,12 @@
 
         final String xinfo =
             classname.replace( '.', '/' ) + ".xinfo";
+        if ( getLogger().isDebugEnabled() )
+        {
+            getLogger().debug(
+                "build Type from XML descriptor: " + xinfo 
+                + " resource found: " + (classLoader.getResource( xinfo ) != null) );
+        }
         final InputStream inputStream =
             classLoader.getResourceAsStream( xinfo );
 
Index: src/java/org/apache/excalibur/meta/info/builder/XMLTypeCreator.java
===================================================================
RCS file: 
/home/cvspublic/jakarta-avalon-excalibur/meta/src/java/org/apache/excalibur/meta/info/builder/XMLTypeCreator.java,v

retrieving revision 1.14
diff -u -r1.14 XMLTypeCreator.java
--- src/java/org/apache/excalibur/meta/info/builder/XMLTypeCreator.java 18 Nov 2002 
11:23:46 -0000      1.14
+++ src/java/org/apache/excalibur/meta/info/builder/XMLTypeCreator.java 19 Nov 2002 
+18:42:09 -0000
@@ -106,6 +106,11 @@
                             InputStream inputStream )
         throws Exception
     {
+        if( getLogger().isDebugEnabled() )
+        {
+            getLogger().debug( "Reading Type XML for " + implementationKey );
+        }
+
         if( inputStream == null )
         {
             throw new NullPointerException( "input" );
Index: src/xdocs/profile.xml
===================================================================
RCS file: /home/cvspublic/jakarta-avalon-excalibur/meta/src/xdocs/profile.xml,v
retrieving revision 1.1
diff -u -r1.1 profile.xml
--- src/xdocs/profile.xml       11 Nov 2002 11:58:47 -0000      1.1
+++ src/xdocs/profile.xml       19 Nov 2002 18:42:09 -0000
@@ -63,7 +63,7 @@
  --&gt;</i></font>
 
  &lt;context&gt;
- &lt;entry name="<font color="darkred">location</font>" value="<font 
color="darkred">Paris</font>"/&gt;
+ &lt;entry name="<font color="darkred">location</font>"&gt;<font 
+color="darkred">Paris</font>&lt;/entry&gt;
  &lt;/context&gt;
 
  <font color="gray"><i>&lt;!--
--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to