Виды программирования, программирование, языки программирования, книги программирование На сайте представлена информация про программирование в Интернете и работу  

RMI
Проблема при запуске Servlets из Eclipse?
Как Вы относитесь к курящим девушкам?
Прежде чем задать вопрос, прочтите это!
Документация и книги по Java, Давайте соберём ссылки
Tab Control в JSP
taglib uri
jmx, технология
Развёртывание сервлетов
Tomcat, Undeploy problem
Как запустить программу
Настрройка Tomcat, Проблема с кодировкой
Технологии для трехзвенки?.., Что следует использовать?..
Tomcat+awt+XWindow, Tomcat без XWindow если нужен awt
Помогите народ!
ldap://localhost:389/o=JNDITutorial, ldap (?)
Подмена request-а
Запуск JSP, запуск JSp страничек из приложения
URL, URL
Servlet byte output, audio/mpeg
Expression Language
Ошибка при запуске, indexOf() и substring()
Access help
Java Server Faces, конкурент ли для aspx?
Русская дока по Portlets
Потоковые фильтры, как сделать?
EJB где можна скачать?
jsf: отображение дочерней страницы
неправильный Submit, в некоторых Explorer'ах
MDB - это просто
проблема с деплоем компонента
CMP bean & auto increment field, как быть с ejbCreate()
PortableRemoteObject, почему не cast
?? круглое окно в JAVA, возможно ли это ? (-)
JNDI: пример, File System
J2EE без IDE?
Сессия, Событие на окончание сессии
как запустить один сервлет из другого
десятичный разделитель в JDBC-ODBC
Вышла новая версия MVNForum`а - RC4_1
много мелких вопросов
передача параметра jsp-шному includ`у
Удаление атрибутов сессии
JAAS: секьюрити
как выделить число из строки
RMI-IIOP на примере
помогите с кодировкой, про сервлеты и <FORM>
работа с SelectionKey
Настройка J2EE
Внезапная проблемма с кодировкой
Как Вы относитесь к курящим девушкам?
Прежде чем задать вопрос, прочтите это!
Документация и книги по Java, Давайте соберём ссылки
JSF - ошибки при повторных нажатиях кнопки, что - получается технология не живая?
MultipartRequest, как обслужить?
paintComponent, помогите разобратся
Как отлаживать сервлеты
Submit формы, с открытием другой страницы
File upload, Закачка файла на сервер
при обработке кнопки с повторными нажатиями
Как записать информацию со страницы в файл?
Connection Pool
Servlets vs. JSP
подскажите в одном вопросе связанном с сервлетом
struts
Вопрос по сервлетам
Прозрачный фон программы
Tomcat, как сервис XP, проблема установки
Submit не отправляет параметры
struts actonForm

Платные хостинги     Раскрутка сайта     Книги по программированию


JNDI: пример, File System

Только здесь 1000 посетителей на Ваш сайт всего за 3 у.е.!

- Что такое JNDI - на примере File System1. JNDI расшифровывается как Java Naming and Directory Interface. Почему интерфейс? По той же причине, по которой и JDBC является интерфейсом - JNDI сам по себе работать не будет, ему нужна конкретная имплементация какого-либо сервиса каким-либо провайдером.2. Что такое Java Naming and Directory Interface? Примером является DNS. Грубо говоря, это система, которая держит каталог пар "имя-сервис". Таким образом, клиенту не приходится набирать в строку броузера ИП или его репрезентацию в десятичной форме, клиент набрает имя. DNS сопоставляет имени ИП. Т.е. суть сервиса - хранить пары "имя-объект".3. Рассмотрим на примере File System Service. Это очень простой сервис, который сопоставляет имени (например, "myfolder\myfile.txt") файл. 4. Начнем с инсталляции сервиса. Для этого нужно зайти на http://java.sun.com/products/jndi/downloads/index.htmlи выбрать Download JNDI 1.2.1 & More. Затем тянем File System Service Provider, 1.2 Beta 3 (fscontext-1_2-beta3.zip, 97.58 KB) .Разархивируем и добавляем оба jara из папки lib в CLASSPATH. Они нужны для запуска программы, не для компиляции. 5. Теперь создадим папку для проекта. У себя я создал C:\projects\jndi. Нам нужна такжа папка, являющаяся корнем сервиса, создаем C:\projects\jndi\jndi_root\. Помещаем в нее любой файл, скажем, foo.txt.6. В C:\projects\jndi\ создаем файл jndi.properties со свойствами, необходимыми сервису. Это 2 свойства:Код java.naming.factory.initial=com.sun.jndi.fscontext.RefFSContextFactoryjava.naming.provider.url=file:///c:/projects/jndi/jndi_roothighlightSyntax('javaZTIzOW','java');7. Пишем код. Код import javax.naming.*;import java.io.*;import java.sql.*;import java.util.*;public class JndiTest{    public static void main(String[] args) throws Exception    {        if (args.length != 1)        {            printInfo();                System.exit(0);        }        String file = args[0];        JndiTest test = new JndiTest();        test.run(file);    }        private static void printInfo()    {        System.out.println("\nUsage: java JndiTest <filename>\n");    }        public void run(String name) throws Exception    {        Context ctx = new InitialContext();        try        {            File file = (File)ctx.lookup(name);            System.out.println("File name: " + name);            System.out.println("File size: " + file.length() + " bytes");            System.out.println("Last modified: " + new Timestamp(file.lastModified()));        }        finally        {            ctx.close();            }    }}highlightSyntax('javaYxMjcx','java');При создании контекста свойства считываются из jndi.properties. Их можно было бы добавить программно:Код Hashtable h = new Hashtable();h.put(Context.INITIAL_CONTEXT_FACTORY, "blahblahblah");h.put(Context.PROVIDER_URL, "blahblahblah");Context ctx = new InitialContext(h);highlightSyntax('javaxYzBiN','java');Понятно, что этот метод менее гибок.8. Запускаем: java JndiTest foo.txt.9. Это очень простой пример. По сути, мы ничего особенного не сделали, того же результата можно было бы достичь гораздо проще. Зато мы "пощупали" JNDI. JNDI широко используется в RMI-IIOP и EJB, так что 10 минут потрачены с пользой.

- 5. Теперь создадим папку для проекта. У себя я создал C:\projects\jndi. Нам нужна такжа папка, являющаяся корнем сервиса, создаем C:\projects\jndi\jndi_root\. Помещаем в нее любой файл, скажем, foo.txt.6. В C:\projects\jndi\ создаем файл jndi.properties со свойствами, необходимыми сервису. Это 2 свойства:Код Java 1:2: java.naming.factory.initial=com.sun.jndi.fscontext.RefFSContextFactoryjava.naming.provider.url=file:///c:/projects/jndi/jndi_root --------------------сорри.. я чего-то не пойму.. а где ты указываешь, что тебя интересует папка "С:\projects\jndi\" ?быстро закинул твой файл в eclipse и он мне естественно кидает исключениеException in thread "main" javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)как мне ему сказать, что его интересует именно "jndi.properties" ?

- JVM ищет файл на CLASSPATH'e, вот и все

- во.. млин... конец рабочего дня получилось УРЯ!домой....пасиба >=)

- хотя..еще есть вопрос..Код import javax.naming.*;import javax.naming.directory.*;import java.util.Hashtable;/**  * Demonstrates how to use a name parser and compound name to  * avoid dealing with JNDI composite name syntax.  *  * usage: java CompoundWrap  */class CompoundWrap {    public static void main(String[] args) {         // Set up environment for creating initial context    Hashtable env = new Hashtable(11);    env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");    env.put(Context.PROVIDER_URL, "ldap://localhost:389/o=JNDITutorial");    //    env.put(Context.PROVIDER_URL, "http://localhost:8080");    try {        // Create the initial context        DirContext ctx = new InitialDirContext(env);        // Get the parser for this namespace        NameParser ldapParser = ctx.getNameParser("");        String dn = "cn=backslash\\\\a";        // Parse name        Name compound = ldapParser.parse(dn);        // List components in name        for (int i = 0; i < compound.size(); i++) {        System.out.println(compound.get(i));        }        // Add to directory        ctx.rebind(compound, "Hello");        // Look for it in the directory        System.out.println(ctx.lookup(compound));        System.out.println(ctx.getAttributes(compound));        // Clean up        ctx.unbind(compound);        // Close ctx when done        ctx.close();    } catch (NamingException e) {        System.out.println(e);    }    }}highlightSyntax('javaZTlmND','java');ты не встречался с таким?есть ли ldap на виндовс?

- С LDAP не работал, но Апи одно нa всех.На винду надо его ставить, например, отсюдаhttp://www.openldap.org/

- доброе утро продолжаю изучать дальше..у мя вопрос такой.. ню получил я ссылку на объект:Код             Context initialContext = new InitialContext();            //Context initialContext = new InitialContext(props);                            Object obj = initialContext.lookup(name);highlightSyntax('javawNDgwY','java');что я могу сделать терь с этим "объектом"? или смысл всего - это лишь получить привязку на "объект" и куда-нибудь потом передать?! если передать, то куда именно (можеш пример привести?) пасиба за помощь

- Дa все что хочешь можо делать. Посмотри например код клиента в топике http://forum.vingrad.ru/index.php?showtopic=46374

Интернет казино     Онлайн игры     Увеличение члена     Купить DVD


Главная страница | программирование 1с предприятие | язык программирования pascal | виды программирования | программирование процессоров | язык программирования 1с | программирование assembler | методология программирования | прикладное программирование | программирование turbo pascal | парадигмы программирования | удаленная программирование | программирование управления | справочник программирования | задачи математическому программированию | методики программирования | программирование outlook | компьютерное программирование | программирование деревья | высокоуровневое программирование | программирование delphi скачать | программирование сигнализации | теория языков программирования | программирование микропроцессоров | обоснование языка программирования | программирование win32 | Ссылки

Все про программирование управления