Hi,

It is too complex to answer in one post ;-), but you almost answer all
your questions ;-)
I don't know all the details about your system (will it be base on
some J2EE App server?), but for example:
- you can implement all your core business logic as simple POJO's base
on Spring, it will allow you to test them in separation from the
client code
- for web tier you can use Struts2 and also use Spring to connect your
actions to POJO's  above, " ... MyAction.save() would go into
POJO.save() ... " - exactly, and you can use some Transfer Object
between action and POJO (you should not expose your entities to
actions, repack them to POJO ;-)
- even if don't plan to have interoperability with .NET you should use
with your WebServices literal / document style (base on XSD and XML),
then you can implement your WebService as a POJO, which will map in /
from  XML request to Transfer Object which will be used with
POJO.save()
- when you will want to use J2EE server, you can inject your POJO's
with Spring to EJB's (
http://static.springframework.org/spring/docs/2.5.x/reference/ejb.html#ejb-implementation-ejb3
) and once again pack your entities to TO (but it can the same TO for
all tiers)

As you can see, you can simple extend access to your business logic,
base on different technologies.

If you want to connect does two systems, especially over the network,
SOA can be a good solution. You can simply separate the logic of both
and extend them independently, exposing new functionality through
WebServices. But SOA is not a magic, you will encounter another
problems when you will try to implement SOA (authorization,
versionning,
problems exposing complex objects / data, etc)

I've hope that will give you some brief review how I see it ;-)


Regards
-- 
Lukasz

http://www.linkedin.com/in/lukaszlenart

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to