Java Naming and Directory Interfaces. A naming service is an entity that performs the following tasks:  It associates names with objects. Similar to.

Slides:



Advertisements
Similar presentations
Overview Environment for Internet database connectivity
Advertisements

Welcome to Middleware Joseph Amrithraj
JNDI Java Naming Directory Interface JNDI is an API specified in Java that provides naming and directory functionality to applications written in Java.
Active Directory: Final Solution to Enterprise System Integration
Notes to the presenter. I would like to thank Jim Waldo, Jon Bostrom, and Dennis Govoni. They helped me put this presentation together for the field.
Java Naming and Directory Interface JNDI. v001025JNDI2 Topics Naming and Directory Services JNDI Overview Features and Code Samples JNDI Providers References.
XP Browser and Basics1. XP Browser and Basics2 Learn about Web browser software and Web pages The Web is a collection of files that reside.
OCT 1 Master of Information System Management Organizational Communications and Distributed Object Technologies Lecture 14: Naming.
The Internet Useful Definitions and Concepts About the Internet.
1. Introducing Java Computing  What is Java Computing?  Why Java Computing?  Enterprise Java Computing  Java and Internet Web Server.
Directory & Naming Services CS-328 Dick Steflik. A Directory.
1 Build a Web Application on J2EE. 2 J2EE Scenario Client – Web Server – EIS Resources Client – Web Server – EIS Resources Client – Application Server.
Faculty of Information Technology © Copyright UTS Faculty of Information Technology - JNDIJNDI-1 Advanced Java Programming JNDI v2 Chris Wong
Basics of JNDI Alessio Bechini June Naming and Directory Services: Rationale A fundamental element in every application is the capability to find.
Systems Architecture, Fourth Edition1 Internet and Distributed Application Services Chapter 13.
2 Systems Architecture, Fifth Edition Chapter Goals Describe client/server and multi-tier application architecture and discuss their advantages compared.
1 Networking A computer network is a collection of computing devices that are connected in various ways in order to communicate and share resources. The.
Electronic Commerce Last Week Internet utility programs
A centralized system.  Active Directory is Microsoft's trademarked directory service, an integral part of the Windows architecture. Like other directory.
1 CSIT 320. Just as the combination of a database and a database management system collects and organizes information about an institution/company/… as.
Hands-On Microsoft Windows Server 2008 Chapter 8 Managing Windows Server 2008 Network Services.
ODBC Open DataBase Connectivity a standard database access method developed by Microsoft to access data from any application regardless of which database.
IT 210 The Internet & World Wide Web introduction.
Beyond DHTML So far we have seen and used: CGI programs (using Perl ) and SSI on server side Java Script, VB Script, CSS and DOM on client side. For some.
卓越計劃進度報告 JNDI Java Naming and Directory Interface 網際網路實驗室 報告人 潘燕弘.
Enterprise Java Beans CS-422. Application Servers In the late 1980s and though the mid 1990s a number of corporations (Broadvision, Netscape…) marketed.
2013Dr. Ali Rodan 1 Handout 1 Fundamentals of the Internet.
Internet Basics Dr. Norm Friesen June 22, Questions What is the Internet? What is the Web? How are they different? How do they work? How do they.
Introduction to distributed systems Dr. S. Indran 23 January 2004.
Corso di Formazione Sodalia “Enterprise Java Beans” JNDI Java Naming and Directory Interface.
Chapter 9: Novell NetWare
Mohammed Mohsen Links Links are what make the World Wide Web web-like one document on the Web can link to several other documents, and those.
Postacademic Interuniversity Course in Information Technology – Module C1p1 Contents Data Communications Applications –File & print serving –Mail –Domain.
15 Semester 1 JEOPARDY IndirectnetworksupportDNSDNSNetworkApps.NetworkApps.MoreNetworkApps.Misc.Misc
1 LDAP and Java Naming Services Murali. M.Nagendranath.
Jozef Goetz, Application Layer PART VI Jozef Goetz, Position of application layer The application layer enables the user, whether human.
Introduction To Internet
Topic : JNDI Kaster Nurmukan. JNDI2(c)CDAC(Formerly NCST) What is JNDI? Naming and Directory Services Naming Concepts Issues JNDI Architecture Programming.
Middleware Technology (J2EE/EJB) RMI-IIOP/JNDI. 2 Distributed Objects EJB components are based on distributed objects. A distributed object can be called.
Advanced Programming Rabie A. Ramadan 7.
How Does the Internet Work? Protocols Protocols are rules that describe how computers communicate and exchange data. The Internet has a series of these.
1 Welcome to CSC 301 Web Programming Charles Frank.
Databases JDBC (Java Database Connectivity) –Thin clients – servlet,JavaServer Pages (JSP) –Thick clients – RMI to remote databases –most recommended way.
Application Layer Honolulu Community College Cisco Academy Training Center Semester 1 Version
Enterprise Integration Patterns CS3300 Fall 2015.
1 Web Servers (Chapter 21 – Pages( ) Outline 21.1 Introduction 21.2 HTTP Request Types 21.3 System Architecture.
Jini Architecture Introduction System Overview An Example.
Cisco – Chapter 15 Application Layer closest to you as an end-user, when you are interacting with software.
CHAPTER 7 THE INTERNET AND INTRANETS 1/11. What is the Internet? 2/11 Large computer network ARPANET (Dept of Defense) It is international and growing.
Network protocols –Nodes of a network must obey some rules if they want to communicate with each other. The set of rules is called network protocol. –The.
INTERNET PROTOCOLS. Microsoft’s Internet Information Server Home Page Figure IT2031 UNIT-3.
WEB SERVER SOFTWARE FEATURE SETS
What is Java? Object Oriented Programming Language Sun Microsystems “Write Once, Run Everywhere” Bytecode and Virtual Machine Java Platform (Java VM and.
Active Directory. Computers in organizations Computers are linked together for communication and sharing of resources There is always a need to administer.
Alan L. Batongbacal CS 4244 / 01 Nov 2000
Java Naming and Directory Interface. Contents Naming and directory services JNDI RMI Conclusion.
Directory Services CS5493/7493. Directory Services Directory services represent a technological breakthrough by integrating into a single management tool:
Internet and Distributed Application Services
J2EE Lecture 10: EJB 3.0 Overview
Secure Single Sign-On Across Security Domains
Data Virtualization Demoette… ODBC Clients
Master of Information System Management
Chapter 3: Windows7 Part 4.
Knowledge Byte In this section, you will learn about:
Introduction to Name and Directory Services
Bina Ramamurthy Chapter 9
Architecture Competency Group
Bina Ramamurthy Chapter 9
Introduction of Week 11 Return assignment 9-1 Collect assignment 10-1
Bina Ramamurthy Chapter 9
Presentation transcript:

Java Naming and Directory Interfaces

A naming service is an entity that performs the following tasks:  It associates names with objects. Similar to a telephone company’s associating a person’s name with a specific residence’s telephone number. Application logic components What is an Naming Services

 It provides a facility to find an object based on a name. This is similar to a telephone operator finding a person’s telephone number based on that person’s name and connecting the two people together. What is an Naming Services (Contd)

The common example of Naming Services is the Domain Naming Service (DNS), this associate a name with the IP address of the system. The users have to remember the DNS name not the IP address. We do have the File System naming service, which save or opens a specific file based on the file name given. What is an Naming Services (Contd)

A directory service is a naming service that has been extended and enhanced to provide directory object operations for manipulating attributes. A directory is a system of directory objects, all connected. Some of the products are Netscape Directory Server and Microsoft’s Active Directory. What is an Directory Services

Directory vendors differentiate their product lines by offering different types of services. Unfortunately, this leads to different naming and directory standards. For example, directories based on the Lightweight Directory Access Protocol (LDAP) are accessed differently than those based on Network Information System(NIS) or Novell’s Network Directory System(NDS) Problems with Naming and Directory Services

Java Naming and Directory Interfaces is a system for Java-based clients to interact with naming and directory systems Enter Java Naming and Directory Interfaces

 JNDI is unified system to access all sorts of directory service information, such as security credentials, phone numbers, electronic and postal mail addresses.…  JNDI is a single API to access different directories with different protocols.  JNDI insulates the application from protocol and implementation details.  JNDI is extensible. Future providers of directories can plug in their particular directory services to JNDI without affecting your client code. Benefits of JNDI

 JNDI can read and write whole Java objects from directories  You can link different types of directories, such as an LDAP directory with an NDS directory and have the combination appear to be one large, federated directory. The federated directory appears to be on contiguous directory to the client.  JNDI is supported by Sun Microsystems and it is a standard Java extension. Benefits of JNDI (Contd)

JNDI Architecture JNDI made up of two halves: the client API and the Service Provider Interface(SPI). The client API allows Java code to perform directory operations. This API is uniform for all types of directories. JNDI architecture is somewhat like the Java Database Connectivity (JDBC)  In JDBC there is one uniform client API for performing database operations.  In JDBC, relational database vendors provide JDBC drivers to access their particular database.

Lightweight Directory Access Protocol (LDAP) Network Information service( NIS) Novell Directory Services (NDS ) Service Location Protocol(SLP) Corba Object Naming Service or COS Naming File System RMI Registry Bea Weblogic Naming Service Available Service Providers

 Atomic Name An atomic name is simple, basic, indivisible component of a name. For example : In the string c:\MyCompany\java\Jndi.txt Jndi.txt is an atomic name. Understanding the concepts behind JNDI Naming Concepts

 Compound Name A compound name is zero or more atomic names put together. In the previous example the entire string “c:\MyCompany\java\Jndi.txt” is a compound name. Understanding the concepts behind JNDI Naming Concepts

A binding is an association of a name with an object. For example the file autoexec.bat in the windows file system has a binding to the file data on your hard disk. Note that compound name like C:\user\people\education\stg Consists of multiple bindings one to user, one to people, one to education and one to lovin. Binding

Naming Service

Domain Naming Service (DNS) In DNS, names are built from components that are separated by dots ("."). They read from right to left. The name " names a machine called "www" in the ”lovinjava.com" domain. Likewise, the name ”lovinjava.com" names the domain ”lovinjava" in the top-level domain "com." How JNDI differs from other Naming Services

Lightweight Directory Access Protocol(LDAP) In LDAP, the situation is slightly more complicated. Names are built from components that are separated by commas (","). Like DNS names, they read from right to left. However, components in an LDAP name must be specified as name/value pairs. The name "cn=Lovin Varghese, o=STG, c=IN" names the person "cn= Lovin Varghese " in the organization " o=STG, c=IN." Likewise, the name "o=STG, c=IN" names the organization "o=STG" in the country "c=IN". How JNDI differs from other Naming Services

A context is an object that contains zero or more bindings. A context represents a set of bindings within a naming service that all share the same naming convention. A Context object provides the methods for binding names to objects and unbinding names from objects, for renaming objects, and for listing the bindings. Context

A namespace is all the names contained within that naming system. Namespace

A composite name is a name that spans multiple naming systems. For example on the web the URL is composed from the following namespaces: http : comes from the URL scheme-id namespace. This namespace defines the protocol you use to communicate. Lovinjava.com uses the Domain Name Service(DNS) to translate machine names into IP address. Products and products.jsp are from the file system namespace on the web server machine. Composite Name

One question commonly asked which namespace do you first look in when traversing the string The starting point of exploring a namespace is called an initial context. An initial context simply is the first context you happen to use. An initial context is a starting point for performing all naming and directory operations. Initial Context

A directory service associates names with objects and also allows such objects to have attributes. Thus, you not only can look up an object by its name but also get the object's attributes or search for the object based on its attributes. Directory Service

A directory service manages a directory of entries. An entry also has attributes associated with it; an attribute consists of a name or identifier and one or more values. These attributes describe the entry. For example, the entry for an individual might have the following attributes (note the two addresses): Name: John Doe Address: 123 Somewhere Street Directory Services

Directory services are simple databases. Like their relational cousins, many common directory services provide search and filter functionality. Instead of locating an entry only by name, these directory services allow you to locate entries based on a set of search criteria. Directory Services

 javax.naming  javax.naming.directory  javax.naming.event  javax.naming.ldap  javax.naming.spi JNDI Api references

Presented By Lovin Varghese, Technical Manager, Software Technology Group Ltd. id :