I largely disagree with the BEA position on web services:
Now, of course, an intelligent app server can detect if the two services are local and bypass the marshalling. I think what BEA is saying is "our web services implementation isn't smart yet..." - and that's Ok.
If you take BEA's advice - you'll likely end up with a tightly coupled, Java based application. Thus, you only integrated at the edges. I'm not a fan of this approach. Don't get me wrong - not everything should be a service - but saying, "you should place business logic in custom Java controls instead of web services" is definitely not my way of thinking! In my humble opinion, this is one of the faults with the WebLogic Integrator. It leads to 'inlining java code directly into the process code' - - which quickly turns into a mess.