|
Ok, finally figured out how to get it to work: 1. Create a seperate project for the Hivemind related stuff. 2. Create a META-INF/hivemodule.xml file 3. Package it as a JAR file. (just the hivemodule.xml file for reasons below) 4. include that JAR file in the classpath of my Tapestry project. 5. Goto the Order and Export tab under Java Build Path and move the JAR file up above hivemind.jar in the order 6. Add the Hivemind related project under the Java Build path "Projects" tab (so that you can easily make changes to the project and have the changes be available without having to re-JAR the project). Now it works. The problem is that hivemind.jar needs to be under WEB-INF/lib to process the hivemind descriptors as part of the Tapestry Project (builder.processModule(resolver, new FileResource("context/WEB-INF/HiveTest.xml")); But the Spindle Jetty Plugin loades the hivemind.jar file twice (once because it is included in the Eclipse path and a second time because it is in WEB-INF/lib and this causes conflicts). Howard Lewis Ship wrote: I'm concerned about the version of Javassist, since I had problems with bugs in it. I belieive HiveMind uses 2.6.On Thu, 14 Oct 2004 17:04:24 -0300, Adam Greene <[EMAIL PROTECTED]> wrote:Ok, wrote a simply main into my globlal class and ran it as a Java Application under Eclipse and had no problem making it work. Howard Lewis Ship wrote: That's a real puzzler! Looks like two different copies of AdderImpl have been loaded into memory (can't figure out why) and they are competing. I believe your code that passes in Adder.class is passing in a different version (again, can't figure out why). Please look into where hivemind.jar is on the classpath, where Adder.class is on the classpath. Sometimes servlet containers break the normal rules on classloader search paths. This does look very similar to the code I'm using on my project (well, except that I subclass HiveMindFilter to create my Registry) and it, no surprises, works flawlessly. On Thu, 14 Oct 2004 16:22:33 -0300, Adam Greene <[EMAIL PROTECTED]> wrote: I have added the following code to my Global object in Tapestry 3.0 running with the Jetty Plugin from Geoff Longman: public Global() { super(); RegistryBuilder builder = new RegistryBuilder(); ClassResolver resolver = new DefaultClassResolver(); builder.processModules(resolver); builder.processModule(resolver, new FileResource("context/WEB-INF/HiveTest.xml")); registry = builder.constructRegistry(Locale.getDefault()); } public Adder getAdder() { return (Adder) registry.getService(Adder.class); } and when I call getAdder(), I get this error: Service HiveTest.Adder does not implement the requested interface (org.apache.hivemind.examples.Adder). The declared service interface type is org.apache.hivemind.examples.Adder My HiveTest.xml is: <module id="HiveTest" version="1.0.0"> <service-point id="Adder" interface="org.apache.hivemind.examples.Adder"> <create-instance class="org.apache.hivemind.examples.impl.AdderImpl"/> <interceptor service-id="hivemind.LoggingInterceptor"/> </service-point> </module> Anyone got any ideas? --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] |
- Cannot get Hivemind to work Adam Greene
- Re: Cannot get Hivemind to work Howard Lewis Ship
- Re: Cannot get Hivemind to work Adam Greene
- Re: Cannot get Hivemind to work Adam Greene
- Re: Cannot get Hivemind to work Howard Lewis Ship
- Re: Cannot get Hivemind to work Adam Greene
- Re: Cannot get Hivemind to work Howard Lewis Ship
- Re: Cannot get Hivemind to wor... Adam Greene
