Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Получить датасорс, tomcat 6, jndi, dataSource, spring 2.5 
V
    Опции темы
goodday1941
Дата 2.3.2009, 15:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 709
Регистрация: 16.7.2006
Где: Украина, Киев

Репутация: нет
Всего: 9



Тема данная уже поднималась, но ответа в ней так и не прозвучало

и так по порядку.. использую последнюю версию томката и спринга, в /lib томкату положил последнюю версию драйвера

в спринге для получения датасорса прописал следующее:

Код

    <bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
        <property name="jndiName" value="java:/comp/env/jdbc/test"/>
    </bean>


в веб.хмл следующее:

Код

            <Host name="test"  appBase="webapps/test" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
                <Context path="" docBase="" debug="5" reloadable="true" crossContext="true">
                    <Resource name="jdbc/test" 
auth="Container" 
type="javax.sql.DataSource" 
username="postgres" 
password="pass" 
driverClassName="org.postgresql.Driver" 
url="jdbc:postgresql://localhost/test?charSet=utf-8" 
maxActive="100" 
maxIdle="50"/>
        <Connector port="80" maxHttpHeaderSize="8192" 
maxProcessors="150" maxThreads="150" 
minSpareThreads="25" maxSpareThreads="75" 
enableLookups="false" redirectPort="8443" 
acceptCount="150" connectionTimeout="20000" 
disableUploadTimeout="true" />
                </Context>        
            </Host>


все.. при подключении получаю стандартную ошибку что jndi не нашел ресурса... куда копать? )

Это сообщение отредактировал(а) goodday1941 - 2.3.2009, 16:12


--------------------
SCJP 6
PM MAIL ICQ Skype GTalk   Вверх
Samotnik
Дата 2.3.2009, 16:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 7192
Регистрация: 4.11.2006
Где: Минск City

Репутация: 5
Всего: 191



оно ?

Добавлено @ 16:10
вообще вот так можно получить
Код

 private Connection getConnection() throws NamingException{   
          
       Connection pool;   
       Context env;   
          
       env = (Context) new InitialContext().lookup("java:comp/env");   
       Datasource pool = (Datasource)env.lookup("jdbc/YourDB");   
       Connection conn = pool.getConnection(); 
       return conn;   
    } 


Это сообщение отредактировал(а) Samotnik - 2.3.2009, 16:10
PM MAIL   Вверх
goodday1941
Дата 2.3.2009, 16:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 709
Регистрация: 16.7.2006
Где: Украина, Киев

Репутация: нет
Всего: 9



нет... это читал уже только для версии 6 ), все вроде как делаю как они предлагают.. но не помогает

Добавлено @ 16:14
Цитата(Samotnik @  2.3.2009,  16:08 Найти цитируемый пост)
вообще вот так можно получить


да эт я прекрасно понимаю.. тут проблема в другом...

то есть оно пытается получить, а получать нечего... ) то есть ресурс не был создан

Это сообщение отредактировал(а) goodday1941 - 2.3.2009, 16:16


--------------------
SCJP 6
PM MAIL ICQ Skype GTalk   Вверх
goodday1941
Дата 2.3.2009, 19:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 709
Регистрация: 16.7.2006
Где: Украина, Киев

Репутация: нет
Всего: 9



и так проблема на первый взгляд решена... файл persistance.xml лежал в неправильном месте... вот так вот бывает )

положив файл по пути  WEB-INF/classes/META-INF/persistance.xml эта ошибка не валится больше (валятся другие, но это уже совсем другая история  smile )


поспешил ) под конец все равно валит ту же ошибку

Это сообщение отредактировал(а) goodday1941 - 2.3.2009, 19:48


--------------------
SCJP 6
PM MAIL ICQ Skype GTalk   Вверх
tux
Дата 3.3.2009, 10:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Летатель
***


Профиль
Группа: Участник Клуба
Сообщений: 1853
Регистрация: 10.2.2005
Где: msk.ru

Репутация: 74
Всего: 132



В web.xml линка есть? 
Код

<resource-ref id="ResourceRef_test">
    <res-ref-name>jdbc/test</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
</resource-ref>

PM MAIL Skype GTalk Jabber YIM   Вверх
goodday1941
Дата 3.3.2009, 11:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 709
Регистрация: 16.7.2006
Где: Украина, Киев

Репутация: нет
Всего: 9



я почему то думал что можно обойтись без него, ведь у меня есть
Код


 <bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
        <property name="jndiName" value="java:/comp/env/jdbc/test"/>
    </bean>



--------------------
SCJP 6
PM MAIL ICQ Skype GTalk   Вверх
tux
Дата 3.3.2009, 11:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Летатель
***


Профиль
Группа: Участник Клуба
Сообщений: 1853
Регистрация: 10.2.2005
Где: msk.ru

Репутация: 74
Всего: 132



Пространство имен "java:/comp/env/" может указывать только на ссылку в web.xml. http://forum.vingrad.ru/forum/topic-83074/...ry642577/0.html
PM MAIL Skype GTalk Jabber YIM   Вверх
goodday1941
Дата 3.3.2009, 12:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 709
Регистрация: 16.7.2006
Где: Украина, Киев

Репутация: нет
Всего: 9



мда протупил я... всем спасибо за помощь  smile, закрываем тему


--------------------
SCJP 6
PM MAIL ICQ Skype GTalk   Вверх
am_sasa
Дата 3.3.2009, 12:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 19.12.2006

Репутация: нет
Всего: нет



А почему в спринге не создавать соединение, зачем в томкат его тащить?
PM MAIL   Вверх
goodday1941
Дата 3.3.2009, 12:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 709
Регистрация: 16.7.2006
Где: Украина, Киев

Репутация: нет
Всего: 9



Цитата(am_sasa @  3.3.2009,  12:09 Найти цитируемый пост)
А почему в спринге не создавать соединение, зачем в томкат его тащить? 

томкат создает пул конекшенов который значительно эффективнее работает чем закрытие/открытие конекшена при доступе к БД

Это сообщение отредактировал(а) goodday1941 - 3.3.2009, 12:29


--------------------
SCJP 6
PM MAIL ICQ Skype GTalk   Вверх
am_sasa
Дата 4.3.2009, 12:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 19.12.2006

Репутация: нет
Всего: нет



Цитата(goodday1941 @ 3.3.2009,  12:26)
томкат создает пул конекшенов который значительно эффективнее работает чем закрытие/открытие конекшена при доступе к БД

Открой для себя пул вне томката!
Код

<bean id="dataSource" class="org.apache.tomcat.dbcp.dbcp.BasicDataSource" destroy-method="close">
    <property name="driverClassName">
                <value>net.sourceforge.jtds.jdbc.Driver</value>
    </property>
            <property name="url">
                <value>jdbc:jtds:sqlserver://DBServer/SUDO</value>
            </property>
            <property name="username">
                <value>sa</value>
            </property>
            <property name="password">
                <value>sa</value>
            </property>
</bean>

PM MAIL   Вверх
goodday1941
Дата 4.3.2009, 16:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 709
Регистрация: 16.7.2006
Где: Украина, Киев

Репутация: нет
Всего: 9



Цитата(am_sasa @  4.3.2009,  12:11 Найти цитируемый пост)
Открой для себя пул вне томката!

ну эт понятно все... но мне вариант с томактом больше нравится... даже не знаю почему ) поизящнее он просто наверное

Добавлено через 3 минуты и 20 секунд
хотя .. хотелось бы узнать мнение экспертов что лучше...


--------------------
SCJP 6
PM MAIL ICQ Skype GTalk   Вверх
tux
Дата 4.3.2009, 17:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Летатель
***


Профиль
Группа: Участник Клуба
Сообщений: 1853
Регистрация: 10.2.2005
Где: msk.ru

Репутация: 74
Всего: 132



Навскидку три достоинства пула соединений, определенного внутри Томката:
  • не нужно тащить себе в приложение библиотеку пула соединений
  • источник данных можно расшарить с другими приложения, использовать общий пул соединений поэффективнее будет
  • источник данных можно поменять просто изменив линку в web.xml
Пример am_sasa мне не нравится уже потому, что развернуть приложение на другой веб-контейнер не получится - он жестко привязан к Томкату.
PM MAIL Skype GTalk Jabber YIM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.1321 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.