java.lang.IllegalStateException: BeanFactory not initialized or already closed - call 'refresh' before accessing beans via the ApplicationContext

Apache's JIRA Issue Tracker | Charles Moulliard | 8 years ago
tip
Your exception is missing from the Samebug knowledge base.
Here are the best solutions we found on the Internet.
Click on the to mark the helpful solution and get rewards for you help.
  1. 0

    [jira] Resolved: (CAMEL-1427) java.lang.IllegalStateException: BeanFactory not initialized or already closed - call 'refresh' before accessing beans via the ApplicationContext

    camel-dev | 8 years ago | Charles Moulliard (JIRA)
    java.lang.IllegalStateException: BeanFactory not initialized or already closed - call 'refresh' before accessing beans via the ApplicationContext
  2. Speed up your debug routine!

    Automated exception search integrated into your IDE

  3. 0

    Hi, When I run the following spring DSL in SMX4 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:camel="http://camel.apache.org/schema/spring" xmlns:cxf="http://camel.apache.org/schema/cxf" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://camel.apache.org/schema/osgi http://camel.apache.org/schema/osgi/camel-osgi.xsd http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd http://camel.apache.org/schema/cxf http://camel.apache.org/schema/cxf/camel-cxf.xsd"> <bean id="bindyDataformat" class="org.apache.camel.dataformat.bindy.csv.BindyCsvDataFormat"> <constructor-arg type="java.lang.String" value="org.apache.camel.example.reportincident.model" /> </bean> <bean id="csv" class="org.apache.camel.example.reportincident.csv.CsvBean" /> <bean id="OK" class="org.apache.camel.example.reportincident.OutputReportIncident"> <property name="code" value="0"/> </bean> <camelContext trace="true" xmlns="http://camel.apache.org/schema/osgi"> <camel:package>org.apache.camel.example.reportincident.routing</camel:package> <!-- File route --> <camel:route> <camel:from uri="file://d:/temp/data/?moveExpression=d:/temp/done/${file:name}" /> <camel:unmarshal ref="bindyDataformat" /> <camel:to uri="bean:csv" /> </camel:route> <!-- CXF route --> <camel:route> <camel:from uri="cxf://http://localhost:8080/camel-example/incident?serviceClass=org.apache.camel.example.reportincident.service.ReportIncidentEndpoint&amp;wsdlURL=wsdl/report_incident.wsdl" /> <camel:convertBodyTo type="org.apache.camel.example.reportincident.InputReportIncident" /> <camel:to uri="log:cxf" /> <camel:transform> <camel:method bean="OK" method="code"/> </camel:transform> </camel:route> </camelContext> </beans> , I receive the following error : 15:48:59,209 | ERROR | xtenderThread-15 | OsgiBundleXmlApplicationContext | gatedExecutionApplicationContext 366 | Post refresh error java.lang.IllegalStateException: BeanFactory not initialized or already closed - call 'refresh' before accessing beans via the ApplicationContext at org.springframework.context.support.AbstractRefreshableApplicationContext.getBeanFactory(AbstractRefreshableApplicationContext.java:153) at org.springframework.context.support.AbstractApplicationContext.containsBean(AbstractApplicationContext.java:892) at org.apache.cxf.configuration.spring.ConfigurerImpl.configureBean(ConfigurerImpl.java:141) at org.apache.cxf.configuration.spring.ConfigurerImpl.configureBean(ConfigurerImpl.java:111) at org.apache.cxf.transport.http.AbstractHTTPTransportFactory.configure(AbstractHTTPTransportFactory.java:229) at org.apache.cxf.transport.http.AbstractHTTPTransportFactory.configure(AbstractHTTPTransportFactory.java:224) at org.apache.cxf.transport.http_jetty.JettyHTTPTransportFactory.createDestination(JettyHTTPTransportFactory.java:121) at org.apache.cxf.transport.http_jetty.JettyHTTPTransportFactory.getDestination(JettyHTTPTransportFactory.java:103) at org.apache.cxf.endpoint.ServerImpl.initDestination(ServerImpl.java:90) at org.apache.cxf.endpoint.ServerImpl.<init>(ServerImpl.java:69) at org.apache.cxf.frontend.ServerFactoryBean.create(ServerFactoryBean.java:121) at org.apache.cxf.jaxws.JaxWsServerFactoryBean.create(JaxWsServerFactoryBean.java:168) at org.apache.camel.component.cxf.CxfConsumer.<init>(CxfConsumer.java:102) at org.apache.camel.component.cxf.CxfEndpoint.createConsumer(CxfEndpoint.java:95) at org.apache.camel.impl.EventDrivenConsumerRoute.addServices(EventDrivenConsumerRoute.java:62) at org.apache.camel.Route.getServicesForRoute(Route.java:74) at org.apache.camel.impl.RouteService.doStart(RouteService.java:77) at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:50) at org.apache.camel.impl.DefaultCamelContext.doStart(DefaultCamelContext.java:743) at org.apache.camel.spring.SpringCamelContext.maybeDoStart(SpringCamelContext.java:165) at org.apache.camel.spring.SpringCamelContext.doStart(SpringCamelContext.java:160) at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:50) at org.apache.camel.spring.SpringCamelContext.maybeStart(SpringCamelContext.java:95) at org.apache.camel.spring.SpringCamelContext.onApplicationEvent(SpringCamelContext.java:114) at org.springframework.context.event.SimpleApplicationEventMulticaster$1.run(SimpleApplicationEventMulticaster.java:78) at org.springframework.core.task.SyncTaskExecutor.execute(SyncTaskExecutor.java:49) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:76) at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:274) at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:736) at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.finishRefresh(AbstractDelegatedExecutionApplicationContext.java:380) at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext$4.run(AbstractDelegatedExecutionApplicationContext.java:346) at org.springframework.osgi.util.internal.PrivilegedUtils.executeWithCustomTCCL(PrivilegedUtils.java:85) at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.completeRefresh(AbstractDelegatedExecutionApplicationContext.java:308) at org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor$CompleteRefreshTask.run(DependencyWaiterApplicationContextExecutor.java:138) at java.lang.Thread.run(Thread.java:595) but the error is not generated when running outside of an OSGI server (SMX4)

    Apache's JIRA Issue Tracker | 8 years ago | Charles Moulliard
    java.lang.IllegalStateException: BeanFactory not initialized or already closed - call 'refresh' before accessing beans via the ApplicationContext
  4. 0

    Hi, When I run the following spring DSL in SMX4 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:camel="http://camel.apache.org/schema/spring" xmlns:cxf="http://camel.apache.org/schema/cxf" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://camel.apache.org/schema/osgi http://camel.apache.org/schema/osgi/camel-osgi.xsd http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd http://camel.apache.org/schema/cxf http://camel.apache.org/schema/cxf/camel-cxf.xsd"> <bean id="bindyDataformat" class="org.apache.camel.dataformat.bindy.csv.BindyCsvDataFormat"> <constructor-arg type="java.lang.String" value="org.apache.camel.example.reportincident.model" /> </bean> <bean id="csv" class="org.apache.camel.example.reportincident.csv.CsvBean" /> <bean id="OK" class="org.apache.camel.example.reportincident.OutputReportIncident"> <property name="code" value="0"/> </bean> <camelContext trace="true" xmlns="http://camel.apache.org/schema/osgi"> <camel:package>org.apache.camel.example.reportincident.routing</camel:package> <!-- File route --> <camel:route> <camel:from uri="file://d:/temp/data/?moveExpression=d:/temp/done/${file:name}" /> <camel:unmarshal ref="bindyDataformat" /> <camel:to uri="bean:csv" /> </camel:route> <!-- CXF route --> <camel:route> <camel:from uri="cxf://http://localhost:8080/camel-example/incident?serviceClass=org.apache.camel.example.reportincident.service.ReportIncidentEndpoint&amp;wsdlURL=wsdl/report_incident.wsdl" /> <camel:convertBodyTo type="org.apache.camel.example.reportincident.InputReportIncident" /> <camel:to uri="log:cxf" /> <camel:transform> <camel:method bean="OK" method="code"/> </camel:transform> </camel:route> </camelContext> </beans> , I receive the following error : 15:48:59,209 | ERROR | xtenderThread-15 | OsgiBundleXmlApplicationContext | gatedExecutionApplicationContext 366 | Post refresh error java.lang.IllegalStateException: BeanFactory not initialized or already closed - call 'refresh' before accessing beans via the ApplicationContext at org.springframework.context.support.AbstractRefreshableApplicationContext.getBeanFactory(AbstractRefreshableApplicationContext.java:153) at org.springframework.context.support.AbstractApplicationContext.containsBean(AbstractApplicationContext.java:892) at org.apache.cxf.configuration.spring.ConfigurerImpl.configureBean(ConfigurerImpl.java:141) at org.apache.cxf.configuration.spring.ConfigurerImpl.configureBean(ConfigurerImpl.java:111) at org.apache.cxf.transport.http.AbstractHTTPTransportFactory.configure(AbstractHTTPTransportFactory.java:229) at org.apache.cxf.transport.http.AbstractHTTPTransportFactory.configure(AbstractHTTPTransportFactory.java:224) at org.apache.cxf.transport.http_jetty.JettyHTTPTransportFactory.createDestination(JettyHTTPTransportFactory.java:121) at org.apache.cxf.transport.http_jetty.JettyHTTPTransportFactory.getDestination(JettyHTTPTransportFactory.java:103) at org.apache.cxf.endpoint.ServerImpl.initDestination(ServerImpl.java:90) at org.apache.cxf.endpoint.ServerImpl.<init>(ServerImpl.java:69) at org.apache.cxf.frontend.ServerFactoryBean.create(ServerFactoryBean.java:121) at org.apache.cxf.jaxws.JaxWsServerFactoryBean.create(JaxWsServerFactoryBean.java:168) at org.apache.camel.component.cxf.CxfConsumer.<init>(CxfConsumer.java:102) at org.apache.camel.component.cxf.CxfEndpoint.createConsumer(CxfEndpoint.java:95) at org.apache.camel.impl.EventDrivenConsumerRoute.addServices(EventDrivenConsumerRoute.java:62) at org.apache.camel.Route.getServicesForRoute(Route.java:74) at org.apache.camel.impl.RouteService.doStart(RouteService.java:77) at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:50) at org.apache.camel.impl.DefaultCamelContext.doStart(DefaultCamelContext.java:743) at org.apache.camel.spring.SpringCamelContext.maybeDoStart(SpringCamelContext.java:165) at org.apache.camel.spring.SpringCamelContext.doStart(SpringCamelContext.java:160) at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:50) at org.apache.camel.spring.SpringCamelContext.maybeStart(SpringCamelContext.java:95) at org.apache.camel.spring.SpringCamelContext.onApplicationEvent(SpringCamelContext.java:114) at org.springframework.context.event.SimpleApplicationEventMulticaster$1.run(SimpleApplicationEventMulticaster.java:78) at org.springframework.core.task.SyncTaskExecutor.execute(SyncTaskExecutor.java:49) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:76) at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:274) at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:736) at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.finishRefresh(AbstractDelegatedExecutionApplicationContext.java:380) at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext$4.run(AbstractDelegatedExecutionApplicationContext.java:346) at org.springframework.osgi.util.internal.PrivilegedUtils.executeWithCustomTCCL(PrivilegedUtils.java:85) at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.completeRefresh(AbstractDelegatedExecutionApplicationContext.java:308) at org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor$CompleteRefreshTask.run(DependencyWaiterApplicationContextExecutor.java:138) at java.lang.Thread.run(Thread.java:595) but the error is not generated when running outside of an OSGI server (SMX4)

    Apache's JIRA Issue Tracker | 8 years ago | Charles Moulliard
    java.lang.IllegalStateException: BeanFactory not initialized or already closed - call 'refresh' before accessing beans via the ApplicationContext

    2 unregistered visitors
    Not finding the right solution?
    Take a tour to get the most out of Samebug.

    Tired of useless tips?

    Automated exception search integrated into your IDE

    Root Cause Analysis

    1. java.lang.IllegalStateException

      BeanFactory not initialized or already closed - call 'refresh' before accessing beans via the ApplicationContext

      at org.springframework.context.support.AbstractRefreshableApplicationContext.getBeanFactory()
    2. Spring Context
      AbstractApplicationContext.containsBean
      1. org.springframework.context.support.AbstractRefreshableApplicationContext.getBeanFactory(AbstractRefreshableApplicationContext.java:153)
      2. org.springframework.context.support.AbstractApplicationContext.containsBean(AbstractApplicationContext.java:892)
      2 frames
    3. Apache CXF Core
      ConfigurerImpl.configureBean
      1. org.apache.cxf.configuration.spring.ConfigurerImpl.configureBean(ConfigurerImpl.java:141)
      2. org.apache.cxf.configuration.spring.ConfigurerImpl.configureBean(ConfigurerImpl.java:111)
      2 frames
    4. Apache CXF Runtime HTTP Transport
      AbstractHTTPTransportFactory.configure
      1. org.apache.cxf.transport.http.AbstractHTTPTransportFactory.configure(AbstractHTTPTransportFactory.java:229)
      2. org.apache.cxf.transport.http.AbstractHTTPTransportFactory.configure(AbstractHTTPTransportFactory.java:224)
      2 frames
    5. Apache CXF Runtime HTTP Jetty Transport
      JettyHTTPTransportFactory.getDestination
      1. org.apache.cxf.transport.http_jetty.JettyHTTPTransportFactory.createDestination(JettyHTTPTransportFactory.java:121)
      2. org.apache.cxf.transport.http_jetty.JettyHTTPTransportFactory.getDestination(JettyHTTPTransportFactory.java:103)
      2 frames
    6. Apache CXF Core
      ServerImpl.<init>
      1. org.apache.cxf.endpoint.ServerImpl.initDestination(ServerImpl.java:90)
      2. org.apache.cxf.endpoint.ServerImpl.<init>(ServerImpl.java:69)
      2 frames
    7. Apache CXF Runtime Simple Frontend
      ServerFactoryBean.create
      1. org.apache.cxf.frontend.ServerFactoryBean.create(ServerFactoryBean.java:121)
      1 frame
    8. Apache CXF Runtime JAX-WS Frontend
      JaxWsServerFactoryBean.create
      1. org.apache.cxf.jaxws.JaxWsServerFactoryBean.create(JaxWsServerFactoryBean.java:168)
      1 frame
    9. Camel :: CXF
      CxfEndpoint.createConsumer
      1. org.apache.camel.component.cxf.CxfConsumer.<init>(CxfConsumer.java:102)
      2. org.apache.camel.component.cxf.CxfEndpoint.createConsumer(CxfEndpoint.java:95)
      2 frames
    10. Camel :: Core
      DefaultCamelContext.doStart
      1. org.apache.camel.impl.EventDrivenConsumerRoute.addServices(EventDrivenConsumerRoute.java:62)
      2. org.apache.camel.Route.getServicesForRoute(Route.java:74)
      3. org.apache.camel.impl.RouteService.doStart(RouteService.java:77)
      4. org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:50)
      5. org.apache.camel.impl.DefaultCamelContext.doStart(DefaultCamelContext.java:743)
      5 frames
    11. Camel :: Spring
      SpringCamelContext.doStart
      1. org.apache.camel.spring.SpringCamelContext.maybeDoStart(SpringCamelContext.java:165)
      2. org.apache.camel.spring.SpringCamelContext.doStart(SpringCamelContext.java:160)
      2 frames
    12. Camel :: Core
      ServiceSupport.start
      1. org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:50)
      1 frame
    13. Camel :: Spring
      SpringCamelContext.onApplicationEvent
      1. org.apache.camel.spring.SpringCamelContext.maybeStart(SpringCamelContext.java:95)
      2. org.apache.camel.spring.SpringCamelContext.onApplicationEvent(SpringCamelContext.java:114)
      2 frames
    14. Spring Context
      SimpleApplicationEventMulticaster$1.run
      1. org.springframework.context.event.SimpleApplicationEventMulticaster$1.run(SimpleApplicationEventMulticaster.java:78)
      1 frame
    15. Spring Core
      SyncTaskExecutor.execute
      1. org.springframework.core.task.SyncTaskExecutor.execute(SyncTaskExecutor.java:49)
      1 frame
    16. Spring Context
      AbstractApplicationContext.finishRefresh
      1. org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:76)
      2. org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:274)
      3. org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:736)
      3 frames
    17. Spring OSGi Core
      AbstractDelegatedExecutionApplicationContext.completeRefresh
      1. org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.finishRefresh(AbstractDelegatedExecutionApplicationContext.java:380)
      2. org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext$4.run(AbstractDelegatedExecutionApplicationContext.java:346)
      3. org.springframework.osgi.util.internal.PrivilegedUtils.executeWithCustomTCCL(PrivilegedUtils.java:85)
      4. org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.completeRefresh(AbstractDelegatedExecutionApplicationContext.java:308)
      4 frames
    18. org.springframework.osgi
      DependencyWaiterApplicationContextExecutor$CompleteRefreshTask.run
      1. org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor$CompleteRefreshTask.run(DependencyWaiterApplicationContextExecutor.java:138)
      1 frame
    19. Java RT
      Thread.run
      1. java.lang.Thread.run(Thread.java:595)
      1 frame