目录 3
第1部分JBoss基础 3
第1章JBoss概览 3
1.1 JBoss简介 3
1.1.1 JBoss的历史 3
1.1.2 JBoss组织 3
1.1.3 JBoss与J2EE 4
1.1.4 JBoss与Web Services 4
1.1.5 JBoss的未来 5
1.2 熟悉JBoss 5
1.2.1启动JBoss 6
2.2.1Ant简介 5 7
1.2.2 JBoss的目录结构 11
1.2.3 JBoss的Web服务器 12
1.2.4 JBoss的热部署 13
1.3.1 JMX技术 14
1.3 JBoss的实现 14
1.3.2 JBoss的JMX微处理器 16
1.3.3JBoss的插件结构 26
1.4 JBoss的扩展 27
1.4.1开发自定义MBean插件 27
1.4.2打包.sar文件 28
1.4.3JBoss对MBean的分布式支持 29
1.5 XMessenger消息系统 30
1.5.1关于XMessenger 30
1.5.2 XMessenger的结构 31
1.6 小结 32
1.7资源 32
第2章开发工具 33
2.1 Eclipse开发工具 33
2.1.1 Eclipse的安装 33
2.1.2 Eclipse工作台 35
2.1.3使用Eclipse工具 41
2.2 Ant开发工具 56
2.2.2Ant中的基本概念 58
2.2.3编写第一个build文件 63
2.2.4在Eclipse中使用Ant 64
2.3 XDoclet开发工具 65
2.3.1XDoclet简介 65
2.3.2XDoclet的组成 66
2.3.3 XDoclet的标记 66
2.3.4利用XDoclet开发Web程序 68
2.4 JBoss集成开发环境 71
2.4.1 JBossIDE的安装 71
2.4.2利用JBossIDE控制JBoss 76
2.4.3利用JBossIDE开发JBoss程序 79
2.6资源 90
2.5 小结 90
第2部分EJB的开发 93
第3章 实体Bean的开发 93
3.1 实体Bean介绍 93
3.1.1 EJB容器 93
3.1.2实体Bean的生命周期 94
3.1.3本地接口与远程接口 95
3.1.4主接口与对象接口 95
3.1.5实体Bean的类型 96
3.2 开发CMP类型实体Bean 97
3.2.1 实现实体Bean 97
3.2.2描述实体Bean 100
3.2.3 部署实体Bean 104
3.2.4实体Bean的远程调用 105
3.2.5 实体Bean的本地接口 106
3.2.6 实体Bean的Web客户端——Servlet客户端 108
3.2.7利用JBossIDE开发CMP类型实体Bean 109
3.2.8 EJB的描述 114
3.2.9 JBoss查询语言 123
3.2.10 CMP在JBoss中的描述 126
3.3实体Bean数据的传递 132
3.3.1 通过值对象传递数据 132
3.3.2通过XML传递数据 134
3.4实体Bean的关系 135
3.5 使用MySQL数据库 141
3.5.1安装MySQL数据库 141
3.5.2 JBoss数据库配置 144
3.6 开发BMP类型实体Bean 146
3.6.1BMP简介 146
3.6.2 BMP程序实例 147
3.6.3利用JBossIDE开发BMP 151
3.7 XMessenger组件 157
3.8 小结 157
3.9资源 157
第4章 会话Bean的开发 158
4.1 会话Bean简介 158
4.2无状态会话Bean 158
4.2.1会话Bean的远程接口 159
4.2.2会话Bean的主接口 159
4.2.3会话Bean的实现类 159
4.2.4会话Bean的配置文件 160
4.2.5会话Bean的客户端 162
4.2.6无状态会话Bean在容器中的状态 163
4.3有状态会话Bean 163
4.3.2有状态会话Bean在容器中的状态 164
4.3.1有状态会话Bean的使用 164
4.4会话Bean与事务 165
4.4.1事务简介 165
4.4.2事务处理的API 166
4.4.3容器管理事务 167
4.4.4 Bean管理事务 171
4.5 利用JBossIDE开发会话Bean 173
4.6会话Bean与实体Bean的协作 177
4.7使用JBo8s邮件服务 180
4.8 小结 182
4.9资源 182
第5章消息队列的开发 183
5.1理解消息队列 183
5.1.1点对点消息 184
5.2.1 目的地(Destination) 185
5.2.2会话(Session) 185
5.2 JMS消息中的基本概念 185
5.1.2主题消息 185
5.2.3连接(Connection) 186
5.2.4消息(Message) 186
5.2.5消息生产者(MessageProducer) 187
5.2.6消息消费者(MessageConsumer) 187
5.3编程模式 187
5.4在JBoss中建立消息队列 190
5.4.1部署一个点对点队列 190
5.4.2部署一个主题队列 191
5.5简单编程举例 192
5.5.1点对点消息示例 192
5.5.2主题消息示例 195
5.6消息数据 200
5.6.1消息头(Headers) 201
5.6.2消息属性(Properties) 203
5.7.1 同步的点对点消息 209
5.7消息的应用实例 209
5.7.2持久性的主题消息 210
5.8 调用层 215
5.8.1 RMI调用层 215
5.8.2 OIL调用层 215
5.8.3 UIL调用层 216
5.8.4 JVM调用层 216
5.8.5 HTTP调用层 217
5.9使用JBoss的HTTP消息通道 217
5.10 JBossMQ的配置和管理 218
5.10.1持久性管理者(Persistence Manager) 218
5.10.2目的地管理者(Destination Manager) 219
5.10.3状态管理者(State Manager) 220
5.11 JBossMQ的独立使用 222
5.11.1 JBossMQ的目录结构 223
5.11.2在JBossMQ中部署消息队列 224
5.12消息驱动Bean的开发 225
5.12.1监控JBoss内存用量的消息驱动Bean 225
5.12.2利用JBossIDE开发消息驱动Bean 229
5.13实现XMessenger的即时通信 235
5.13.1 设计目标 235
5.13.2用户管理 236
5.13.3消息传输 239
5.13.4消息存储 240
5.13.5用户界面 241
5.13.6部署J2EE应用程序 242
5.14 小结 244
5.15资源 244
第3部分 Web Services的开发 247
第6章XML模式 247
6.1 XML Schema标准简介 247
6.2.1命名空间问题 248
6.2 Schema的基本概念 248
6.2.2一个Schema文档的组成 249
6.3 Schema的组成部分 249
6.3.1文档元素 249
6.3.2文档属性 250
6.3.3简单类型 251
6.3.4复杂类型 257
6.3.5注释 259
6.3.6文档模型组 260
6.3.7文档属性组 261
6.4 Schema的实例 261
6.4.1编写Schema 261
6.4.2 Schema验证API 263
6.5 XML数据绑定 264
6.7资源 266
6.6 小结 266
第7章 理解Web Services 267
7.1 面向服务的软件架构(SOA) 267
7.1.1 为什么需要面向服务的软件 267
7.1.2面向服务中的基本概念 269
7.1.3 Web系统和Web Services是面向服务的实例 269
7.2 Wbrld Wide Web的架构 270
7.3 Web Services架构(WSA) 271
7.3.1 Web Services架构概述 271
7.3.2 Web Services架构中的角色 271
7.3.3 Web Services协议栈的组成 271
7.3.4重要的结构模型 272
7.3.5支持Web Services的技术体系 277
7.4 小结 278
7.5资源 278
8.1.1 XML-RPC标准的产生 279
8.1 SOAP的发展过程 279
第8章 基于SOAP的Web Services开发 279
8.1.2 W3C制定的SOAP标准 280
8.2 XML-RPC技术 280
8.2.1 XML-RPC技术标准介绍 280
8.2.2 Apache XML-RPC实现工具 284
8.2.3 XML-RPC的局限性 294
8.3使用Axis项目 294
8.3.1 Axis简介 294
8.3.2开发简单的Web Services 300
8.3.3 Axis中的WSDL技术 308
8.3.4 在Axis中使用SOAP附件 326
8.4 Axjs项目的实现 330
8.4.1 Axis的实现方式 330
8.4.2 Axis的结构实现 334
8.4.3 Axis的安全组件 338
8.4.4编写自定义Handler来扩展Axis 339
8.5 WSIF技术 342
8.5.1 WSIF简介 343
8.5.2使用WSIF的调用方式 343
8.6集成Axis的项目 349
8.6.1 Axis与JBoss.net 349
8.6.2 Axis与Globus Tookit 30 349
8.7 小结 349
8.8 资源 350
第9章JBoss.net 351
9.1 JBoss.net介绍 351
9.1.1 JBoss的.net计划 351
9.1.2 JBoss.net当前版本的特性 352
9.1.3熟悉JBoss.net 353
9.2 JBoss.net与Axis 354
9.2.1 JBoss.net集成Axis的方式 354
9.2.2 JBoss.net对Axis的扩充 355
9.3从Java类创建Web Services 357
9.3.1服务类的实现 357
9.3.2编写部署文件 357
9.3.3 建立WSR压缩包 358
9.3.4开发服务的客户端 360
9.4为Web Services添加认证和授权过程 361
9.4.1 JBoss.net中的认证和授权组件 361
9.4.2带有认证和授权功能的Web Services 366
9.5 基于JMX MBean的Web Services 369
9.5.1 实现MBean组件 369
9.52配置和部署MBean组件 370
9.5.3 描述和部署基于MBean的Web Services 370
9.5.4 SOAP对比RMI的优势 371
9.6利用EJB开发Web Services 371
9.6.1 开发基于会话Bean的Web Services 372
9.6.2在实现Web Services的会话Bean中使用值对象 373
9.6.3 在Web Services中利用实体Bean 376
9.7将远程的服务应用到JBoss.net中 379
9.8 利用XDoclet开发Web Services 380
9.8.1 利用XDoclet将会话Bean开发为Web Services 381
9.8.2利用XDoclet将JMX MBean开发为Web Services 383
9.9 为XMessenger开发Web Services接口 385
9.10 JBoss中的UDDI技术 386
9.10.1 UDDI简介 386
9.10.2 UDDI4J工具 389
9.10.3 利用JBoss建立自己的UDDI中心 391
9.11 小结 396
9.12资源 396
附录A Eclipse常用插件 397
附录B Ant常用任务 401
附录C XDoclet常用标记 405