|
|
|
Spring - Вопрос в картинках
|
|||
|---|---|---|---|
|
#18+
Добрый день. Подскажите почему в нагенерированной через Roo .. jspx вьюхе, при нажатие на показать все сущности, вызывается конструктор этого класс?? т.е. писал метод с @PostConstruct смотрю экземпляров класса нет, а он исполняется, если во вьюхе нажимать показать всё.. да, и при инициализации апликшн-конткст-а тоже вызывается. Что происходит? Очень интересно.Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2013, 17:09:51 |
|
||
|
Spring - Вопрос в картинках
|
|||
|---|---|---|---|
|
#18+
Прошу прощения, но вопрос по прежнему актуален. 1. Почему при инициализации и запуске war файла происходит вызов конструктора сущности??? Ведь класс обычный не статический. 2. Почему при нажатие показать_все_сущности_т3 в jspx так же происходит вызов конструктора?? Я могу приложить необходимый код, вопрос ведь не эзотерический. Где вы.. знатоки Спринга) А пока.. посмотрю на трейс. *поднял ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2013, 14:04:33 |
|
||
|
Spring - Вопрос в картинках
|
|||
|---|---|---|---|
|
#18+
Останавливашь breakpoint и смотришь откуда вызов пришел. Странный вопрос. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2013, 14:11:54 |
|
||
|
Spring - Вопрос в картинках
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, The default behavior for ApplicationContext implementations is to eagerly pre-instantiate all singleton beans at startup. Pre-instantiation means that an ApplicationContext will eagerly create and configure all of its singleton beans as part of its initialization process. Generally this is a good thing, because it means that any errors in the configuration or in the surrounding environment will be discovered immediately (as opposed to possibly hours or even days down the line). However, there are times when this behavior is not what is wanted. If you do not want a singleton bean to be pre-instantiated when using an ApplicationContext, you can selectively control this by marking a bean definition as lazy-initialized. A lazily-initialized bean indicates to the IoC container whether or not a bean instance should be created at startup or when it is first requested. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2013, 16:18:22 |
|
||
|
Spring - Вопрос в картинках
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Вопрос в не очевидном для меня вызове конструктора, что странного? если для вас нормально, что у класса (не синглтона) вызывается конструктор при инициализации приложения, и при запросе через вьюху всех его экзепляров.. (хотя нет ни одного) если для вас это норм, прошу рассказать почему так. если для вас норм что из коробки происходят такие вещи ...то так же прошу поделиться инфой. спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2013, 16:30:13 |
|
||
|
Spring - Вопрос в картинках
|
|||
|---|---|---|---|
|
#18+
kT_________, Достаточно просто немного понять как спринг делает контекст (что собственно написано в вашей цитате). Почему вас тогда не удивляет что спринг выполняет инициализацию контекста до того как вы запрашиваете вьюху? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2013, 16:35:16 |
|
||
|
Spring - Вопрос в картинках
|
|||
|---|---|---|---|
|
#18+
Лагман, я и пытаюсь понят. как уже писал выше.. почему вызывается конструктор???? 1 - класс не статический, 2 - класс не синглтон так зачем вызывать конструктор??? что куда инстанцируется? Вы в курсе? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2013, 16:41:24 |
|
||
|
Spring - Вопрос в картинках
|
|||
|---|---|---|---|
|
#18+
Спринг прописан как листенер в web-xml, стартует вместе с веб-приложением. Читает свой конфиг. В конфиге написано bean class="moy.klass.v.pakete.v.pakete.Klass" scope="singleton" Для спринга это означает что нужно создать 1 экземпляр этого класса . Собственно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2013, 16:45:31 |
|
||
|
Spring - Вопрос в картинках
|
|||
|---|---|---|---|
|
#18+
Я вот знаю когда вызывается конструктор класса. И главное зачем;) Но не могу понять зачем его вызывать.. когда я хочу посмотреть на экземпляры. Особенно когда их нет, и нет тем более после вызова конструктора. Это какой-то акультный артефакт jpa? АктивРекордса? Ребята.. давайте подумаем вместе.. почему так, мм? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2013, 16:46:04 |
|
||
|
Spring - Вопрос в картинках
|
|||
|---|---|---|---|
|
#18+
Лагман, секундочку... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2013, 16:46:49 |
|
||
|
Spring - Вопрос в картинках
|
|||
|---|---|---|---|
|
#18+
kT_________, а что такое у вас конструктор класса? Код: java 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2013, 16:47:44 |
|
||
|
Spring - Вопрос в картинках
|
|||
|---|---|---|---|
|
#18+
Roo генерит аннотации, хмл-я увидеть не могу. Но получается что? Что это синглтон, верно? Но вот почему он им стал, если я как бэ не планировал))) т.е. если у меня отношения many-one ...т.е. many экзепляров этого класса к какому-то другому.. то, то как это возможно если он синглтон???? и второе.. блин, даже если все классы в спринге синглтоны (!что я пишу такое) то зачем они по 100500 раз инстанцируются (или что они там делают) при запросе вьюхи_показать_все?? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2013, 16:54:45 |
|
||
|
Spring - Вопрос в картинках
|
|||
|---|---|---|---|
|
#18+
Лагман, статик.. но поля, поля-то notNull ит.п. ...куда там что создается. я серьезно не понимаю. вообще. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2013, 16:55:58 |
|
||
|
Spring - Вопрос в картинках
|
|||
|---|---|---|---|
|
#18+
kT_________, что такое класс с аннотацией активрекорд? кэш... что такое показать во вьюху экземпляры? замапить в обратную сторону n-ое кол-во этих кэшей. При чем тут конструктор.. если нет не одного экзепляра, вот вопрос! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2013, 16:58:13 |
|
||
|
Spring - Вопрос в картинках
|
|||
|---|---|---|---|
|
#18+
Не ну если у вас Roo, то я не в курсе что там как. В hibernate есть методы findByExample в которые можно передать "образец" объекта сущности. Вообще, никто не гарантирует вам что объекты помеченые jpa будут присутствовать в рантайме ровно по 1 шт согласно тому что вы загрузили из базы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2013, 16:58:37 |
|
||
|
Spring - Вопрос в картинках
|
|||
|---|---|---|---|
|
#18+
kT_________, и да.. конструктор - метод один на всех, но класс не сингтон у меня. не синглтон. нафиг его вызывать при инициализации???можно подробно про это узнать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2013, 17:00:21 |
|
||
|
Spring - Вопрос в картинках
|
|||
|---|---|---|---|
|
#18+
ЛагманНе ну если у вас Roo, то я не в курсе что там как. В hibernate есть методы findByExample в которые можно передать "образец" объекта сущности. Вообще, никто не гарантирует вам что объекты помеченые jpa будут присутствовать в рантайме ровно по 1 шт согласно тому что вы загрузили из базы. как не гарантирует??? вы хотите сказать что я из таблички подтягиваю все записи (например 10)... а у меня в контейнере их может быть !10 ? Или вне этого контейнера существуют экземпляры?? Тогда кто их создал? И самое интересное почему они не удалились.. если их ни кто не пользует.. а если их кто-то тользует... то кто???? ОО _______________________________________________________________________________ А Roo не при делах. Я вот знаю когда вызывается конструктор класса. И главное зачем;) Но не могу понять зачем его вызывать.. когда я хочу посмотреть на экземпляры. Особенно когда их нет, и нет тем более после вызова конструктора. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2013, 17:07:43 |
|
||
|
Spring - Вопрос в картинках
|
|||
|---|---|---|---|
|
#18+
:Initializing Spring root WebApplicationContext KONST java.lang.Exception: Stack trace at slowfokz.domain.T3.<init>(T3.java:25) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstruct orAccessorImpl.java:57) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingC onstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:525) at org.hibernate.engine.internal.UnsavedValueFactory.instantiate(Unsaved ValueFactory.java:46) at org.hibernate.engine.internal.UnsavedValueFactory.getUnsavedIdentifie rValue(UnsavedValueFactory.java:68) at org.hibernate.tuple.PropertyFactory.buildIdentifierProperty(PropertyF actory.java:75) at org.hibernate.tuple.entity.EntityMetamodel.<init>(EntityMetamodel.jav a:145) at org.hibernate.persister.entity.AbstractEntityPersister.<init>(Abstrac tEntityPersister.java:507) at org.hibernate.persister.entity.SingleTableEntityPersister.<init>(Sing leTableEntityPersister.java:146) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstruct orAccessorImpl.java:57) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingC onstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:525) at org.hibernate.persister.internal.PersisterFactoryImpl.create(Persiste rFactoryImpl.java:163) at org.hibernate.persister.internal.PersisterFactoryImpl.createEntityPer sister(PersisterFactoryImpl.java:135) at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.j ava:383) at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.jav a:1750) at org.hibernate.ejb.EntityManagerFactoryImpl.<init>(EntityManagerFactor yImpl.java:94) at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Con figuration.java:905) at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Con figuration.java:890) at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFa ctory(HibernatePersistence.java:74) at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.cr eateNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:286) at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPro pertiesSet(AbstractEntityManagerFactoryBean.java:310) at org.springframework.beans.factory.support.AbstractAutowireCapableBean Factory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1545) at org.springframework.beans.factory.support.AbstractAutowireCapableBean Factory.initializeBean(AbstractAutowireCapableBeanFactory.java:1483) at org.springframework.beans.factory.support.AbstractAutowireCapableBean Factory.doCreateBean(AbstractAutowireCapableBeanFactory.java:524) at org.springframework.beans.factory.support.AbstractAutowireCapableBean Factory.createBean(AbstractAutowireCapableBeanFactory.java:461) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getOb ject(AbstractBeanFactory.java:295) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistr y.getSingleton(DefaultSingletonBeanRegistry.java:223) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBe an(AbstractBeanFactory.java:292) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean (AbstractBeanFactory.java:198) at org.springframework.beans.factory.support.DefaultListableBeanFactory. getBeansOfType(DefaultListableBeanFactory.java:420) at org.springframework.beans.factory.BeanFactoryUtils.beansOfTypeIncludi ngAncestors(BeanFactoryUtils.java:277) at org.springframework.dao.support.PersistenceExceptionTranslationInterc eptor.detectPersistenceExceptionTranslators(PersistenceExceptionTranslationInter ceptor.java:139) at org.springframework.dao.support.PersistenceExceptionTranslationInterc eptor.<init>(PersistenceExceptionTranslationInterceptor.java:79) at org.springframework.dao.annotation.PersistenceExceptionTranslationAdv isor.<init>(PersistenceExceptionTranslationAdvisor.java:70) at org.springframework.dao.annotation.PersistenceExceptionTranslationPos tProcessor.setBeanFactory(PersistenceExceptionTranslationPostProcessor.java:85) at org.springframework.beans.factory.support.AbstractAutowireCapableBean Factory.invokeAwareMethods(AbstractAutowireCapableBeanFactory.java:1506) at org.springframework.beans.factory.support.AbstractAutowireCapableBean Factory.initializeBean(AbstractAutowireCapableBeanFactory.java:1474) at org.springframework.beans.factory.support.AbstractAutowireCapableBean Factory.doCreateBean(AbstractAutowireCapableBeanFactory.java:524) at org.springframework.beans.factory.support.AbstractAutowireCapableBean Factory.createBean(AbstractAutowireCapableBeanFactory.java:461) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getOb ject(AbstractBeanFactory.java:295) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistr y.getSingleton(DefaultSingletonBeanRegistry.java:223) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBe an(AbstractBeanFactory.java:292) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean (AbstractBeanFactory.java:198) at org.springframework.context.support.AbstractApplicationContext.regist erBeanPostProcessors(AbstractApplicationContext.java:741) at org.springframework.context.support.AbstractApplicationContext.refres h(AbstractApplicationContext.java:464) at org.springframework.web.context.ContextLoader.configureAndRefreshWebA pplicationContext(ContextLoader.java:383) at org.springframework.web.context.ContextLoader.initWebApplicationConte xt(ContextLoader.java:283) at org.springframework.web.context.ContextLoaderListener.contextInitiali zed(ContextLoaderListener.java:112) at org.eclipse.jetty.server.handler.ContextHandler.callContextInitialize d(ContextHandler.java:764) at org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialize d(ServletContextHandler.java:406) at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextH andler.java:756) at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletC ontextHandler.java:242) at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.jav a:1234) at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandle r.java:699) at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:467 ) at org.mortbay.jetty.plugin.JettyWebAppContext.doStart(JettyWebAppContex t.java:256) at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLife Cycle.java:59) at org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCol lection.java:224) at org.eclipse.jetty.server.handler.ContextHandlerCollection.doStart(Con textHandlerCollection.java:167) at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLife Cycle.java:59) at org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCol lection.java:224) at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLife Cycle.java:59) at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrappe r.java:90) at org.eclipse.jetty.server.Server.doStart(Server.java:262) at org.mortbay.jetty.plugin.JettyServer.doStart(JettyServer.java:65) at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLife Cycle.java:59) at org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMo jo.java:511) at org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo. java:364) at org.mortbay.jetty.plugin.JettyRunMojo.execute(JettyRunMojo.java:516) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(Default BuildPluginManager.java:101) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor .java:209) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor .java:153) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor .java:145) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProje ct(LifecycleModuleBuilder.java:84) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProje ct(LifecycleModuleBuilder.java:59) at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBu ild(LifecycleStarter.java:183) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(Lifecycl eStarter.java:161) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156) at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537) at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196) at org.apache.maven.cli.MavenCli.main(MavenCli.java:141) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Laun cher.java:290) at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.jav a:230) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(La uncher.java:409) at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java: 352) 2013-03-12 06:14:07.890:INFO:oejsh.ContextHandler:started o.m.j.p.JettyWebAppCon text{/slowflake,file:/C:/jtty/wrk/slowflake/src/main/webapp/},file:/C:/jtty/wrk/ slowflake/src/main/webapp/ 2013-03-12 06:14:08.437:INFO:/slowflake:Initializing Spring FrameworkServlet 'sl owflake' 2013-03-12 06:14:11.765:INFO:oejs.AbstractConnector:Started SelectChannelConnect or@0.0.0.0:8080 [INFO] Started Jetty Server ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2013, 17:17:06 |
|
||
|
Spring - Вопрос в картинках
|
|||
|---|---|---|---|
|
#18+
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:223) вот так! Они все синглтоны. А я как собака-недоумевака... не понятна логика. кто поспособствует просветлению? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2013, 17:27:14 |
|
||
|
Spring - Вопрос в картинках
|
|||
|---|---|---|---|
|
#18+
Вы делаете запрос jpa - Код: java 1. 2. получаете results, в нем - пожалуйста, 10 записей. Только как это связано с кол-вом кземпляров класса Magazine, например? (кроме того, что их будет >=10) ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2013, 17:31:18 |
|
||
|
Spring - Вопрос в картинках
|
|||
|---|---|---|---|
|
#18+
ЛагманВы делаете запрос jpa - Код: java 1. 2. получаете results, в нем - пожалуйста, 10 записей. Только как это связано с кол-вом кземпляров класса Magazine, например? (кроме того, что их будет >=10) ? Подождите, а сколько их по вашему должно быть?? Результат запроса в results, ну а дальше.. всё зависит от кода, и от того что вышло и что осталось в области видимости, на стеке и тп. Просто я неверно вас понял, что мой код отдельно - и то что там jpa инстанцирует отдельно и совершенно на своей волне. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2013, 17:38:39 |
|
||
|
Spring - Вопрос в картинках
|
|||
|---|---|---|---|
|
#18+
Лагман, значит все они синглтоны? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2013, 17:39:22 |
|
||
|
Spring - Вопрос в картинках
|
|||
|---|---|---|---|
|
#18+
kT_________Лагман, значит все они синглтоны? если верить стэктрейсу;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2013, 17:39:50 |
|
||
|
|

start [/forum/topic.php?desktop=1&fid=59&tid=2129799]: |
0ms |
get settings: |
18ms |
get forum list: |
18ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
64ms |
get topic data: |
16ms |
get forum data: |
4ms |
get page messages: |
87ms |
get tp. blocked users: |
2ms |
| others: | 323ms |
| total: | 542ms |

| 0 / 0 |
