powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / подружить tomcat и hibernate
160 сообщений из 160, показаны все 7 страниц
подружить tomcat и hibernate
    #37855398
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
собственно вопрос то в следующем:
создал значит пул соединений к БД (прописал в /META-INF/context.txt)
пул работает все прекрасно, в ручную все хорошо пускает все пашет selectы идут,
но вот подружить его с Hibernate ну никак не получается

собственно как делаю:
создаю пул так
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
<Context antiJARLocking="true" path="/homeWork" >
    <Resource name="jdbc/Sybase" auth="Container" type="javax.sql.DataSource"
        removeAbandoned="true" 
        removeAbandonedTimeout="60"
        maxActive="20" 
        maxIdle="10"
        minIdle="0"
        maxWait="10000"
        username="sa" 
        password="qwerty"
        driverClassName="com.sybase.jdbc3.jdbc.SybDriver"
        url="jdbc:sybase:Tds:localhost:5000/myTestDb"
        testOnBoeeow="true"
        validationQuery="SELECT 1"
        timeBetweenEvictionRunsMillis="20000"
        minEvictableIdleTimeMillis="30000"
        testWhileIdle="true"
    />
</Context> 



в Spring овом контейнере делаю бин и настройку так:
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
    <bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
        <property name="jndiName" value="java:comp/env/jdbc/Sybase"/>
        <property name="proxyInterface" value="javax.sql.DataSource"/>
         <property name="resourceRef" value="true" />             
    </bean>    
    
    <bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
        <property name="dataSource" ref="dataSource" />
        <property name="configLocation" value="classpath:hibernate.cfg.xml" />
        <property name="hibernateProperties">
            <props>
                <prop key="hibernate.show_sql">true</prop>
                <prop key="hibernate.dialect">org.hibernate.dialect.Sybase11Dialect</prop>
            </props>
        </property>
    </bean>


в самом hibernate.cfg.xml
прописал 2 класса (там простые сущность для теста id и name вытаскиваю по load(className.class, 1) )
при попытке что-то получить попадает NullPointerException
в логе на уровне INFO тишь да гладь
на уровне DEBUG жуть ( если надо то выложу )

смотрю в логе когда идет попытка получить что-то из БД нету SQL запроса т.е. sessionFactory видать не создался
куда хоть рыть?

в логе есть пара таких вот строк:
Not binding SessionFactory to JNDI, no JNDI name configured
Instantiated session factory
но я так понимаю что Session factory == null ....

может я как-то криво настроил Hibernate ? (версия 4.1.4.Final ) или в Spring ? (version 3.1.1)
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37855530
ТимоН
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338,

Посмотрите в jmx tomcat'a какие пулы он создал(создал ли) и их jndi.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37855533
ТимоН
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, а Sybase драйвер вы положили в lib?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37855578
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТимоН,

обижаете уважаемый =)
конечно положил и на счет JNDI я ж написал что мимо томката через java/env/jdbc/Sybase ходит => получается что все созданно
да и Spring про отсутствие Jndi молчать не будет....
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37855596
Лагман
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338,
а так
Код: java
1.
<property name="jndiName" value="jdbc/Sybase"/>
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37855663
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лагман,

а так долго и громко ругается что нету JNDI
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37855971
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а так?
Код: xml
1.
<jee:jndi-lookup id="dataSource" jndi-name="jdbc/Sybase"/>
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856110
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chpasha,

таже беда
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856112
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лагман,

кстати так он не сругался, я оказывается уже закоментил его в context =)
но ошибку выдает

и опятьже повторюсь, дело не в JNDI !! либо где-то глубоко в нем

сам он РАБОТАЕТ, не работает Hibernate.... с ним необходимо бороться! с ним =)

потому как мимо JNDI ходит отлично к БД но я хочу юзать именно DBCP (конечно можно настроить и c3p0, но блин зачем козе баян)
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856122
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
может быть конечно тут ошибка???? ????
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
    
    @Autowired
    private SessionFactory sessionFactory;
    
    
    @Override
    public User getTerminalBySerialNumber(String serialNumber){
        
        return (User) sessionFactory.getCurrentSession()
                .load(Terminal.class, 2);
         
        
    }
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856195
Фотография grasoff.net
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338может быть конечно тут ошибка???? ????
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
    
    @Autowired
    private SessionFactory sessionFactory;
    
    
    @Override
    public User getTerminalBySerialNumber(String serialNumber){
        
        return (User) sessionFactory.getCurrentSession()
                .load(Terminal.class, 2);
         
        
    }

а весь класс целиком?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856203
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
grasoff.net,

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
package ru.home.homeWork.dao.impl;

import java.util.List;
import org.hibernate.SessionFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
import ru.home.homeWork.dao.UserDAO;
import ru.home.homeWork.domain.User;


@Repository(value="UserDAO")
public class UserDaoImpl implements UserDAO {
    
    protected final Logger logger = LoggerFactory.getLogger( getClass() );

    @Autowired
    private SessionFactory sessionFactory;
    
    @Override
    public User getTerminalBySerialNumber(String serialNumber){
        
        return (User) sessionFactory.getCurrentSession()
                .load(Terminal.class, 2);
         
    }
    
}
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856209
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
grasoff.net,

а это spring-context.xml все кроме описания beans а то там много всего =)

Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
    <!-- Включаем опцию использования конфигурационных аннотаций (@Annotation-based configuration)-->
    <context:annotation-config />
        
    <!-- Определяем папки, в которых будем автоматически искать бины-компоненты (@Component, @Service)  -->
    <context:component-scan base-package="ru.home.homeWork.dao" />
    <context:component-scan base-package="ru.home.homeWork.dao.impl" />
    
    <!-- Настраивает управление транзакциями с помощью аннотации @Transactional -->
    <tx:annotation-driven transaction-manager="transactionManager" />
    
    <!-- Менеджер транзакций -->
    <bean id="transactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager">
        <property name="sessionFactory" ref="sessionFactory" />
    </bean>
    
    <!-- ну чтож будем пытаться подружить Spring и JNDI Connection Pool -->
    <jee:jndi-lookup id="dataSource" jndi-name="jdbc/Sybase"/>
    
    
    <!-- чтож попробую еще разок приручить страшный Hibernate -->
    <bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
        <property name="dataSource" ref="dS" />
        <property name="configLocation" value="classpath:hibernate.cfg.xml" />
        <!--<property name="con" value="org.hibernate.cfg.AnnotationConfiguration" /> -->
        <property name="hibernateProperties">
            <props>
                <prop key="hibernate.show_sql">true</prop>
                <prop key="hibernate.dialect">org.hibernate.dialect.Sybase11Dialect</prop>
                <prop key="hibernate.cache.provider_class">org.hibernate.cache.NoCacheProvider</prop>
                <prop key="hibernate.current_session_context_class">thread</prop>
            </props>
        </property>
    </bean>
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856226
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в спирнге немного ошибся там вместо
<property name="dataSource" ref="dS" />
<property name="dataSource" ref="dataSource" />
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856344
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
попробовал изолировать проблему, а точнее убрал Spring из проекта (благо тока учебный проект 3 строки =) )
прописал конфиг hibernate (правдо подключение создавал не пулом) и Hibernate заработал, вернул запись и все такое

т.е. что-то в конфиге Spring не пашет, вопрос почему? и где косяк, ведь все создается без ошибок но sessionFactory пуст...
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856429
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В web.xml прописали DataSource?

Код: xml
1.
2.
3.
4.
5.
6.
7.
 
<resource-ref>
        <description>Local DataSource</description>
        <res-ref-name>jdbc/Sybase</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
</resource-ref>
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856441
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

да прописан

Код: xml
1.
2.
3.
4.
5.
6.
     <resource-ref>
        <description>Connection Pool</description>
        <res-ref-name>jdbc/Sybase</res-ref-name>
        <res-type>javax.sql.Datasource</res-type>
        <res-auth>Container</res-auth>
    </resource-ref>
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856493
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Почитайте в логе как создаётся UserDAO. Там должно быть написано почему sessionFactory не заинжектилась. Давайте, в общем, лог посмотрим.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856563
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

собственно выкладываю лог, там ошибок нету..... (уровень лога установлен Debug )
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856586
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всё нормально, вроде. Где происходит NPE? В дебаге смотрели что там sessionFactory null? Как и куда инжектили сам UserDAO?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856619
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

да в дебаге смотрю,
NPE происходит когда я в фильтре вызываю такой вот код:
Код: java
1.
   User u = new UserDaoImpl().getTerminalBySerialNumber('uname');



собственно тут и происходит NPE... что делать тут я не пойму =)
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856634
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

слово инжектили я не понял =)
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856637
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LOL
Я, конечно, подозревал что дело в этом. Но не думал что это окажется правдой.
Когда вы создаёте новый экземпляр UserDaoImpl, спринг о нём ничего не знает и инжектить туда ничего не собирается.
Вам нужно UserDAO получить из спрингового котекста. В идеале, чтобы Spring сам заинжектил его куда нужно.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856641
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338слово инжектили я не понял =)
Ну, тогда отложите в стороку код, который вы где-то накопали. И гуглите статьи на тему что такое Dependency Injection вообще и зачем он нужен.
Вы у себя в фильтре начинаете управлять жизненым циклом UserDAO, это именно то с чем борется DI.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856665
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

все понял =)

я тут просто проекти этот писал изначально без спринга ваще.... (ну не знал я как его туда применить) и работал напрямую с Hibernate (удобная штука ваще много от много мороки избавляет), а теперь переделываю на RESTFull сервис (ну или точнее на его подобие) вот и подумал про Spring MVC, а если есть Spring MVC то без IoC скучно будет

т.е. я сделал слои DAO, Domain а вот слой Service как бЭ позабыл =) вот и вышла ошибочка....

а так вообще спасибо
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856727
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
жесть жестяная
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856735
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chpasha,

логично однако =)
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856757
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338,

эм а сейчас там мною любимая OutOfMemory когда пытается создать sessionFactory...
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856773
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PermGen Space ?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856786
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

ага
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856800
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338ага
1) -XX:MaxPermSize
2) Будать контейнер переодически вмето ре-деплоя на горячую.
3) Ну, и, совсем хардкор - найти чем ваше приложение приросло к томкату. В Tomcat 7 есть интсрументы и всяческие проверки, которые пишут, что именно в приложении утекло за пределы WebAppClassLoader и, соответственно, мешает выгрузить само приложение.

Если утечек нет, а просто проект толстый, то увеличение MaxPermSize поможет.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856810
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

спасибо ребут томката помог =)
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856817
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

а еще тогда вопрос на засыпку, как из фильтра обратиться к IoC контейнеру и получить какой-нить бин?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856837
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
многие любят получить ApplicationContext а из него бин по id. Но это будет подменой DI на Lookup.
Можно вот так
http://semikas.blogspot.com/2009/02/standard-injection-into-servletfilter.html
А можно вместо фильтров интерцепторы всякие спринговые использовать.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856857
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

интерцептор? что это? ???
какого... почему так всего то там много, хочу обратно перейти к asm =)

блин все что я читал ни про какие интерцепторы ниче не говорили....
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856868
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856915
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

раз уж зашла такая пляска, и тут явно опытный человек =)
надо кое о чем поспрашать:

1) как через Spring работать с JSON и XML
2) ежели я хочу сделать фильтр для авторизации и в зависимости от запроса разрешать/запретить действия то как из него правильней будет обращаться к Spring IoC (или как правильней это сделать, возможно SpringSecurity или что-то еще)

собственно пока что все...
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37856936
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
323381) как через Spring работать с JSON и XML

Spring MVC? Просто соответствующий View указываете. Гугл-> Spring MVC Json выдаст вам кучу примеров.

323382) ежели я хочу сделать фильтр для авторизации и в зависимости от запроса разрешать/запретить действия то как из него правильней будет обращаться к Spring IoC (или как правильней это сделать, возможно SpringSecurity или что-то еще)

Spring Security
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37857066
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

а где взять НОРМАЛЬНУЮ понятную (желательно по человечески) написанную доку на русском про Spring IoC а то все равно нифига не работает через него и теперь в голове большая каша =(
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37857077
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338на русском
Избавьтесь от предрассудков и читайте официальную доку. Она простая, понятная и рассматривает все вопросы, причем не углубляясь в детали.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37857096
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

хорошо попробую, но каша в голове все еще есть...

и вопрос у меня такой вот возник.

а можно ли сделать так:

Код: java
1.
2.
@RequestMapping(value = "/{name}", method =  RequestMethod.GET)
public @ResponseBody object getBook(@PathVariable String name, Model model)



т.е. в зависимости от имени вызывать какой-нить класс обработчик который будет возврящять то что он умеет?
или придется писать для каждого класса свой контроллер?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37857104
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338т.е. в зависимости от имени вызывать какой-нить класс обработчик который будет возврящять то что он умеет?
или придется писать для каждого класса свой контроллер?
Можно. Стоит попробовать реализовать Generic method в этом случае.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37857117
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

а если я заранее вообще не знаю что мне будет возвращяться в принципе?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37857124
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338а если я заранее вообще не знаю что мне будет возвращяться в принципе?
Метод getBook "возвращ я ет" не известно что? Ну, можно, конечно, и так, если острая нужда имеется.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37857146
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

вы меня не совсем поняли,
я хочу сделать примерно так:
что бы каждый раз не переписывать контроллер, я хочу его написать один раз, а классы которые будут что-то возвращять из него вызывать (по имени к примеру через Class.forName(имя класса) и т.д.)

т.е. у меня задача типа книжный магазин RestFull
тут я могу получать данные по клиенту
т.е. /client
по книге
т.е. /book
по продавцам
т.е. /manager

каждый из ответов в виде XML или JSON в зависимости что попросил клиент

=> сейчас я знаю какие типы я могу вернуть, но так же мне хочется расширять и далее без переписи контроллеров, банально создав всю нижнею инфраструктуру не добавляя контроллеров, это как-то можно реализовать? или надо писать для каждой сущность свой отдельный контроллер (или расширять уже имеющийся)?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37857155
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В этом случае у вас результатом будет что-то типа Entity или DTO. Т.е. имеет смысл ограничить на всякий случай. А так да. Взяли сессию, сделали find - и вернули.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37859646
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

я тут это все доделал, только вот одна загвоздка, при старте не стартует сессия Hibernate и если вызывать getCurrentSession() попадаем на NPE а если делать openSession() то естественно растут подключения к БД с каждым запросом, как этого избежать?
может что в конфиге криво?

Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
<!-- Настраивает управление транзакциями с помощью аннотации @Transactional -->
    <tx:annotation-driven transaction-manager="transactionManager" />
    
    <!-- Менеджер транзакций -->
    <bean id="transactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager">
        <property name="sessionFactory" ref="sessionFactory" />
    </bean>
    
    <!-- ну чтож будем пытаться подружить Spring и JNDI Connection Pool -->
    <bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
        <property name="jndiName" value="jdbc/Sybase"/>
        <property name="proxyInterface" value="javax.sql.DataSource"/>
        <property name="resourceRef" value="true" />             
    </bean>  
        
    <!-- чтож попробую еще разок приручить страшный Hibernate сприн автоматом не отдает сессии -->
    <bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
        <property name="dataSource" ref="dataSource" />
        <property name="configLocation" value="classpath:hibernate.cfg.xml" />
        <property name="hibernateProperties">
            <props>
                <prop key="hibernate.show_sql">true</prop>
                <prop key="hibernate.dialect">org.hibernate.dialect.Sybase11Dialect</prop>
            </props>
        </property>
    </bean>
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37859797
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

и еще один вопрос к вам как к великому,

@RequestMapping(value="/client", method= RequestMethod.GET)
public @ResponseBody String getPayer(@RequestParam String args){
return args;
}

я просто хочу вернуть строку, когда на инглише то все ОК, но вместо русских выдает ????
что я делаю не так?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37860255
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
блин и что никто не может мне подсказать почему
метод sessionFactory.getCurrentSession() - возвращает пустую сессию?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37860299
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338блин и что никто не может мне подсказать почему
метод sessionFactory.getCurrentSession() - возвращает пустую сессию?
мы уже просто боимся делать предположения, потому что у тебя с таким успехом может быть все что угодно. ты уже debug освоил? подключаются сорцы спринга и вперед - смотришь что и почему. кстати я бы не трогал hibernate4, поддержка его в спринге была стремная, когда я в последний раз смотрел, я это было недавно.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37860372
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chpasha,

соглашусь может быть все что угодно =)

т.е. вы предлагаете перейти на hibernate 3 ?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37860393
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338т.е. вы предлагаете перейти на hibernate 3 ?
это совет между прочим, безотносительно к проблеме.

основная идея - воспользоваться дебагом и посмотреть, почему getCurrentSession возвращает null. я боюсь делать предположения, но одно сделаю: метод в котором вызывается getCurrentSession имеет аннотацию Transactional?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37860413
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chpasha,

имеет
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37860428
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chpasha,

чуть не забыл пишет вот что:
ERROR - could not initialize proxy - no Session
org.hibernate.LazyInitializationException: could not initialize proxy - no Session
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37860437
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338чуть не забыл пишет вот что:
ERROR - could not initialize proxy - no Session
org.hibernate.LazyInitializationException: could not initialize proxy - no Session
ты жжешь напалмом. это совсем другая ошибка. у тебя в классе есть lazy поле, к которому ты обращаешься, когда сессия уже закрыта.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37860449
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chpasha,

это появилось когда я пересобрал проект с 0.... хз что там было =)
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37860465
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chpasha,

все связи у меня определены FetchType.EAGER
какое нафиг LAZY поле.... ???
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37860475
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338chpasha,
какое нафиг LAZY поле.... ???
такое нафиг. IDE твой друг, так сложно найти место, на котором ошибка возникает?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37860489
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
непонятно где и что искать
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37860507
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338непонятно где и что искать
stacktrace смотреть. откуда вылетает? может там коллекция ленивая?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37860520
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338я тут это все доделал, только вот одна загвоздка, при старте не стартует сессия Hibernate и если вызывать getCurrentSession() попадаем на NPE а если делать openSession() то естественно растут подключения к БД с каждым запросом, как этого избежать?
может что в конфиге криво?

Странно. А через HibernateTemplate? Хотя вроде в последнем Spring как раз пошли на уступки Кингу и отказались от использования HibernateTemplate.
Посмотрите тут
http://forum.springsource.org/archive/index.php/t-66873.html
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37862966
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всех хочу поблагодарить что наставили на путь истинный и послали читать доки =)

собственно начал потихоньку въезжать. в эту святую троицу Spring MVC + Hibernate + Tomcat DBCP =)
заработали простые примеры некоторые (хотя некоторые аннотации и до сих пор остаются для меня загадкой =) я уже многое почерпнул =)

но вот в поисках истинны наткнулся на очень интересную статью про слой DAO:
про то как не следует повторять DAO

мне очень понравился подход с CRUD (пример в статье, я думаю он будет не нов для всех здешних обитателей)

но вот как его прикрутить с аннотациями пока не понимаю, может кто подскажет?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37862976
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338но вот как его прикрутить с аннотациями пока не понимаю, может кто подскажет?
Аннотации это метаданные. Они перпендекулярны самим классам. Не понятно как эти DAO инжектить, или что?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37863005
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

непонятно как вот его потом такой вот вызывать:
GenericDaoHibernateImpl<T, PK extends Serializable> implements GenericDao<T, PK>, FinderExecutor

т.е. на сколько я понял мне его надо вызвать типа
GenericDaoHibernate<Person, Integer> person = GenericDaoHibernate<Person, Integer>();

дк вот это же не хочется писать руками, для этого и нужен Spring
вот как это описать не в XML (это понятно из статейки) а в аннотациях?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37863026
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Во-первых, в большинстве случаев, некий специфический код нужен каждой сущности, поэтому будет много классов вида
PersonDAO extends GenericDaoHibernateImpl<Person, Long>
Во-вторых генерики в Java работаеют во время компиляции. Поэтому если написать
private GenericDaoHibernateImpl<Person, Long> personDao;
то Spring без проблем туда заинжектит то что нужно - <bean id="personDao" parent="abstractDao">
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37863037
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

ага спасибо, так стало яснее =)
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37863042
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

эх блин как же все круто оказывается в Java когда начинаешь понимать =) это те не легаси проект на Delphi 3 написанный так что
хрен чего найдешь без пол литра ( а то и целый литр минимум )

СПАСИБО!
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37865924
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
наверное вопрос покажется весьма банальным, но

есть у меня класс сущность

что-то типа этого

Код: java
1.
2.
3.
4.
5.
6.
7.
public class User implements Serializable{
   private String name;
   private String password;
   private Integer groupId;

//делее геттеры сеттеры 
}



дк вот на основании этого класса я генерирую XML и JSON через Spring MVC (блин круть какая, работает без единой строчки кода, чисто аннотации)
дк вот когда я не хочу что бы какое-нить поле попадало в JSON я ставлю аннотацию @JsonIgnore, а есть ли что-то такое же для XML?
использую JAXB в дока ничего не нашел подобного =(
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37865935
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338использую JAXB в дока ничего не нашел подобного =(
JAXB ведь маппит свойства на XML через аннотации. Нет маппинга, нет XML. Вопрос не понятен. Точно именно JAXB используется? И как именно?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37865961
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

ну как сказать, на прямую я вообще ничего не трогаю, для этого есть Spring
а так стоят аннотации от JAXB
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37865970
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338а так стоят аннотации от JAXB
Убрать лишние рука не подымается?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37865987
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

дк по дефолту все не Null поля записываются в XML а мне бы не хотелось отдавать некоторые "сервисные" поля конечному пользователю, а с ними работаю в сервис слое, так что убрать их никак не получается...
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37866047
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338дк по дефолту все не Null поля записываются в XML а мне бы не хотелось отдавать некоторые "сервисные" поля конечному пользователю, а с ними работаю в сервис слое, так что убрать их никак не получается...
http://docs.oracle.com/javase/6/docs/api/javax/xml/bind/annotation/XmlTransient.html
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37866071
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

спасибо, просто для тех кому будет инетерсно эту аннотацию надо ставить перед МЕТОДОМ геттером, а не как я ставил перед описанием переменной (или свойством объекта, кому как нравиться)...
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37866079
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338спасибо, просто для тех кому будет инетерсно эту аннотацию надо ставить перед МЕТОДОМ геттером, а не как я ставил перед описанием переменной (или свойством объекта, кому как нравиться)...
Во-первых не перед "описанием переменной", а перед "объявлением поля". Поле это не свойство. Возможно у вас именование где-то нарушено, поэтому JAXB поле не ассоциирует со свойством.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37866105
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

блин реально перепутал,
свойство = состояние
описание переменной = объявление поля

на сколько я помню из курса ООП у объектов есть состояния (это как раз таки переменные они же поля) и методы выполняющие некоторые действия над состояниями

вроде так все всегда было, а на счет теории спасибо за поправку
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37866259
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а тут я еще добавлю, на счет куда ставить аннотации:
есть такая аннотация @XmlAccessorType по умолчанию она равна PUBLIC_MEMBER, что значит смотреть на публичные поля,
ежели ее поставить как XmlAccessType.FIELD то аннотации можно ставить над полями

блин документацию надо читать было с самого начала =)
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37866266
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338свойство = состояние

Состояния здесь вообще не при чем. Свойства это такие поля, которые обладают полиморфизимом. В Java поля не обладают полиморфизмом. А обладают полиморфизмом только методы (не помню про вложеные классы). Поэтому свойства реализованы через методы.

32338на сколько я помню из курса ООП у объектов есть состояния (это как раз таки переменные они же поля) и методы выполняющие некоторые действия над состояниями

Ммм... это излишне абстрактно и к теме отношения не имеет.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37866271
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

да тут уже давно мало что к теме относиться =)
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37866279
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338PUBLIC_MEMBER, что значит смотреть на публичные поля
MEMBER это не "поле".
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37866305
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

ну плохо у меня еще с инглишом.... =)
ну что поделаешь "я не волшебник я только учусь..."
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37866325
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

тут у меня еще один вопрос возник,
когда я делал проект на локальной машине, то через NetBeans деплоил его на локальный Томкат, сейчас
Томкат переехал на другую машину и деплой делаю через веб морду, и получается что url стал = имени war файла

хотя в context.xml
прописанно
Код: xml
1.
<Context antiJARLocking="true" path="/payoffice">...</Context>



или надо что-то другое указать?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37867499
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
блин все равно никак не пойму что делать с ошибкой
org.hibernate.LazyInitializationException: could not initialize proxy - no Session

моя сущность
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
@Entity
@Table(name="tSpace")
@XmlRootElement(name="space")
@JsonSerialize(include= JsonSerialize.Inclusion.NON_EMPTY)
@JsonIgnoreProperties({"hibernateLazyInitializer", "handler"})
@JsonAutoDetect
public class Space implements Serializable{

    @Id
    @GeneratedValue
    @Column(name="ID", nullable=false)
    private Integer id;
    
    @Column(name="Name", nullable=false, length=64)
    private String name;
    
    @Column(name="Note", nullable=true)
    private String note;
// далее геттеры сеттеры
}



в DAO

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
@Repository
public class SpaceDaoImpl implements SpaceDAO{

    @Autowired
    private SessionFactory sessionFactory;       

    @Override
    public Space read(Integer id) {
        return (Space) sessionFactory.getCurrentSession().load(Space.class, id); 
    }
}



в сервис-слое

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
@Service
public class SpaceServiceImpl implements SpaceService{

    @Autowired
    private SpaceDAO dao;

    @Override
    @Transactional
    public Space getById(Integer id) {
        return dao.read(id);
    }
}



все это вызывается из контроллера

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
@Controller
public class SpaceController {
    
    @Autowired
    private SpaceService service;
    
    @RequestMapping(method= RequestMethod.GET, value="/space")
    public @ResponseBody Space getSpace(@RequestParam(value="id") Integer id){
        return service.getById(id);
    }
    
    @ResponseStatus(HttpStatus.NOT_FOUND)
    @ExceptionHandler(org.hibernate.ObjectNotFoundException.class)
    public void notFound(){}
    
}

...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37867510
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exception где?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37867532
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

а как отследить я не пойму никак...
просто сущность пустая а значение в БД есть в логе вот эта строка и еще куча, как отследить?
точки останова ничего не дают...
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37867546
svenom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338Blazkowicz,
а как отследить я не пойму никак...
просто сущность пустая а значение в БД есть в логе вот эта строка и еще куча, как отследить?
точки останова ничего не дают...Ну вы можете остановиться у себя в коде на вызове сервиса? Остановитесь там, и пройдитесь по шагам. Наткнетесь на Lazy-exception, сразу же поймете, что к чему.
Если не можете вообще понять откуда оно идет, тогда ставьте брейкпоинт на самом эксепшне.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37867552
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
svenom,

дк как бы сказать то, все прошол никаких exeption не получил, но
к БД я не ходил с запросом (это в логе видно) и моя сущность абсолютно пустая

это если использовать метод load если использовать метод get то все ОК сущность заполняется

че делать? O_o
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37867607
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338 что делать с ошибкой org.hibernate.LazyInitializationException: could not initialize proxy - no Session

32338 все прошол никаких exeption не получил
Вы между собой договоритесь сначала есть исключнение или нет.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37867628
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

наверное, я мега крутой прогер :D

да и объясняю через раз нормально :D

наверное лучше кусочеГ лога дать, что бы стало хоть чуточку понятней

и теперь я понимаю почему get работает а load нет =) get не использует прокси....
а вот почему он не создался вопрос...


05.07.2012 15:41:30 DEBUG - DispatcherServlet with name 'dispatcher' processing GET request for [/payoffice/space]
05.07.2012 15:41:30 DEBUG - Looking up handler method for path /space
05.07.2012 15:41:30 DEBUG - Returning handler method [public ru.home.homeWork.domain.Space ru.home.homeWork.web.SpaceController.getSpace(java.lang.Integer)]
05.07.2012 15:41:30 DEBUG - Returning cached instance of singleton bean 'spaceController'
05.07.2012 15:41:30 DEBUG - Last-Modified value for [/payoffice/space] is: -1
05.07.2012 15:41:30 DEBUG - Returning cached instance of singleton bean 'transactionManager'
05.07.2012 15:41:30 DEBUG - Creating new transaction with name [ru.home.homeWork.service.impl.SpaceServiceImpl.getById]: PROPAGATION_REQUIRED,ISOLATION_DEFAULT; ''
05.07.2012 15:41:30 DEBUG - Opened session at timestamp: 13414812902
05.07.2012 15:41:30 DEBUG - Opened new Session [SessionImpl(PersistenceContext[entityKeys=[],collectionKeys=[]];ActionQueue[insertions=[] updates=[] deletions=[] collectionCreations=[] collectionRemovals=[] collectionUpdates=[] unresolvedInsertDependencies=UnresolvedEntityInsertActions[]])] for Hibernate transaction
05.07.2012 15:41:30 DEBUG - Preparing JDBC Connection of Hibernate Session [SessionImpl(PersistenceContext[entityKeys=[],collectionKeys=[]];ActionQueue[insertions=[] updates=[] deletions=[] collectionCreations=[] collectionRemovals=[] collectionUpdates=[] unresolvedInsertDependencies=UnresolvedEntityInsertActions[]])]
05.07.2012 15:41:30 DEBUG - begin
05.07.2012 15:41:30 DEBUG - Obtaining JDBC connection
05.07.2012 15:41:30 DEBUG - Obtained JDBC connection
05.07.2012 15:41:30 DEBUG - initial autocommit status: true
05.07.2012 15:41:30 DEBUG - disabling autocommit
05.07.2012 15:41:30 DEBUG - Exposing Hibernate transaction as JDBC transaction [org.hibernate.engine.jdbc.internal.proxy.ConnectionProxyHandler@16b2cba[valid=true]]
05.07.2012 15:42:38 DEBUG - Initiating transaction commit
05.07.2012 15:42:38 DEBUG - Committing Hibernate transaction on Session [SessionImpl(PersistenceContext[entityKeys=[],collectionKeys=[]];ActionQueue[insertions=[] updates=[] deletions=[] collectionCreations=[] collectionRemovals=[] collectionUpdates=[] unresolvedInsertDependencies=UnresolvedEntityInsertActions[]])]
05.07.2012 15:42:38 DEBUG - committing
05.07.2012 15:42:38 DEBUG - committed JDBC Connection
05.07.2012 15:42:38 DEBUG - re-enabling autocommit
05.07.2012 15:42:38 DEBUG - Closing Hibernate Session [SessionImpl(PersistenceContext[entityKeys=[],collectionKeys=[]];ActionQueue[insertions=[] updates=[] deletions=[] collectionCreations=[] collectionRemovals=[] collectionUpdates=[] unresolvedInsertDependencies=UnresolvedEntityInsertActions[]])] after transaction
05.07.2012 15:42:38 DEBUG - Releasing JDBC connection
05.07.2012 15:42:38 DEBUG - Released JDBC connection
05.07.2012 15:42:38 DEBUG - HHH000163: Logical connection releasing its physical connection
05.07.2012 15:42:38 DEBUG - HHH000163: Logical connection releasing its physical connection
05.07.2012 15:42:38 DEBUG - HHH000163: Logical connection releasing its physical connection
05.07.2012 15:43:08 DEBUG - Resolving exception from handler [public ru.home.homeWork.domain.Space ru.home.homeWork.web.SpaceController.getSpace(java.lang.Integer)]: org.hibernate.LazyInitializationException: could not initialize proxy - no Session
05.07.2012 15:43:08 DEBUG - Resolving exception from handler [public ru.home.homeWork.domain.Space ru.home.homeWork.web.SpaceController.getSpace(java.lang.Integer)]: org.hibernate.LazyInitializationException: could not initialize proxy - no Session
05.07.2012 15:43:08 DEBUG - Resolving exception from handler [public ru.home.homeWork.domain.Space ru.home.homeWork.web.SpaceController.getSpace(java.lang.Integer)]: org.hibernate.LazyInitializationException: could not initialize proxy - no Session
05.07.2012 15:43:08 DEBUG - Could not complete request
org.hibernate.LazyInitializationException: could not initialize proxy - no Session
at org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:149)
at org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:195)
at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:185)
at ru.home.homeWork.domain.Space_$$_javassist_0.getId(Space_$$_javassist_0.java)
at ru.home.homeWork.domain.Space$JaxbAccessorM_getId_setId_java_lang_Integer.get(MethodAccessor_Ref.java:41)
at com.sun.xml.internal.bind.v2.runtime.reflect.Accessor.getUnadapted(Accessor.java:132)
at com.sun.xml.internal.bind.v2.runtime.reflect.TransducedAccessor$CompositeTransducedAccessorImpl.hasValue(TransducedAccessor.java:236)
at com.sun.xml.internal.bind.v2.runtime.property.SingleElementLeafProperty.serializeBody(SingleElementLeafProperty.java:90)
at com.sun.xml.internal.bind.v2.runtime.ClassBeanInfoImpl.serializeBody(ClassBeanInfoImpl.java:341)
at com.sun.xml.internal.bind.v2.runtime.XMLSerializer.childAsSoleContent(XMLSerializer.java:582)
at com.sun.xml.internal.bind.v2.runtime.ClassBeanInfoImpl.serializeRoot(ClassBeanInfoImpl.java:323)
at com.sun.xml.internal.bind.v2.runtime.XMLSerializer.childAsRoot(XMLSerializer.java:483)
at com.sun.xml.internal.bind.v2.runtime.MarshallerImpl.write(MarshallerImpl.java:308)
at com.sun.xml.internal.bind.v2.runtime.MarshallerImpl.marshal(MarshallerImpl.java:236)
at org.springframework.http.converter.xml.Jaxb2RootElementHttpMessageConverter.writeToResult(Jaxb2RootElementHttpMessageConverter.java:96)
at org.springframework.http.converter.xml.AbstractXmlHttpMessageConverter.writeInternal(AbstractXmlHttpMessageConverter.java:66)
at org.springframework.http.converter.AbstractHttpMessageConverter.write(AbstractHttpMessageConverter.java:179)
at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodProcessor.writeWithMessageConverters(AbstractMessageConverterMethodProcessor.java:137)
at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodProcessor.writeWithMessageConverters(AbstractMessageConverterMethodProcessor.java:81)
at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.handleReturnValue(RequestResponseBodyMethodProcessor.java:94)
at org.springframework.web.method.support.HandlerMethodReturnValueHandlerComposite.handleReturnValue(HandlerMethodReturnValueHandlerComposite.java:74)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:110)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:617)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:578)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:80)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:923)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:987)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:579)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:307)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37867650
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Остаётся открытым вопрос нужны ли вам прокси. Выше вы написали что не нужны. Но откуда у вас тогда взялся инструментированый через javassist класс? Ведь это только в билд-скрипте прописывается.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37867672
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

я такого не писал что он мне не нужен, просто без него работает =)


авторНо откуда у вас тогда взялся инструментированый через javassist класс? Ведь это только в билд-скрипте прописывается.


меня этот вопрос тоже заинтересовал =)

для сборки проекта я использую Apache maven 3.0.4 а вообще работаю в NetBeans 7.1.2
все классы создавал ручками...
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37867686
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

и как искоренить это неистовое зло меня тоже интересует...
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37867689
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338я такого не писал что он мне не нужен, просто без него работает =)
32338все связи у меня определены FetchType.EAGER
какое нафиг LAZY поле.... ???
Если все связи EAGER, то и прокси, ведь, не нужны.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37867691
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338и как искоренить это неистовое зло меня тоже интересует...
Его нужно не искоренить, а понять.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37867709
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338меня этот вопрос тоже заинтересовал =)

для сборки проекта я использую Apache maven 3.0.4 а вообще работаю в NetBeans 7.1.2
все классы создавал ручками...
Да, что-то я провтыкал. У нас везде get используется. Поэтому прокси не возвращаются.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37867717
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

это конечно да но все ж впереджи, я только начал копаться в этом =)
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37867722
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338это конечно да но все ж впереджи, я только начал копаться в этом =)
В JavaDoc же сказано, что load() не вычитывает объекта из базы, а создаёт прокси поверх id, предполагая что такой объект есть в базе, раз уж вы его id используете.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37867733
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338,

не все пора завязывать на сегодня я уже просто нифига не понимаю.....

пишу и читаю всякую хрень

так что да простят меня БОГИ =)

пойду я куда-нить где прохладно и нету монитора с интернетом....
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37869013
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

тут я вот все таки завершил работу над одной из сцщностей своего RESTful сервера
а все таки как сделать что бы допустим в одном war файле лежало все необходимое для одной ссылки
(exp: /client), а в другом все что нужно для другой ссылки (exp: /manager) ведь в моем случае они вообще не пересекаются,
а хранить все в одном архиве, получается тяжело искать что надо, а так понятней что все что надо /manager в том архиве
да и при необходимости поменять его там что бы можно было, это ведь только через OSGi возможно?

или нет?
или же все делают пакет manager и в нем все слои и пакеты
потом еще пакет client и т.д.?

как правильней?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37869044
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если нужно разбить на war модули - смело объем, если они друг с другом не общаются.
если они друго от друга зависят, то возникает логичный вопрос, а зачем мы их разбили
если независимые модули живут на одном сервере и имеют общий код, то можно их упаковать в ear. А общие классы унести на уровень ear.

Адреса, ссылки и url теме компановки модулей перпендикулярны. Всё настраивается и реализуется под любые нужные URL.
Замена на горячую в продакшне не нужна. В девелопменте используется Hotswap, JavaRebel. Ещё сервера сами умеют на горячую код подменять без редеплоя. Но не все и не всегда.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37869060
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

эм возникает логичный вопрос, а как с этим всем разделенным должен работать спринг?
ну т.е. я использую у себя в проекте MVC что бы генерить ответ да и кучу всего делать (удобная штука короче)

сейчас я сделал все в одном war файле, как мне его разбить на части, т.е отделать сущность manager от client и все чтобы когда я собираю деплоилось к одному url /payoffice ?

я просто в этом деле впервые, а сообразить что и где почитать не пойму, подскажите пожалуйста
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37869075
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не стоит делить на модули только для того чтобы поменять URL. Это две независимые проблемы.
Модули нужны чтобы изолировать друг от друга независимый код. Т.е. если у вас каша, то со временем между модулями появляются зависимости которых вы не хотели иметь, например если модули должны быть разнесены физически.

URL настраивается кучей способов. Самый простой - обозвать модуль ROOT при деплое в Tomcat. И тогда имена контекстов не будут использовать в адресе. А остальное вы через Spring MVC контролируете.
Второй способ это тоже самое, только делается через META-INF/Context.xml внутри war. Либо такой же Context.xml в конфигах Tomcat.
Третий способ это оставить контекст как есть, но обернуть томкат в другой HTTP сервер Apache/nginx и с его помощью конверировать адреса в желаемые.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37869088
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

так я Вас понял, надо почитать про настройку context.xml, хорошо щя гляну если что спрошу =)
Спасибо
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37869101
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

да и вы правы, сейчас то уже получается каша из 10 классов, что же будет дальше....

авторесли независимые модули живут на одном сервере и имеют общий код, то можно их упаковать в ear. А общие классы унести на уровень ear.


с ear не работал, и не знаю что это такое вообще (щя погуглю), а Томкат то это дело поймет? или придется что-то посерьезней ставить?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37869109
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338с ear не работал, и не знаю что это такое вообще (щя погуглю), а Томкат то это дело поймет? или придется что-то посерьезней ставить?
Tomcat не поймет. У него для общего кода есть common и shared. Хотя что-то с ними делали в последних версиях. Уже не помню что именно.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37869128
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

погодите, ведь получается в случае с ear это тот же war архив, который у меня сейчас есть, и не получится никакой горячей замены...
т.е. "те же грабли вид с боку"

а вот хочется как раз таки уйти от этих граблей
т.е. app должно работать 24/7 и никак иначе, если отвалится один модуль, он не должен потянуть все остальные за собой....
получается что если я работаю с ear то не получится быстро без перезагрузки всего приложения локализовать и убрать проблему, что насколько я понял решается за счет OSGi сервера ? или я заблуждаюсь?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37869137
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вы 4 разных вопроса пытаетесь решить одной только упаковкой?
URL
24х7
Замена на горячую
Модульность

Это 4 разных задачи и решаются они каждая своими способами и средствами. "Замена на горячую" никак не решает проблему 24х7. Вообще.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37869169
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

блин ну да получается что так =)

блин получается что мне нужна модульность
что бы можно было добавлять модули и удалять их без редеплоя всего приложения
( это можно решить я так понимаю war но тогда дублирование кода приведет к большой такой попе, при изменении структуры данных, да и развивать все это дело будет очень трудно, я же прав? )

но часть модулей будут связанные, другая часть же практически не будут иметь связи с окружающим миром за исплючением одного рутового URL

подскажите как мне с этим всем поступить? я уже честно запутался что делать дальше....
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37869185
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

да и связь только через базу данных (соответственно через доменный слой и DAO)
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37869188
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338блин получается что мне нужна модульность
что бы можно было добавлять модули и удалять их без редеплоя всего приложения
( это можно решить я так понимаю war но тогда дублирование кода приведет к большой такой попе, при изменении структуры данных, да и развивать все это дело будет очень трудно, я же прав? )

Для начала определиться с целями. Особенно умиляет требование независимо деплоить модули, у которых общий код. У вас тогда будет цепная реакция. Нужно обновить модуль - ой, забыли обновить общий код - ой, не неработает второй модуль, потомучто обновили общий код.

К 24х7 нельзя приблизится без резервного сервера. А если есть резервные сервер, то и модули деплоить на горячую смысла нет.
В продвинутых серверах можно деплоить разные версии одного модуля. В этом случае Start\Stop занимает минимально время и переключиться на новую версию можно достаточно быстро.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37869198
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczДля начала определиться с целями. Особенно умиляет требование независимо деплоить модули, у которых общий код. У вас тогда будет цепная реакция. Нужно обновить модуль - ой, забыли обновить общий код - ой, не не работает второй модуль, потому что обновили общий код.


а я ведь даже об этом и не подумал....

про цепную реакцию так и вообще забыл =)
эх придется наверное все делать в одном war файлике.... и забыть про красивое слово OSGi
смысла бить тогда это все на разные war или же собирать в ear вообще нету...
единственное что очень сильно напрягает дк это то что все будет в каше...


а нельзя ли как-то куда-то вынести доменный слой с DAO в отдельный какой-нить модуль?
и при изменении его все подтянется красиво и само по себе

P.S.
я наверное за эту неделю Вас очень сильно достал ? =)
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37869204
Leonidv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338а нельзя ли как-то куда-то вынести доменный слой с DAO в отдельный какой-нить модуль?
и при изменении его все подтянется красиво и само по себе

Тут еще вопрос, что понимать под модулем. Лично я под этим словом понимаю отдельный maven project.

Делайте как можно проще. Это позволит вам сделать быстрый выход на рынок.

Изначально все держите в одном war-нике. Если поймете, что нужен еще один war-ник (мало ли, решите разделить админку и клиентскую часть по разным контекстам), тогда выносите нужную функциональность в общий код и создаете модуль с еще одним war-ником. Все зависимости разруливаются maven'ом, каждый war-ник в libs/ включает нужные библиотеки.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37869207
Leonidv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[quot LeonidvЕсли поймете, что нужен еще один war-ник (мало ли, решите разделить админку и клиентскую часть по разным контекстам), тогда выносите нужную функциональность в общий модуль и создаете модуль с еще одним war-ником. Все зависимости разруливаются maven'ом, каждый war-ник в libs/ включает нужные библиотеки.[/quot]

Так получается:
core.jar - общие классы, модель и DAO.
client.war зависит от core.jar
admin.war зависит от core.jar
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37869222
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonidv,

вот спасибо теперь стало более менее понятно что мне делать,
только вот непонятно что будет если придется обновить core.war ...
придется все модули пересобирать, которые зависят от куска который я перепишу?
так получается?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37869223
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
извиняюсь core.jar
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37870728
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338только вот непонятно что будет если придется обновить core.war ...
придется все модули пересобирать, которые зависят от куска который я перепишу?
так получается?Если не делать повреждения несовместимые с жизнью - ничего пересобирать не нужно.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37871816
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov,

спасибо за ответ
хотя на следующее утро я своим маленьким умишком это уже понял, а на самый край есть и версии
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37871827
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у меня тут небольшой трабл случился

com.sybase.jdbc3.utils.UnimplementedOperationException: The method com.sybase.jdbc3.jdbc.SybConnection.prepareStatement(String, int) has not been completed and should not be called.

новый драйвер jconn4 не подходит, старая версия Sybase

можно ли как-то это обойти?

(ошибка при вставке данных в БД с update пока не пробовал, но удаляет корректно)
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37871859
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
все работает кроме метода
sessionFactory.getCurrentSession().save(object);
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37873036
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
com.sybase.jdbc3.utils.UnimplementedOperationException: The method com.sybase.jdbc3.jdbc.SybConnection.prepareStatement(String, int) has not been completed and should not be called.

что никто никогда не сталкивался? и не знает как обойти это?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37873054
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338com.sybase.jdbc3.utils.UnimplementedOperationException: The method com.sybase.jdbc3.jdbc.SybConnection.prepareStatement(String, int) has not been completed and should not be called.

что никто никогда не сталкивался? и не знает как обойти это?

StackTrace покажи. Надо посмотреть какой именно JDBC метод к этому приводит и какой диалект в Hibernate используется.
Если родными диалектами это не решается, можно расширить своей реализацией.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37873123
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

диалект Sybase11Dialect

на счет стек трейса, не знаю чем он Вам таким поможет... но вот:

Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
com.sybase.jdbc3.utils.UnimplementedOperationException: The method com.sybase.jdbc3.jdbc.SybConnection.prepareStatement(String, int) has not been completed and should not be called.
	at com.sybase.jdbc3.jdbc.ErrorMessage.raiseRuntimeException(Unknown Source)
	at com.sybase.jdbc3.utils.Debug.notImplemented(Unknown Source)
	at com.sybase.jdbc3.jdbc.SybConnection.prepareStatement(Unknown Source)
	at org.apache.tomcat.dbcp.dbcp.DelegatingConnection.prepareStatement(DelegatingConnection.java:508)
	at org.apache.tomcat.dbcp.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.prepareStatement(PoolingDataSource.java:400)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at org.hibernate.engine.jdbc.internal.proxy.ConnectionProxyHandler.continueInvocation(ConnectionProxyHandler.java:138)
	at org.hibernate.engine.jdbc.internal.proxy.AbstractProxyHandler.invoke(AbstractProxyHandler.java:81)
	at $Proxy112.prepareStatement(Unknown Source)
	at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$2.doPrepare(StatementPreparerImpl.java:105)
	at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$StatementPreparationTemplate.prepareStatement(StatementPreparerImpl.java:166)
	at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.prepareStatement(StatementPreparerImpl.java:103)
	at org.hibernate.id.IdentityGenerator$InsertSelectDelegate.prepare(IdentityGenerator.java:137)
	at org.hibernate.id.insert.AbstractReturningDelegate.performInsert(AbstractReturningDelegate.java:55)
	at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2767)
	at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3278)
	at org.hibernate.action.internal.EntityIdentityInsertAction.execute(EntityIdentityInsertAction.java:81)
	at org.hibernate.engine.spi.ActionQueue.execute(ActionQueue.java:362)
	at org.hibernate.engine.spi.ActionQueue.addResolvedEntityInsertAction(ActionQueue.java:203)
	at org.hibernate.engine.spi.ActionQueue.addInsertAction(ActionQueue.java:183)
	at org.hibernate.engine.spi.ActionQueue.addAction(ActionQueue.java:167)
	at org.hibernate.event.internal.AbstractSaveEventListener.addInsertAction(AbstractSaveEventListener.java:320)
	at org.hibernate.event.internal.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:287)
	at org.hibernate.event.internal.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:193)
	at org.hibernate.event.internal.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:126)
	at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:204)
	at org.hibernate.event.internal.DefaultSaveEventListener.saveWithGeneratedOrRequestedId(DefaultSaveEventListener.java:55)
	at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:189)
	at org.hibernate.event.internal.DefaultSaveEventListener.performSaveOrUpdate(DefaultSaveEventListener.java:49)
	at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:90)
	at org.hibernate.internal.SessionImpl.fireSave(SessionImpl.java:757)
	at org.hibernate.internal.SessionImpl.save(SessionImpl.java:749)
	at org.hibernate.internal.SessionImpl.save(SessionImpl.java:745)
	at ru.home.homeWork.dao.impl.SpaceDaoImpl.create(SpaceDaoImpl.java:50)
	at ru.home.homeWork.dao.impl.SpaceDaoImpl.create(SpaceDaoImpl.java:25)
	at ru.home.homeWork.requests.space.service.SpaceServiceImpl.create(SpaceServiceImpl.java:31)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:318)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
	at $Proxy102.create(Unknown Source)
	at ru.home.homeWork.requests.space.web.SpaceController.createSpace(SpaceController.java:56)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:213)
	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:126)
	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:96)
	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:617)
	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:578)
	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:80)
	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:923)
	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)
	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)
	at org.springframework.web.servlet.FrameworkServlet.doPut(FrameworkServlet.java:800)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:644)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:987)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:579)
	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:307)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
	at java.lang.Thread.run(Thread.java:722)

...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37873149
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я уже не раз гуглил по этой теме и не получается ничего найти, кроме как перейди на jconn4 и все заработает,
но jconn4 не работает с моей СУБД....

Sybase ASE 11.5 ..........
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37873159
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Т.е. autogenerated keys не поддерживается вообще? У вас ID другим образом генерятся?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37873166
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczТ.е. autogenerated keys не поддерживается вообще? У вас ID другим образом генерятся?
Вам драйвер явно сообщает что методы с autogenerated keys не поддерживаются, а вы все равно в хибере используете Identity ID. Надо как-то решать.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37873171
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

дк вот думал заставить Hibernate выполнить произвольный Insert а он все равно либо заполни id мне руками, либо excepion
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37873172
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczBlazkowiczТ.е. autogenerated keys не поддерживается вообще? У вас ID другим образом генерятся?
Вам драйвер явно сообщает что методы с autogenerated keys не поддерживаются, а вы все равно в хибере используете Identity ID. Надо как-то решать.

а где это вы увидели? O_o
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37873178
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37873191
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

а предложения как это обойти? просто убрать @GeneratedValue() и ставить фиктивную idшку и прописать @SqlInsert ?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37873224
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338а предложения как это обойти? просто убрать @GeneratedValue() и ставить фиктивную idшку и прописать @SqlInsert ?
база поддерживает GeneratedValue ?
а драйвер?
отнаследовать хиберовские классы и заменить методы на другие.
ставить не "фиктивную idшку", а использовать другой метод получения ключей
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37873258
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

насколько мне известно из мануала по Sybase он генерит id-шники сам, но получить следующий у него нельзя...
только после вставки можно получить уже готовый id

к примеру:

Код: sql
1.
2.
insert into User(name, login) Values('Вася', 'Vangog')
select @@identity


но эм вставлять в поле ID которое является identity просто запрещено самим Sybase
т.е. либо поле Identity и этим рулит Sybase либо поле ручного ввода, и этим рулит сам пользователь (что ни есть хорошо, так как последовательностей нету)

вообщем и целом получается что надо
использовать для вставки SQL так получается?
если так то что будет если у меня используется в качестве менеджера транзакций Hibernate ?
т.е. как поведет себя Connection Pool и не получится ли лишних коннектов к БД?
P.S.
использую аннотации @Transactional
в спринговом конфиге написанно так:
Код: xml
1.
2.
3.
4.
5.
6.
7.
    <!-- Настраивает управление транзакциями с помощью аннотации @Transactional -->
    <tx:annotation-driven transaction-manager="transactionManager" />
    
    <!-- Менеджер транзакций -->
    <bean id="transactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager">
        <property name="sessionFactory" ref="sessionFactory" />
    </bean>
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37873278
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Читайте исходники хибера, диалект и то что у вас в Stacktrace.
Вам нужно научить его делать "select @@identity". Возможно хибер это уже умеет. нужно только найти где включить.
И второе это обойти вызов именно того метода prepareStatement(). Опять же по stackatrаce найти где именно он вызывается и почему именно он, а не один из альтернативных.
Посмотрите ещё что у вас вот этот метод возвращает
http://docs.jboss.org/hibernate/orm/3.5/api/org/hibernate/dialect/SybaseDialect.html#supportsInsertSelectIdentity%28%29
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37873303
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczЧитайте исходники хибера

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
	public boolean  supportsInsertSelectIdentity() {

		return true;
	}

public String getIdentitySelectString() {
		return "select @@identity";
	}
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37873304
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

мда никогда не думал, что для маленького RESTful сервера придется рыскать по исходникам Hibernate =)

мне уже начальник говорит выкинь ты из проекат это гавно юзай Spring JDBC и не парься....
а я все мучаюсь и мучаюсь....
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37873307
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chpasha,

это вот куда надо добавить?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37873325
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chpasha,

а у меня в исходниках немножко не так:

Код: java
1.
2.
3.
4.
5.
6.
7.
public boolean supportsInsertSelectIdentity() {
	return true;
}

public String appendIdentitySelectToInsert(String insertSQL) {
	return insertSQL + "\nselect @@identity";
}
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37873359
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338а у меня в исходниках немножко не так:
все так, ты другой кусок кода зацепил. много бед, один ответ - надо дебажить исходник и смотреть что не так. должно работать.

з.ы. с хибернейтом (да и не только с ним) поначалу всегда так. тут как в мультфильме, "лучше день потерять, потом за 5 минут долетим". но потерять придется больше чем день.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37873387
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chpasha,

там че-то совсем очень много всего....
эх придется убить пару недель наверное на это, главное потом что бы действительно "за 5 минут долететь",
а то как-то много времени на это уйдет =(
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37873397
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338chpasha,

там че-то совсем очень много всего....
всего и не надо. как правило интересно либо место возникновения исключения либо то, что к этому вызову привело. но скорей всего у тебя что-то в маппингах не так. погугли просто на предмет hibernate+autogenerated keys+sybase и найди рабочие примеры
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37873404
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что вы хотели от legacy базы с экстравагантным драйвером. Вы бы ещё Hibernate 2.0 использовали.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37873463
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

не я уже, больше склоняюсь использовать Spring JDBC
потому как в своем SQL я смогу безпрепятственно использовать весь синтаксис T-SQL от Sybase
и индексы прописывать (которые очень часто Sybase имеет свойство терять) и никаких тебе проблем с insert
да и выполнение хранимых процедур, вместо IUD операций тоже имеет свои плюсы

но блин хотелось попользоваться Hibernate получить кайф от написания пары строк кода вместо
мало кому нужного томика SQL + JDBC

больше всего меня раздражает что работает все акромя INSERT
прям уже хочется все бросить и уйти в монастырь...
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37873475
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338прям уже хочется все бросить и уйти в монастырь...
вначале всегда тяжело. я в свое время убил пол дня на то, чтобы хибер UUID гонял в postgres и обратно наиболее элегантным способом. как только начинаешь изучать, спотыкаешься на каждой мелочи. один раз нужно разобраться. только тогда пойдет профит. в твоей ситуации аналогично - один раз разберешься, дальше уже будешь знать как.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37873479
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chpasha,

да я это понимаю что надо один раз разобраться, только все равно не пойму, куда смотреть, за кем глядеть и откуда цепочка вьется

короче говоря запутался я... надо на свежую голову брать в руки напильник а не как сейчас...
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37874272
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
попробовав немного поэкспериментировать с JdbcTemplate
я тут наткнулся на такую вещь, что он работает быстрее потому как на поиске я (к примеру) не использую
транзакцию, т.е. убрал аннотацию @Transactional у метода сервиса (ну нету же смысла на 1-ну операцию тащить транзакцию),
но насколько я понял для корректной работы SessionFactory.getCurrentSeccion() нужна транзакция...

внимание вопрос ЗАЧЕМ?(может я конечно не много не понял как там это настроить правильно, но без транзакции великий Hibernate отказывается работать и говорит что сессия пустая) зачем использовать транзакцию в таких случаях как CRUD ? когда элемент один и не имеет связей?

я конечно понимаю зачем нужны транзакции (это как бы пакетная операция которая, в случае чего должна откатится вся), но хоть убей не пойму ЗАЧЕМ нужно это дело для одной операции, и как рулить такими ситуациями когда транзакция не нужна и тянуть ее ну просто нету смысла (т.е. как сделать работу Hibernate без транзакций, просто чет я не нашел этого в мануале, или пролистал не обратив внимания, а спросить не у кого =( )
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37874328
Фотография schwa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338,

Никак. Все изменения базы состояния бд в Хайбернейт делаются только в рамках транзакций.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37874374
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
schwa,

но это же замедляет работу с БД примерно на треть!
а когда работа с БД критична? то люди просто не используют Hibernate ?
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37874395
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338но это же замедляет работу с БД примерно на треть!

Речь о Sybase? У остальных вроде не замедляет особо. А как целостность данных вы предлагаете сохранять без транзакций вообще?
Есть Read-Only транзакции, возможно они в вашем случае будут быстрее.

32338а когда работа с БД критична?
Работа с БД всегда критична.

32338то люди просто не используют Hibernate ?
Hibernate не используют либо когда его не умеют готовить, либо когда это лишено смысла - нет большого дерева ассоциаций, данные организованы и обрабытываются в более табличном виде. Тогда толку от него не много.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37874418
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

я и не говорю что не надо использовать транзакции просто когда идет один Select то смысл в транзакции?

просто получается что замедляет работу

select ID, Name from User where ID = ?

что увеличивает время отклика....

я протестировал и получилось что
1000 чтений из БД с помощью jdbcTemplate и Hibernate примерно на треть разнятся т.е. видимо из-за работы в транзакции
потому как jdbcTemplate я не использовал транзакции для такой выборки
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37874429
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

в моем случае я его не могу приготовить из-за Sybase 11 и jconn3 которые не понимают автогенерацию.... и в нем нельзя (без применения костылей и подпорок) вставлять в таблицу идентификатор который описан как identity поле (автоинкрементовое)

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

это как в рекламе "Не люблю кошек. Ты просто не умеешь их готовить."

да пока кухня с внутренностями Hibernate для меня табу....
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37874434
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338я и не говорю что не надо использовать транзакции просто когда идет один Select то смысл в транзакции?

:) Каждый запрос в базе выполняется в своей транзакции чтобы обеспечить ACID. Разница лишь в том управляете ли вы это транзакцией в ручную, или работает автокоммит.


32338просто получается что замедляет работу
select ID, Name from User where ID = ?
что увеличивает время отклика....

Нет, не замедляет.


32338я протестировал и получилось что
1000 чтений из БД с помощью jdbcTemplate и Hibernate примерно на треть разнятся т.е. видимо из-за работы в транзакции
потому как jdbcTemplate я не использовал транзакции для такой выборки
[/quot]
Hibernate помимо чтения конвертирует ещё данные в объекты. Что вы там тестировали не очень-то понятно.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37874468
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

все по фен-шую, т.е. через RowMapper (т.е. разбор и создание объектов)
и получалось быстрее на треть
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37874480
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338все по фен-шую, т.е. через RowMapper (т.е. разбор и создание объектов)
и получалось быстрее на треть
Но, теперь вы точно не знаете то ли запросы на треть быстрее то ли создание объектов. :) Вот и я говорю не понятно что вы и как меряли. А всё на транзакции свалили.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37874502
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

ладно хрен с ним теперь работает быстрее и меня это радует,
и оно понятно ведь нету создания SQL запроса на основании сущности и т.д.
да и разбор тоже простой

Интересно все таки почему никто в инете не нашел как победить jconn3 и Hibernate + Sybase
к тому же Sybase11Dialect как раз таки для Syabse 11 вроде как придуман... а не работает... обидно, обделили
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37874515
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуйти 3й хибернейт. Вообще это не удивительно. У хибера очень много проблем, но очень мало ресурсов. Поэтому на экзотических базах и вылазит всякое. Т.к. это opensource, то проще самому пропатчить и засабмитить фикс.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37874518
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

ок щя гляну на 3-й хиб, только вот думаю мало что изменится....
хотя чем черт не шутит...
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37874548
Leonidv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
32338,

Уже 4-ый вышел. Смотрите уж сразу на него.
Еще mybatis можно посмотреть.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37874553
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LeonidvУже 4-ый вышел. Смотрите уж сразу на него.
Ворвался так сказать в тему. Не работает у него на 4м. Что там принципиально лучше чем в 3м - никто не знает. Багов разве что больше.
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37874581
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

как говорится мы устранили большинство старых багов и добавили кучу новых =)
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37874612
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
эх че-то как-то работать не хотит hibernate 3.3.2.GA
что-то не хочет sessionFactory работать...

может че в настрйоках напутал, может кто глянет а то я уже 100 раз читаю и ппц

Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
 <tx:annotation-driven transaction-manager="transactionManager" />

<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
        <property name="sessionFactory" ref="sessionFactory" />
    </bean>

<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
        <property name="jndiName" value="jdbc/Sybase"/>
        <property name="proxyInterface" value="javax.sql.DataSource"/>
        <property name="resourceRef" value="true" />             
    </bean>  

<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
        <property name="dataSource" ref="dataSource" />
        <property name="configLocation" value="classpath:hibernate.cfg.xml" />
        <property name="hibernateProperties">
            <props>
                <prop key="hibernate.show_sql">true</prop>
                <prop key="hibernate.dialect">org.hibernate.dialect.Sybase11Dialect</prop>
                <prop key="hibernate.format_sql">true</prop>
            </props>
        </property>
    </bean>
...
Рейтинг: 0 / 0
подружить tomcat и hibernate
    #37874614
32338
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не стартует контекст, говорит что sessionFactory не найден... ну и с вытекающими @Autowired отъезжает
...
Рейтинг: 0 / 0
160 сообщений из 160, показаны все 7 страниц
Форумы / Java [игнор отключен] [закрыт для гостей] / подружить tomcat и hibernate
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]