Contents Foreword.......... Introduction .......................................................xii Acknowledgments …xix About the contributors..........................................xxiii Part One EJB Pattern Language ........................1 Chapter 1 EJB Layer Architectural Patterns 3 Session Facade.............. Message Facade 12 EJB Command ............................................18 Data Transfer Object Factory ................................26 Generic Attribute Access. .32 Business Interface........................................40 Chapter2 Inter-Tier Data Transfer Patterns .45 Data Transfer Object......................................47 Domain Data Transfer Object .51 Custom Data Transfer Objects..............................56 Data Transfer HashMap...................................59 Data Transfer RowSet .63 Foreword . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xi Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xiii Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xix About the Contributors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xxiii Part One EJB Pattern Language . . . . . . . . . . . . . . . . . . . . . . . .1 Chapter 1 EJB Layer Architectural Patterns . . . . . . . . . . . . . . . . . . . . . . . . . .3 Session Façade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5 Message Façade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12 EJB Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18 Data Transfer Object Factory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26 Generic Attribute Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32 Business Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .40 Chapter 2 Inter-Tier Data Transfer Patterns . . . . . . . . . . . . . . . . . . . . . . . . .45 Data Transfer Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47 Domain Data Transfer Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .51 Custom Data Transfer Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .56 Data Transfer HashMap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .59 Data Transfer RowSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .63 Contents