Hi,

thanks for the help. The managed bean approach looks interesting.

I tried guicy, however I ran into a few problems with dropwizard 0.8.4.
 * The environment and configuration is not injectable at the time the
GuiceModule is registered
 * I couldn't register Features/Filters automatically with jersey so I had
to do this programatically in the end as well

This is the reason I went back to regular guice and simply use the injector
in the run method to register the things I need. Other than that guicy was
actually quite nice to use.

So I think I saw guice wrong, where I expected more similarities with
Springs lifecycle management etc.

Thanks!


On Thu, Sep 17, 2015 at 5:11 AM, Vyacheslav Rusakov <[email protected]>
wrote:

> I'm using dw Manged object to start db services and synchronize schema.
> It's the default dw point for lifecycle-related staff.
> Also, I wrote https://github.com/xvik/dropwizard-guicey which registers
> managed objects for me, so I'm always on "guice side" (no direct injector
> usage required for manual integration)
>
> четверг, 17 сентября 2015 г., 4:12:00 UTC+6 пользователь scl написал:
>>
>> Guice is a dependency injection framework. Its nothing more.
>>
>> The scenario 1 can be summarized as:
>> "Run some code once at application startup."
>> Then do it. Run the code at application startup. Don't try to make Guice
>> run the code for you.
>> i.e. in the dropwizard application class there is a method initialize().
>>
>> For your scenario 2 you want some timer task.
>> You won't find this in Guice. But there are extensions which provide such
>> functionality.
>> One would be: http://onami.apache.org/scheduler/
>> There are more out there. Pick the one that suits your needs best.
>>
>>
>>
>>
>> On 09/16/2015 04:20 PM, [email protected] wrote:
>>
>> Hi,
>>
>> I am currently working with guice and dropwizard. I am NOT using the
>> dropwizard-guice dependency since this is somewhat broken with the latest
>> dropwizard version. Fortunatelly I found a nice tutorial explaining how to
>> get this set up so I can use guice.  I however have a few issues now, where
>> coming from spring, I am struggling to find the alternative/best practise
>> for it.
>>
>> Scenario 1:
>> I have a bean that simply checks at startup that the schema of my
>> database is present. I solved this by doing:
>>
>> @Provides @Singleton public bla() {
>>  // object
>> // init
>> }
>>
>> The issue is, that I now have to run guice in production. I am feeling
>> that I am abusing the eager singleton  creation in production and not doing
>> the right thing here.
>> How do I create standalone beans that get created and do some work. In
>> spring I would create this and then call an init method on it. In guice I
>> am not sure how to solve this.
>>
>>
>> Scenario 2:
>> Timer Tasks that are scheduled or simply threads. E.g. a Monitoring
>> thread that gets metric in and pokes them to a reporting server once a
>> minute. I have the same issue here,
>> i can create the bean, but I can't call run on it. Also, if I am not in
>> production, since the bean itself is not used anywhere, it won't get
>> created and won't do any work.
>>
>> It'd be great if someone could give me some pointer for this :)
>>
>> Thanks,
>>
>> Artur
>> --
>> You received this message because you are subscribed to the Google Groups
>> "google-guice" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To post to this group, send email to [email protected].
>> Visit this group at http://groups.google.com/group/google-guice.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/google-guice/2cf2b64e-38fb-416d-a1ff-dd56618b9b99%40googlegroups.com
>> <https://groups.google.com/d/msgid/google-guice/2cf2b64e-38fb-416d-a1ff-dd56618b9b99%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 "google-guice" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/google-guice/p52elK3pjrw/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/google-guice.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/google-guice/1fd13f21-5a02-4eca-ad34-0a38297ac319%40googlegroups.com
> <https://groups.google.com/d/msgid/google-guice/1fd13f21-5a02-4eca-ad34-0a38297ac319%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 
"google-guice" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/google-guice.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-guice/CADHzgUS1-T0ZmdH8aNqbUQu5pHMGjs3NU1aRebhOWQWNBechRw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to