关于ofbiz的service engine的不解之处

我觉得java类完全可以实现service engine功能,为什么要用service engine呢?
用了他不是多了一个配置的地方(service***.xml)调用的地方可以在event中,在event的定义的地方可以用java,service,bsh等,为什么要有这么多手段呢?直接用java不好吗?
service engine的好处是什么呢?

event的java实现需要httprequest和httpresponse
用service engine的好处在写一次代码, 可以被不同的环境调用, 不一定是局限在web下.

service engine是必须的,特别是当你的项目很大时,如果你有用过JMS或Email等异步服务的经验,那就觉得service的类型还分两种:同步和异步。

我觉得Service已经是一个软件模式,因为任何客户端请求,都需要特定的Service为之服务,在EJB中, session bean其实是一种Service的抽象,它将Service分为两种:有状态和无状态。

Ofbiz采取的另外一套思路,以引擎的Model来处理Service。

嗯,wys1978的回答一语中的,这正是我所不明白之处,不知道event和service各自的功能目的到底是什么,闻君一席话,我茅塞顿开啊,谢谢