دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش: نویسندگان: Arnaud Cogoluegnes, Thierry Templier, Andy Piper, Peter Kriens سری: ISBN (شابک) : 9781935182306 ناشر: Manning سال نشر: 2010 تعداد صفحات: 543 زبان: English فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود) حجم فایل: 7 مگابایت
در صورت تبدیل فایل کتاب Spring Dynamic Modules in Action به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب ماژول های پویا بهار در عمل نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
Spring Dynamic Modules یک چارچوب منعطف مبتنی بر OSGi است که ساخت کامپوننت را سریع می کند. با Spring DM، شما به راحتی می توانید برنامه های بسیار ماژولار ایجاد کنید و می توانید به صورت پویا ماژول های خود را اضافه، حذف و به روز کنید. Spring Dynamic Modules in Action یک آموزش جامع است که مفاهیم OSGi را ارائه می دهد و آنها را با ایده های آشنای چارچوب Spring ترسیم می کند. در آن، شما یاد خواهید گرفت که به طور موثر از Spring DM استفاده کنید. شما بر تکنیکهای قدرتمندی مانند تعبیه یک محفظه Spring در یک بسته OSGi مسلط خواهید شد و خواهید دید که چگونه تزریق وابستگی Spring به پیکربندی OSGi.and در OSGi میپردازد.
Spring Dynamic Modules is a flexible OSGi-based framework that makes component building a snap. With Spring DM, you can easily create highly modular applications and you can dynamically add, remove, and update your modules. Spring Dynamic Modules in Action is a comprehensive tutorial that presents OSGi concepts and maps them to the familiar ideas of the Spring framework. In it, you'll learn to effectively use Spring DM. You will master powerful techniques like embedding a Spring container inside an OSGi bundle, and see how Spring's dependency injection compliments OSGi.and configuration in OSGi.
Spring Dynamic Modules in Action......Page 1
brief contents......Page 6
contents......Page 8
foreword......Page 16
preface......Page 18
acknowledgments......Page 20
Andy Piper......Page 21
about this book......Page 22
Roadmap......Page 23
Code......Page 24
Author online......Page 25
about the authors......Page 26
about the title......Page 27
about the cover illustration......Page 28
Spring DM basics......Page 30
Modular development with Spring and OSGi......Page 32
1.1.2 Java—the end and the beginning......Page 33
1.2 The Spring Framework......Page 34
1.2.1 Loose coupling of classes......Page 35
1.2.2 Dependency injection......Page 36
1.2.3 Aspect-oriented programming (AOP)......Page 37
1.2.4 Enterprise support......Page 38
1.3.1 Aims of OSGi......Page 39
1.3.2 OSGi layers......Page 40
1.3.3 What OSGi offers......Page 41
1.4.1 What is Spring DM?......Page 42
1.4.2 Embedding Spring within an OSGi container......Page 44
1.4.3 Benefits of Spring DM for real-life OSGi applications......Page 46
1.5.1 Provisioning the OSGi container......Page 47
1.5.2 Writing the Spring DM–powered bundle......Page 50
1.5.3 Deploying the bundle......Page 51
1.6 Summary......Page 52
Understanding OSGi technology......Page 53
2.1.1 Component structure......Page 54
2.1.2 Component configuration......Page 55
2.1.3 OSGi containers......Page 57
2.1.4 OSGi component lifecycle......Page 58
2.2 Component dependencies......Page 59
2.2.1 Classloader isolation and chaining......Page 60
2.2.2 Providing dependencies......Page 62
2.2.3 Consuming dependencies with the Import-Package header......Page 63
2.2.4 Consuming dependencies with the Require-Bundle header......Page 65
2.2.5 Matching and versioning......Page 67
2.3 Interacting with the OSGi container......Page 71
2.3.1 Bundles......Page 72
2.3.2 Lifecycle management......Page 73
2.3.4 Event support......Page 75
2.3.6 Bundle activator......Page 77
2.4 Service support in OSGi......Page 79
2.4.1 Providing services......Page 80
2.4.2 Using services......Page 83
2.4.3 Service event support......Page 85
2.5 Handling native code......Page 87
2.6 Diagnosing errors......Page 88
2.6.1 Detecting components with problems......Page 89
2.6.2 Detecting different kinds of problems......Page 90
2.7 Summary......Page 91
Getting started with Spring DM......Page 92
3.1.1 Embedding the Spring application context within components......Page 93
3.1.2 Spring DM’s OSGi-aware application context......Page 95
3.1.3 Spring DM’s extender mechanisms......Page 96
3.1.4 Kinds of supported bundles......Page 98
3.1.5 Spring DM’s osgi namespace......Page 99
3.2.1 Configuring a container......Page 101
3.2.2 Provisioning a container for simple use......Page 102
3.2.3 Provisioning a container for web use......Page 105
3.3.1 Using the fragment configuration pattern......Page 109
3.3.2 Implementing a fragment......Page 110
3.4.1 Creating and configuring a bundle......Page 111
3.4.2 Packaging a bundle......Page 114
3.4.3 Checking a bundle within a container......Page 115
3.4.4 Developing an integration test......Page 116
3.5.1 Creating and configuring a web bundle......Page 123
3.5.2 Packaging a web bundle......Page 124
3.5.4 Developing an integration test for a web bundle......Page 126
3.6 Summary......Page 129
Core Spring DM......Page 130
Using Spring DM extenders......Page 132
4.1.1 A word about dependencies......Page 133
4.1.2 Structure of standard Spring OSGi components......Page 135
4.1.3 Initializing and destroying the Spring container......Page 139
4.1.4 Customizing application context creation......Page 145
4.1.5 Listening to extender events with the whiteboard pattern......Page 147
4.1.6 Hard dependencies on the OSGi environment......Page 152
4.2.1 Structure of Spring DM web OSGi components......Page 155
4.2.2 Classloading in web bundles......Page 156
4.2.3 OSGi-aware Spring web container......Page 158
4.2.4 Spring DM web deployer......Page 160
4.3 Summary......Page 161
Working with OSGi services......Page 162
5.1.1 Combining OSGi services and dependency injection......Page 163
5.1.2 XML-based registration and referencing......Page 165
5.1.3 Annotation-based service referral......Page 168
5.2.1 Using the thread context classloader......Page 170
5.2.2 Using the thread context classloader with OSGi......Page 171
5.3.1 Configuration for registering services......Page 173
5.3.2 Configuration for referencing services......Page 177
5.4 Handling OSGi service dynamics......Page 180
5.4.1 Service registration and unregistration events......Page 181
5.4.2 Service bind and unbind events......Page 182
5.5.1 Configuring collections......Page 185
5.5.2 Sorting collections......Page 186
5.5.3 Greedy proxying......Page 188
5.6 Programmatic service support......Page 189
5.6.1 Registering a service programmatically......Page 190
5.6.3 ServiceReference support......Page 191
5.7 Summary......Page 192
OSGi and Spring DM for enterprise applications......Page 193
6.1.1 Using Java and Java EE frameworks in OSGi environments......Page 194
6.1.2 Choosing the right frameworks for OSGi......Page 195
6.1.3 Getting OSGi-ready artifacts......Page 197
6.2.1 How to create OSGi-ified versions of libraries......Page 198
6.2.2 Converting by hand......Page 201
6.2.3 Converting using tools......Page 202
6.3 Designing OSGi enterprise applications......Page 209
6.3.1 Organizing OSGi components......Page 210
6.3.2 Defining interactions between application bundles......Page 216
6.4.1 Dealing with the appearance or disappearance of services......Page 218
6.4.2 Providing a new version of a component......Page 224
6.5 Summary......Page 227
Data access in OSGi with Spring DM......Page 228
7.1.1 JDBC concepts......Page 229
7.1.2 JDBC issues when used within OSGi......Page 231
7.1.3 Configuring JDBC data sources......Page 232
7.1.5 Using JDBC within OSGi with Spring DM......Page 236
7.2 Using ORM within OSGi with Spring DM......Page 238
7.2.1 Object/relational mapping......Page 239
7.2.2 Load-time weaving......Page 244
7.2.3 Provisioning a container for JPA implementations......Page 247
7.2.4 Using JPA in OSGi with Spring DM......Page 249
7.2.5 JPA implementation specifics when used with Spring DM......Page 252
7.2.6 A JPA summary......Page 255
7.3.1 Spring’s transactional support......Page 256
7.3.2 Using JPA transactions with Spring DM......Page 258
7.4.1 The open EntityManager in view pattern......Page 261
7.4.2 Using the open EntityManager in view pattern with Spring DM......Page 262
7.5 Summary......Page 264
Developing OSGi web components with Spring DM and web frameworks......Page 265
8.1.1 Using Spring DM with action-based frameworks......Page 266
8.1.2 Using Spring MVC with Spring DM......Page 267
8.2.1 Using Spring DM with component-based frameworks......Page 273
8.2.2 Using JSF with Spring DM......Page 274
8.2.3 Using Wicket with Spring DM......Page 280
8.3 Using AJAX frameworks with Spring DM......Page 285
8.3.2 Using DWR with Spring DM......Page 286
8.3.3 Using GWT with Spring DM......Page 291
8.4.1 Using Spring DM with web service frameworks......Page 296
8.4.2 Using Spring WS with Spring DM......Page 297
8.4.3 Using Restlet with Spring DM......Page 302
8.5 Summary......Page 308
Advanced topics......Page 310
Advanced concepts......Page 312
9.1 Configuring Spring DM core components......Page 313
9.1.2 Features configurable through named beans......Page 314
9.2 Extending the standard extender......Page 315
9.2.1 Beans usable for configuration......Page 316
9.2.2 Task executor for creating application contexts......Page 317
9.2.3 Task executor for destroying application contexts......Page 319
9.2.4 Extender properties......Page 320
9.2.5 Propagating application context events......Page 321
9.2.6 Overriding application context creation......Page 322
9.2.7 Adding postprocessing to application contexts......Page 326
9.2.9 How SpringSource dm Server customizes Spring DM’s extender......Page 327
9.3.1 Beans available for configuration......Page 329
9.3.3 Overriding the context path strategy......Page 330
9.3.4 Overriding the WAR scanner......Page 331
9.4.1 The basics of Spring DM’s web support......Page 332
9.4.2 Support for Tomcat......Page 334
9.4.3 Support for Jetty......Page 337
9.5.1 The Java security model......Page 340
9.5.2 The OSGi security model......Page 342
9.5.3 Integrating Spring DM into the OSGi security model......Page 344
9.6.1 Implementation provider pattern......Page 345
9.6.2 Chained classloader pattern for proxy-based AOP......Page 348
9.7 Summary......Page 350
Testing with Spring DM......Page 352
10.1.1 General concepts......Page 353
10.1.2 Unit tests with Spring-based applications......Page 354
10.1.3 Testing OSGi components......Page 356
10.2.1 Spring DM’s OSGi mocks......Page 359
10.2.2 Spring DM’s OSGi mocks in action......Page 360
10.3.1 Developing integration tests with Spring DM support......Page 364
10.3.2 Advanced features of Spring DM test support......Page 373
10.4 Summary......Page 379
Support for OSGi compendium services......Page 380
11.1.1 What are compendium services?......Page 381
11.1.2 Spring DM’s support for compendium services......Page 382
11.2 Spring DM’s Configuration Admin Service support......Page 384
11.2.1 OSGi Configuration Admin Service......Page 385
11.2.2 Using properties defined by the Configuration Admin Service......Page 387
11.2.3 Support of managed entities......Page 389
11.3.1 OSGi Event Admin Service......Page 394
11.3.2 Linking Spring DM and the OSGi Event Admin Service......Page 396
11.3.3 Implementing the bridge between Spring DM and Event Admin Service......Page 398
11.3.4 Implementing OSGi event handlers......Page 400
11.4 Summary......Page 401
The Blueprint specification......Page 403
12.1.1 The attraction of open standards......Page 404
12.1.3 Goals of the Blueprint specification......Page 405
12.2 A taxonomy of Blueprint......Page 406
12.2.1 A Blueprint example......Page 407
12.3.1 Bean manager......Page 408
12.3.2 Service manager......Page 410
12.3.3 Reference manager......Page 411
12.3.4 Reference-list manager......Page 412
12.3.5 A Blueprint example......Page 413
12.3.6 The Blueprint container and its metadata......Page 414
12.3.7 Environment managers......Page 416
12.4.1 Blueprint lifecycle......Page 417
12.4.2 Type converters......Page 421
12.6 Summary......Page 423
A.1.1 Installing Eclipse......Page 426
A.1.2 Installing Spring IDE for Spring DM......Page 427
A.1.3 Configuring the target platform......Page 430
A.2.1 Simple Spring DM components......Page 435
A.2.2 OSGi fragments......Page 440
A.2.3 Spring DM web components......Page 441
A.3.1 Creating and configuring the Equinox container......Page 442
A.3.2 Running the Equinox container......Page 444
A.3.3 Equinox console......Page 445
A.4 Summary......Page 447
OSGi development with Maven 2......Page 448
B.2.1 Creating a simple project......Page 449
B.2.2 The Maven 2 project structure and the POM file......Page 450
B.2.3 Compiling and packaging: the build lifecycle......Page 452
B.2.4 Introducing the dependency management system......Page 454
B.2.5 Splitting a Maven 2 project into modules......Page 461
B.3 Using the Apache Felix Bundle Plugin......Page 463
B.3.1 Setting up the plug-in......Page 464
B.3.2 Default behavior......Page 466
B.3.3 Configuring metadata generation with instructions......Page 467
B.3.4 Using the plug-in without changing the packaging type......Page 469
B.3.6 Integrating with the Eclipse PDE......Page 471
B.4 Introducing Bundlor and its Maven plug-in......Page 473
B.4.1 Setting up Bundlor in Maven 2......Page 474
B.4.2 The template mechanism......Page 478
B.4.3 Bundlor’s scanning capabilities for runtime dependencies......Page 482
B.5 Summary......Page 485
C.1 Installing Ant......Page 487
C.2.1 Structure and content of the project......Page 488
C.2.2 The Ant build file......Page 489
C.2.3 Using Bnd with Ant to package the bundle......Page 491
C.3.1 Installing Ivy for Ant......Page 492
C.3.2 Configuring repositories for Ivy......Page 493
C.3.3 Retrieving Spring DM dependencies with Ivy......Page 494
C.4.1 Writing and compiling the integration test......Page 496
C.4.2 Customizing Spring DM’s test framework to use Ivy’s dependencies......Page 498
C.4.3 Running the test with Ant......Page 501
C.5 Summary......Page 502
D.1 Pax Runner......Page 503
D.1.1 Installing Pax Runner......Page 504
D.1.2 Pax Runner syntax......Page 505
D.1.3 Pax Runner options......Page 506
D.1.4 Pax Runner provision specs......Page 508
D.1.5 Pax Runner profiles......Page 511
D.1.6 Using a text file for the options......Page 513
D.2.1 Installing Pax Construct......Page 514
D.2.2 Creating a module-based project......Page 516
D.2.3 Setting up the project for Spring DM......Page 518
D.2.4 Creating a bundle fragment for the logging configuration......Page 520
D.2.5 Creating the data source bundle......Page 521
D.2.6 Creating the database client bundle......Page 523
D.2.7 Using a connection pool for the data source......Page 525
D.3 Summary......Page 527
B......Page 528
D......Page 530
H......Page 531
J......Page 532
M......Page 533
O......Page 534
P......Page 536
S......Page 537
T......Page 541
X......Page 542
Back cover......Page 543