I figured this had something to do with Trails (not many other folks
use ComponentAddresses). Are you hivemindizing the editors
registration piece? I wanted to do that long ago. In this case, you
could probably just define your own "rule" in HiveMind to process the
"editor" element into a ComponentAddress which can be added to your
map. I would also put a unique="true" on the "key" attribute so that
you don't get two editors defined by folks with the same name.
On 10/23/07, Alejandro Scandroli <[EMAIL PROTECTED]> wrote:
> Hi
>
> I made it work using a contribution point and a EditorContribution class:
>
> <configuration-point id="Editors" occurs="1..n">
> <schema>
> <element name="editor">
> <attribute name="key"/>
> <attribute name="container" required="true"/>
> <attribute name="component" required="true"/>
> <conversion
> class="org.amneris.trails.EditorContribution"/>
> </element>
> </schema>
> </configuration-point>
>
> Then creating the ComponentAddress entry on initialization
>
> public void initialize()
> {
> for (EditorContribution editorContribution : contributions)
> {
> getEditorMap().put(editorContribution.getKey(), new
> ComponentAddress(editorContribution.getContainer(),
> editorContribution.getComponent()));
> }
> }
>
> Is there any way to create the ComponentAddress directly on HiveMind?
> I still can't find how to use constructor parameters.
>
> Alejandro.
>
>
> On 10/23/07, James Carman <[EMAIL PROTECTED]> wrote:
> > I would probably handle that via a configuration point in HiveMind.
> >
> > On 10/22/07, Alejandro Scandroli <[EMAIL PROTECTED]> wrote:
> > > Hi James
> > >
> > > I'm trying to migrate some Spring code to Hivemind.
> > > I need to create a Map<String , ComponentAddress> in the Hivemind
> > > registry.
> > > This is what it looks like on spring:
> > >
> > > <bean id="viewerService"
> > > class="org.trails.descriptor.EditorBlockFinder">
> > > <property name="defaultBlockAddress">
> > > <bean
> > > class="org.apache.tapestry.util.ComponentAddress">
> > > <constructor-arg index="0">
> > > <value>trails:Viewers</value>
> > > </constructor-arg>
> > > <constructor-arg index="1">
> > > <value>stringViewer</value>
> > > </constructor-arg>
> > > </bean>
> > > </property>
> > > <property name="editorMap">
> > > <map>
> > > <entry>
> > > <key>
> > > <value>hidden</value>
> > > </key>
> > > <bean
> > > class="org.apache.tapestry.util.ComponentAddress">
> > > <constructor-arg
> > > index="0">
> > >
> > > <value>trails:Viewers</value>
> > > </constructor-arg>
> > > <constructor-arg
> > > index="1">
> > >
> > > <value>hidden</value>
> > > </constructor-arg>
> > > </bean>
> > > </entry>
> > > </map>
> > > </property>
> > > </bean>
> > >
> > > Alejandro.
> > >
> > > On 10/22/07, James Carman <[EMAIL PROTECTED]> wrote:
> > > > A ComponentAddress, in Tapestry, isn't really a "service", though.
> > > > Why would you want to put this type of object in your HiveMind
> > > > registry? I can see it being part of a configuration, but not
> > > > necessarily a service. What exactly are you trying to do?
> > > >
> > > > On 10/22/07, Alejandro Scandroli <[EMAIL PROTECTED]> wrote:
> > > > > Hi
> > > > >
> > > > > I need to do some constructor-based injection and I can't find the
> > > > > way.
> > > > > I need to create an instance of
> > > > > org.apache.tapestry.util.ComponentAddress, the constructor takes 2
> > > > > Strings as parameters.
> > > > > I know it should be simple but I'm lost.
> > > > >
> > > > > Alejandro.
> > > > >
> > > >
> > >
> >
>