On 02/05/2013 02:13 PM, Libor Spevak wrote:
Thanks for the info, I just wanted to know, if there are fans of
Spring Framework. If we concentrate just on dependency injection
(CDI), probably "standard" JEE technology would be the best way.
But, if we want to integrate with e.g. Hibernate/JPA, memory cache
(e.g. EhCache) because of DB performance, weave transparently
logging,monitoring and/or caching code to current classes (using
aspects) without changing any line of current code (if we had services
based on Spring beans), there are not many options. JEE container
independence is here not an issue and I am not sure, if development on
light container like Jetty would be quicker, but for integration tests
the framework support is strong (e.g. "simulates" services of "real"
JEE container).
Libor
On 4.2.2013 14:07, Laszlo Hornyak wrote:
> I have seen a CDI patch from Roy that may be related to the topic.
>
> I do not know what the general direction is. CDI is "more standard",
> while it's implementations for me look heavy weight and difficult to
> port to small containers like tomcat or jetty.
>
> In general, now we only inject the Backend deathstar bean to wherever
> it is needed and then it is used as registry for other service
> objects and DAOs.
>
> With spring dependency injection, we could be more independent from
> the container, since the ioC container is comming with us to the app
> container. But at the other hand, ovirt is a nice big ear app, so how
> would you put it together as a spring app? What changes would this need?
>
> Laszlo
>
> ----- Original Message -----
>> From: "Libor Spevak" <lspevak(a)redhat.com>
>> To: engine-devel(a)ovirt.org
>> Sent: Tuesday, January 29, 2013 11:42:35 AM
>> Subject: [Engine-devel] Time for Spring?
>>
>> Hi,
>>
>> it is rather cold in Europe, but can I ask, what's the current
>> opinion
>> or plans about "full" integration of Spring Framework into oVirt
>> engine
>> (Backend)?
>>
>> This is a commonly accepted integration framework among Java
>> programmers
>> and industry standard, which
>> solves many pains from small to large projects. And can lead to a
>> better
>> understanding of the program.
>>
>> There are several Spring dependencies inside oVirt project, but
>> mostly
>> for LDAP and database communication (JDBC template).
>>
>> Still missing (sorry, looks like marketing, but..):
>>
>> - dependency injection
>> - aspect-oriented programming (AOP)
>> - enterprise integration patterns
>>
>> Is something true? :-)
>>
>> 1. We tried, but it is too large and overcomplicated, it can be
>> solved
>> better way for the project purpose
>> 2. We tried, but we think, we need just e.g. JDBC, LDAP layer covered
>> now
>> 3. We would like to integrate with e.g. Hibernate soon, EJB,
>> remoting,
>> unit tests, integration tests, ... , probably we will need it soon
>> 4. We understand and need dependency injection, but there are other
>> light DI containers (Pico, Guice, JBoss Seam).
>> etc.
>>
Jboss weld an implementation reference the CDI JSR 299 and this is what
is used in my CDI refactor
patches.http://gerrit.ovirt.org/#/c/5575/
What we strive to achieve by using it is the separation of behavior from
dependency resolution so its easy to
1. replace run time object with mock objects
2. dynamically switch implementation objects in runtime or
3. dynamically load plugins
>> Still, I think there is strong potential, probably not clear
today.
>> We
>> cannot avoid Guice on frontend side because of GWTP, but the backend
>> lacks something.
>> Or not?
>>
>> Thanks.
>>
>> Regards,
>> Libor
>>
>> _______________________________________________
>> Engine-devel mailing list
>> Engine-devel(a)ovirt.org
>>
http://lists.ovirt.org/mailman/listinfo/engine-devel
>>
_______________________________________________
Engine-devel mailing list
Engine-devel(a)ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-devel