Business objects play a central role in modeling and implementing the behavior of an application. Java business objects that adhere to the JavaBeans specification enable an easy translation to Web Services through tools and also help to facilitate common Java object/relational techniques, such as JDO.
In this chapter, you saw a business object (the Company ) that stands alone (is not collected) and illustrates the use of JavaBeans patterns to facilitate the Web Service architecture. The company contains an address that also uses the JavaBean patterns for data. The difference between the company and the address when translated into Web Services is that the methods on the company operate against a server instance, and the methods against the address operate against a local instance of the object stored in the client's workspace. To change an address, the client must request a copy through the company Web Service, change the copy, and then resubmit it to the company Web Service.
Single business objects, such as Company , are rare in terms of complete object domains represented in business applications, and, in fact, you do not have any stand-alone business objects in this application. Instead, business objects are collected and business processes operate against business objects retrieved from the collections; these patterns are used throughout the P.T. Monday Coffee Company application. The next two chapters address business object collections and business processes in more detail. This chapter is not in vain; the techniques shown in this chapter apply directly to the next two chapters.