The Liferay portal comes packaged with a powerful tool known as ServiceBuilder to helps developers quickly implement a Service-Oriented Architecture (SOA). Most technologies needed for SOA (Web Services, Spring, Hibernate, etc.) require a tremendous amount of files to be written and configured. For any developer, this can quickly become tedious and nurture an environment of copy-and-paste purgatory.
Liferay's ServiceBuilder automates most of this so that you, the developer, can focus your energy on your project's business logic. It only takes three steps to implement a powerful SOA in Liferay.
1. Define a Data Model
All you need to do is write an XML file called service.xml, based on a DTD provided by Liferay. The file should specify all necessary fields, keys and finder methods. Run ServiceBuilder using Ant, and you are done!
Over a dozen files were generated for you for each table you specified. This includes the following types of files:
- Spring configuration files and Stubbed Remote/Local service classes
- Data Model classes
- Hibernate classes and configuration files
- SQL create and index scripts
2. Declare Business Methods
Empty Remote and Local service classes have been stubbed out for your by ServiceBuilder. All you have to do is declare the methods you want and run the ServiceBuilder task in Ant again, and you are done!
3. Implement Business Logic
Like any other J2EE application, the Remote implementation class should do any security and permission checks that you may need; the Local implementation class should contain the business logic that you allow trusted sources to invoke. After you are done, compile your code and you now have a SOA!
Liferay's ServiceBuilder has created all the necessary files you need for a Service-Oriented Architecture. Rather than hours and hours of tedious copy and pasting, the ServiceBuilder automates all of this in a matter of seconds. You can now spend all that time saved on the place where your expertise should be focused: on the business logic.