I should admit I am not a Java developer by trade, so I'm trying pretty 
hard here. 

When I call .registerRiver, I am passing the module, not the river. 
RiverImpl.Type is just the string "river".

public void onModule(RiversModule module) {
    module.registerRiver(RiverImpl.TYPE, ModuleImpl.class);
}

If this isn't what you mean, please dial me in a bit more. Guice is a 
foreign to me too.



On Friday, May 2, 2014 12:34:47 PM UTC-5, Rob Ottaway wrote:
>
> Oh sorry module is fine, it's the call to module.registerRiver which is 
> being passed the River itself and not the River Guice module. Try that 
> change.
>
>
>
>
> On Fri, May 2, 2014 at 10:33 AM, Rob Ottaway <[email protected]<javascript:>
> > wrote:
>
>> I think he means in your Guice module. You are registering the WRONG 
>> thing ;)
>>
>>
>> On Fri, May 2, 2014 at 6:49 AM, Joshua Chan 
>> <[email protected]<javascript:>
>> > wrote:
>>
>>> I've tried this too with no luck
>>>
>>> http://localhost:9200/_river/example_river/_meta
>>> {
>>>     "type": "river",
>>>   "river":{
>>>     "blah":"blah"
>>>   }
>>> }
>>>
>>>
>>> On Friday, May 2, 2014 3:31:23 AM UTC-5, Luca Cavanna wrote:
>>>
>>>> Hi Joshua,
>>>> the package is not an issue if you are using the default one for your 
>>>> classes. Looking deeper, the type of the river that you try to register 
>>>> with your rest call doesn't match the type of the river you registered in 
>>>> the plugin when you did module.registerRiver(type, riverclass). 
>>>>
>>>> Cheers
>>>> Luca
>>>>
>>>> On Friday, May 2, 2014 6:08:28 AM UTC+2, Rob Ottaway wrote:
>>>>
>>>>> I should have sent you the following earlier rather than a non-river 
>>>>> plugin:
>>>>>
>>>>> the plugin:
>>>>> https://github.com/elasticsearch/elasticsearch-
>>>>> river-rabbitmq/blob/master/src/main/java/org/
>>>>> elasticsearch/plugin/river/rabbitmq/RabbitmqRiverPlugin.java
>>>>>
>>>>> The river implementation:
>>>>> https://github.com/elasticsearch/elasticsearch-
>>>>> river-rabbitmq/blob/master/src/main/java/org/
>>>>> elasticsearch/river/rabbitmq/RabbitmqRiver.java
>>>>>
>>>>> The module:
>>>>> https://github.com/elasticsearch/elasticsearch-
>>>>> river-rabbitmq/blob/master/src/main/java/org/
>>>>> elasticsearch/river/rabbitmq/RabbitmqRiverModule.java
>>>>>
>>>>> Looks like you are registering the river implementation rather than 
>>>>> the river module hence the not working. Had to look at an example I know 
>>>>> works to figure it out.
>>>>>
>>>>> -Rob
>>>>>
>>>>>
>>>>> On Thu, May 1, 2014 at 8:04 PM, Joshua Chan <[email protected]>wrote:
>>>>>
>>>>>>  So, that's what I did, but no love... I checked in the latest.
>>>>>>
>>>>>> -Josh
>>>>>>
>>>>>>
>>>>>> On Thursday, May 1, 2014 9:49:11 PM UTC-5, Rob Ottaway wrote:
>>>>>>>
>>>>>>> Look at this plugin for help:
>>>>>>>
>>>>>>> https://github.com/elasticsearch/elasticsearch-cloud-aws/
>>>>>>> blob/master/src/main/resources/es-plugin.properties
>>>>>>>
>>>>>>> Yes it needs to be the FQN.
>>>>>>>
>>>>>>> On Thursday, May 1, 2014 5:47:31 PM UTC-7, Joshua Chan wrote:
>>>>>>>>
>>>>>>>> Thanks Rob. Someone else also told me the plugin property should be 
>>>>>>>> the fully qualified name. I didn't declare a package, so I guess I'm 
>>>>>>>> using 
>>>>>>>> the default package, and I thought I had the namespacing right since 
>>>>>>>> IntelliJ corrected the class name when I wrote it.
>>>>>>>>
>>>>>>>> Thoughts?
>>>>>>>>
>>>>>>>>
>>>>>>>> -Josh
>>>>>>>>
>>>>>>>>
>>>>>>>> On Thursday, May 1, 2014 5:23:25 PM UTC-5, Rob Ottaway wrote:
>>>>>>>>>
>>>>>>>>> Look at this file in your BB repo:
>>>>>>>>>
>>>>>>>>> https://bitbucket.org/futurechan/example-river/src/fd23648c3
>>>>>>>>> e7cc42fd2286d4134e80ecd7e98f802/src/main/resources/es-
>>>>>>>>> plugin.properties?at=master
>>>>>>>>>
>>>>>>>>> cheers
>>>>>>>>>
>>>>>>>>> On Thursday, May 1, 2014 3:21:59 PM UTC-7, Rob Ottaway wrote:
>>>>>>>>>>
>>>>>>>>>> This strikes me as odd:
>>>>>>>>>>
>>>>>>>>>> java.lang.ClassNotFoundException: example_river
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Assume you didn't map the string example_river to the actual 
>>>>>>>>>> class name properly?
>>>>>>>>>>
>>>>>>>>>> -Rob
>>>>>>>>>>
>>>>>>>>>> On Thursday, May 1, 2014 11:40:52 AM UTC-7, Joshua Chan wrote:
>>>>>>>>>>>
>>>>>>>>>>> I'm making my first go at writing a river. (Here's the source 
>>>>>>>>>>> code: https://bitbucket.org/futurechan/example-river/src)
>>>>>>>>>>>
>>>>>>>>>>> I followed this tutorial 
>>>>>>>>>>> http://blog.trifork.com/2013/01/10/how-to-write-an-elasticse
>>>>>>>>>>> arch-river-plugin/
>>>>>>>>>>>
>>>>>>>>>>> and compared it to this existing river
>>>>>>>>>>> https://github.com/jprante/elasticsearch-river-jdbc
>>>>>>>>>>>
>>>>>>>>>>> but I haven't had much luck.
>>>>>>>>>>>
>>>>>>>>>>> To deploy the river, I created a folder called example-river 
>>>>>>>>>>> under plugins, dropped my jar in that folder, and restarted the 
>>>>>>>>>>> node. 
>>>>>>>>>>> Everything starts up fine.
>>>>>>>>>>>
>>>>>>>>>>> I have also tried bin/plugin --url file:///path/to/plugin 
>>>>>>>>>>> --install example-river, which seems to work, but it unpacks my 
>>>>>>>>>>> jar. So, I tried zipping it first and then installing, which works 
>>>>>>>>>>> and does 
>>>>>>>>>>> not unpack my jar, but it didn't help.
>>>>>>>>>>>
>>>>>>>>>>> When I issue this PUT request:
>>>>>>>>>>>
>>>>>>>>>>> http://localhost:9200/_river/example_river/_meta
>>>>>>>>>>> {
>>>>>>>>>>>     "type": "example_river",
>>>>>>>>>>>   "example_river":{
>>>>>>>>>>>     "blah":"blah"
>>>>>>>>>>>   }
>>>>>>>>>>> }
>>>>>>>>>>>
>>>>>>>>>>> I get this exception:
>>>>>>>>>>>
>>>>>>>>>>> [2014-04-20 22:28:46,538][DEBUG][river ] [Gloom] creating river 
>>>>>>>>>>> [example_river][example_river] 
>>>>>>>>>>> [2014-04-20 22:28:46,543][WARN ][river ] [Gloom] failed to create 
>>>>>>>>>>> river [example_river][example_river] 
>>>>>>>>>>> org.elasticsearch.common.settings.NoClassSettingsException: Failed 
>>>>>>>>>>> to load class with value [example_river] at 
>>>>>>>>>>> org.elasticsearch.river.RiverModule.loadTypeModule(RiverModule.java:87)
>>>>>>>>>>>  at 
>>>>>>>>>>> org.elasticsearch.river.RiverModule.spawnModules(RiverModule.java:58)
>>>>>>>>>>>  at 
>>>>>>>>>>> org.elasticsearch.common.inject.ModulesBuilder.add(ModulesBuilder.java:44)
>>>>>>>>>>>  at 
>>>>>>>>>>> org.elasticsearch.river.RiversService.createRiver(RiversService.java:137)
>>>>>>>>>>>  at 
>>>>>>>>>>> org.elasticsearch.river.RiversService$ApplyRivers$2.onResponse(RiversService.java:275)
>>>>>>>>>>>  at 
>>>>>>>>>>> org.elasticsearch.river.RiversService$ApplyRivers$2.onResponse(RiversService.java:269)
>>>>>>>>>>>  at 
>>>>>>>>>>> org.elasticsearch.action.support.TransportAction$ThreadedActionListener$1.run(TransportAction.jav
>>>>>>>>>>> a:93) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown 
>>>>>>>>>>> Source) at 
>>>>>>>>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
>>>>>>>>>>> at 
>>>>>>>>>>> java.lang.Thread.run(Unknown Source) Caused by: 
>>>>>>>>>>> java.lang.ClassNotFoundException: example_river at 
>>>>>>>>>>> java.net.URLClassLoader$1.run(Unknown Source) at 
>>>>>>>>>>> java.net.URLClassLoader$1.run(Unknown Source) at 
>>>>>>>>>>> java.security.AccessController.doPrivileged(Native Method) at 
>>>>>>>>>>> java.net.URLClassLoader.findClass(Unknown Source) at 
>>>>>>>>>>> java.lang.ClassLoader.loadClass(Unknown Source) at 
>>>>>>>>>>> sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at 
>>>>>>>>>>> java.lang.ClassLoader.loadClass(Unknown Source) at 
>>>>>>>>>>> org.elasticsearch.river.RiverModule.loadTypeModule(RiverModule.java:73)
>>>>>>>>>>>  ... 9 more
>>>>>>>>>>>
>>>>>>>>>>> Can someone point out what I am missing?
>>>>>>>>>>>
>>>>>>>>>>  -- 
>>>>>> You received this message because you are subscribed to a topic in 
>>>>>> the Google Groups "elasticsearch" group.
>>>>>> To unsubscribe from this topic, visit https://groups.google.com/d/
>>>>>> topic/elasticsearch/kIlh_0hm3no/unsubscribe.
>>>>>>  To unsubscribe from this group and all its topics, send an email to 
>>>>>> [email protected].
>>>>>> To view this discussion on the web visit https://groups.google.com/d/
>>>>>> msgid/elasticsearch/09202b8e-5e77-4c51-b4b0-f47c0b0f5bc0%
>>>>>> 40googlegroups.com<https://groups.google.com/d/msgid/elasticsearch/09202b8e-5e77-4c51-b4b0-f47c0b0f5bc0%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>>> .
>>>>>>
>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>
>>>>>
>>>>>  -- 
>>> You received this message because you are subscribed to a topic in the 
>>> Google Groups "elasticsearch" group.
>>> To unsubscribe from this topic, visit 
>>> https://groups.google.com/d/topic/elasticsearch/kIlh_0hm3no/unsubscribe.
>>> To unsubscribe from this group and all its topics, send an email to 
>>> [email protected] <javascript:>.
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/elasticsearch/485c6794-d7e2-4f42-9a12-bdc7f584ad9e%40googlegroups.com<https://groups.google.com/d/msgid/elasticsearch/485c6794-d7e2-4f42-9a12-bdc7f584ad9e%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elasticsearch/793bb137-ed0a-49f4-81ec-02a02f570135%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to