目录前言致谢关于本书作者在线第一部分导 论第1章客户代码 3
1.1从另一个EJB调用本地EJB 3
1.2从另个EJB调用远程EJB 5
1.3从servlet访问EJB 7
1.4从Java服务器页面调用EJB 10
1.5从JMS系统调用EJB业务逻辑 13
1.6将EJB实例的引用持久化 15
1.7获得并且使用持久化的EJB引用 16
1.8将主对象引用持久化 18
1.9比较两个EJB引用是否相同 20
1.10对EJB使用反射 21
1.11从applet调用EJB 23
1.12 改善客户端的EJB查找代码 26
第2章使用XDoclet生成代码 29
2.1生成主、远程、本地和本地主接口 32
2.2为主接口添加和定制JNDI名称 37
2.3使EJB部署描述文件保持最新 38
2.4为实体bean创建值对象 40
2.5生成主键类 45
2.6避免硬编码的XDoclet标记值 48
2.7使用工具对象帮助进行bean查找 49
2.8生成供应商特有的部署描述文件 53
2.9在bean源代码中指定安全角色 54
2.10生成和维护方法权限 55
2.11为实体主接口生成查找器方法 56
2.12生生成ejbSelect方法xML 57
2.13把主方法添加到生成的主接口 58
2.1 4把实体关系XML添加到部署描述文件 59
2.15把目的地类型添加到消息驱动bean的部署描述文件 60
2.16把消息选择器添加到消息驱动bean的部署描述文件 61
3.1使用数据源 65
第二部分主体部分第3章处理数据 65
3.2创建EJB 2.0容器管理的持久性 68
3.3对不同的用户使用不同的数据源 71
3.4使用数据库序列为实体bean生成主键值 73
3.5为实体bean使用组合主键 76
3.6在单一步骤中获得多个实体bean 79
3.7建立一对一实体数据关系的模型 81
3.8为实体bean创建一对多的关系 84
3.9使用实体关系创建层叠删除 87
3.10开发不能创建的、只读的实体bean 89
3.11从EJB调用存储过程 91
3.12使用EJB-QL创建定制的查找器方法 93
3.13把实体数据持久化到数据库视图中 96
3.14基于实体数据的变化发送通知 97
3.15为实体数据创建接口 100
3.16获得实体数据集合的信息 102
3.17减少调用实体bean的次数 104
3.18在大型结果集合中分页 105
第4章EJB的活动 111
4.1获得环境变量 111
4.2实现EJB的toSting()功能 113
4.3为所有EJB提供通用方法 114
4.4减少来实现的bean方法造成的混乱 115
4.5从EJB发送电子邮件 119
4.6使用EJB 2.1的计时器服务 121
4.7从EJB发送JMS消息 122
4.8把EJB当作Web服务使用 124
4.9创建EJB客户的异步行为 125
4.10不使用消息驱动bean创建异步行为 129
4.11隔离EJB和服务类实现 131
4.12创建批处理机制 132
第5章事务 135
5.1调整EJB的容器事务控制 137
5.2不使用容器处理事务的管理 139
5.3回滚当前的事务 140
5.4试图使用错误恢复避免回滚 142
5.5在方法完成之前强制回滚 144
5.6对事务加以时间限制 145
5.7把实体更新组合到单一事务中 146
5.8在事务边界管理EJB状态 147
5.9在一个方法中使用多个事务 148
5.10在回滚之后管理EJB状态 150
5.1 1抛出异常且不导致回滚 151
5.12把事务传播到另一个EJB业务方法 152
5.13把事务传播到非EJB类 154
5.14在客户层启动事务 155
5.15在多个Java服务器页面之间维持事务 157
5.16在一个事务中更新多个数据库 158
第6章消息 161
6.1发送公布/预订JMS消息 161
6.2发送点对点JMS消息 163
6.3创建消息驱动的EJB 164
6.4按照先进先出(FIFO)方式从消息队列中处理消息 167
6.5把消息驱动bean和业务逻辑改动隔离开 170
6.6把数据流发送给消息驱动EJB 171
6.7使用单一JMS消息触发两个或者更多的消息驱动bean 174
6.8加速消息驱动bean的消息传送 176
6.9为消息驱动EJB过滤消息 178
6.10在消息驱动EJB中封装错误处理代码 180
6.11异步发送电子邮件消息 182
6.12在消息驱动bean 中处理回滚 183
第7章安全 187
7.1在EJB方法内找到调用者的身份和角色 188
7.2 分配和确定EJB客户安全角色 189
7.3把客户凭证传递给EJB容器 190
7.4对特定用户禁用方法 191
7.5为EJB分配角色 194
7.6防止对实体数据的访问 195
7.7使用EJB处理对LDAP源的简单验证 196
7.8保证消息驱动bean的安全 197
第三部分补 充第8章日志记录 203
8.1对日志消息进行格式化 206
8.2改进日志性能 208
8.3使用日志生成报告 210
8.4把日志消息发送给JMS主题 211
8.5将日志记录到XML文件 212
8.6为Web浏览器创建日志文件视图 214
8.7在集群环境中创建集中化的日志文件 215
8.8跟踪EJB的生命周期 217
8.9在运行时使用不同的配置 219
8.10按照客户将日志消息分类 221
第9章部署和单元测试 223
9.1编译EJB 226
9.2构造ejb.jar文件 229
9.3构造EJB的存根类 231
9.4创建无状态会话bean的单元测试 234
9.5创建有状态会话bean的单元测试 236
9.6创建实体bean的单元测试 238
9.7测试案例执行的自动化 240
9.8使用UI执行测试案例 244
附录A相关解决方案 247
附录B附加资源 259