Home   FAQs   New Arrivals   Specials   Pricing & Shipping   Location   Corporate Services   Why Choose Bookware?  
 Search:   
Call our store: 9922 6266 (from within Sydney) or 1800 734 567 (from outside Sydney)
 View Cart   Check Out   
 
Browse by Subject
 Nepean TAFE 2012
I.T
 .NET
 Windows 7
 Adobe CS5
 Cisco
 CCNA 2012
 CCNP 2012
 Java
 VB
 ASP
 Web Design
 E-Commerce
 Project Management
 ITIL
 Macintosh
 Linux
 Windows Server 2008
 SAP
 Sharepoint 2010
Certification
 MCITP
 MCTS
Economics and Business
 Accounting
 Business Information Systems
 Economics
 Finance
 Management
 Marketing
 TAX
 Human Resources
Academic
 Law
 Nursing
 Medical

Programming Open Service Gateways with Java Embedded Server Technology

by: Kirk Chen ; Li Gong

Notify me when in stock

On-line Price: $67.95 (includes GST)

Paperback package 480

20%Off Retail Price

You save: $17.00

TBA - Subject to Change. Price/availability/options for all orders will be confirmed by reply email before processing.

Retail Price: $84.95

Publisher: ,Aug-01

Category: JAVA Level: I/A

ISBN: 0201711028
ISBN13: 9780201711028

Add to Shopping Cart

Kirk Chen, a Staff Engineer at Sun Microsystems, has worked on design and implementation of the Java Embedded Server product since its inception. He has an M.S. in computer science from Stanford University.


  Li Gong is a Distinguished Engineer and Director of Engineering, Peer-to-Peer Networking, at Sun Microsystems. He was Director, Server Products, at the Consumer and Embedded Division, and was the founding chair of OSGi's Java Expert Group, where he led the completion of OSGi's Service Gateway Specification 1.0. He received B.S. and M.S. degrees from Tsinghua University, Beijing, China, and a Ph.D. from the University of Cambridge, England. He is the author of Inside JavaÖ 2 Platform Security (Addison-Wesley, 1999).


          0201711028AB08012001

Table of Contents

Preface.

1. Introduction.


  The Internet and the Networked Home.

The Service Gateway.

Challenges.


  A Multitude of Competing Solutions.

A New Application Environment.


      Java Embedded Server.

The Open Services Gateway Initiative.

The Operational Model of OSGi.


      2. Getting Started.


  Setting up Java Embedded Server.

The 'Home, Sweet Home' Bundle.

Running the Bundle.


  Getting Help.

The JES Cache Directory.

The Bundle Base URL.

Brief Summary of the Major Commands.


              3. Architecture and Basic Concepts.


  Motivation.

Architecture.

Service.

Bundle.


  A Bundle Is a Packaging Vehicle.

A Bundle Is a Functional Module.

The 'Hooks' to the Framework.


      The Framework.


  Bundle Context.


      Cooperation among Bundles and Services.


  Exporting and Importing Packages.

Registering and Obtaining Services.

Package versus Service Dependency.


      Life within the Framework.


  Installing a Bundle.

Starting the Bundle.

Importing Packages and Getting Services.

Handling the Dynamic Service Dependency.

Updating a Bundle.

Stopping and Uninstalling a Bundle.


      The Component-based Model.

Forget CLASSPATH.


      4. Developing Bundles.


  Writing Service Bundles.

Same Service Interface, Different Implementations.


  Packaging Options.


      Retrieving Resources from within the Bundle. Obtaining and Calling Registered Services.


  Inter-Bundle Dependency and Class Loading Issues.

Service Use Count.

Compiling Client Bundles.


      Service Factory.


  Producing a Customized Service for Each Client Bundle.

Service Cache.

Customization for Getting and Releasing Service.


      Relevant org.osgi.framework APIs.


  BundleContext Interface.

ServiceReference Interface.

ServiceRegistration Interface.


      Library BundleS.


  Nested JARs.


      Advanced Examples.


  A Mailer.

An LPD Print Service.


      Writing Bundles that Contain Native Code.

Common Mistakes.


      5. Cooperation among Service Bundles.


  Event Handling.

Bundle State and Service Registration.

Synchronous and Asynchronous Events.

Dealing with Service Unregistration.


  Don't Start without the Service.

Discovering Stale Service.

Carrying on without the Service.

Picking an Alternative.

Cascading Service Registration.

Refusing to Service.


      Cooperation with Asynchronous Events.


      6. Design Patterns and Pitfalls.


  Designing the Service.


  Separating Service Interface and Implementation.

Challenges in Designing a Service Interface.

Approaching an Interface Design.

The Social Aspect.


      Designing Library Bundles.

Delegation and Callback.

Leveraging the Service Registry.

Threading.


  Preventing Runaway Threads.

Writing a Multithreaded Server Bundle.

Using a Thread Pool.


      Managing Object Allocation.


  Nullify References after Use.

Managing References among Bundles.


              7. Standard Services.


  The Log Service.


  Using LogService to Write Logs.

Using LogReaderService to Get Logs.

Performing Persistent Logging.


      The HTTP Service.


  The Standard HttpService.

Performing Basic Authentication.

The JES HTTP Service.


              8. Device Access.


  Introduction.


  The Software Stack in Device Access.

What DA Is Not.


      Motivation.

Cast of Characters.


  Device Service.

Driver Services.

Driver Locator.


      Device Manager.


  Writing DA Services.

The Base Driver.

Device Detection.

Device Refinement.

The Reconfiguration Process.


      Putting It Together.


      9. Permission-based Security and Administration.


  The Permission-based Security Inside Java 2 Platform.


  Code Source.

Permission.

Policy.

Granting Permissions to Classes.

Security Manager.


      The OSGi Permissions.


  AdminPermission.

ServicePermission.

PackagePermission.

Permission Required by the Framework APIs


      Running JES with Security Enabled.


  Setting Up a Policy.

Enabling Security for JES.


      Using Permissions in Your Service.


  Checking Permissions.

Performing Privileged Actions.

Creating Your Own Permission Types.


      Administration.


  Resolving Bundles Dynamically.

Relevant APIs.


              10. Future Directions.


  Removing Phantom BundleS.

Dynamic PermissionS.

Preferences.

User AdministratioN.

Configuration ManagemenT.

What's Next...


      Appendix A Code Examples.


  Chapter 4. Developing Bundles.


  The LPD Print Service.


      Chapter 8. Device Access.


  Serial Service and Driver Locator.

Driver Service and Modem Service.

Web Interface to the Serial Ports.


      Chapter 9 Permission-based Security and Administration.


  Parameter Services.

Parameter Configuration Servlet.

Facilitator.


      Bibliography.

Index.