Service-Oriented Architecture and Java -
Introduction |
|
| Service-oriented architecture (SOA) has become popular in recent years because it allows you to reuse applications and supports interoperability between heterogeneous applications and technologies. For now we will look at SOA from a Java perspective and examine the technologies available in the Java space to build service-oriented applications. |
|
| As Java developers, we tend to focus on reusing code; thus, we tend to tightly integrate the logic of objects or components within an application. However, the main theme behind SOA is to find the appropriate modularity and achieve loose coupling between modules. One option is to built an application where the JSP presentation layer is not tightly integrated with the data model and accesses it appropriately via an EJB. |
|
| Many developers think it's not possible to build service-oriented applications without using web services. SOA is a design principle, whereas web services is an implementation technology. Hence you can build a service-oriented application without using web services--for example, by using other traditional technologies such as Java RMI. In fact Jini had long established the concept of SOA prior to the rise in popularity of web services. |
| |
| Web services bring to the table the platform-independent standards such as HTTP, XML, SOAP, and UDDI, thus allowing interoperability between heterogeneous technologies such as J2EE and .NET. In this series we'll focus on web services as the enabling technology for building service-oriented applications. |
|
 |
| SOA promotes application assembly because services can be reused by numerous consumers. For example we need build only once instance of a service that captures patient demographics and this service can be consumed from any number of applications like an EMR application, a healthcare portal, Practice management solution or an electronic billing system. |
|
|
|