Eai galera,
Eu estou desenvolvendo uma aplicação que necessita capturar um ApplicationContext que já foi iniciado por outra aplicação…no caso esta aplicação é um ContentManager(Alfresco).
Eu estive olhando sua API(Alfresco) e achei algumas classes mas nao achei nada que resolve-se o meu problema…pois qdo eu instancio
ApplicationContext ctx = ApplicationContextHelper.getApplicationContext();
//AplicationContextHelper é uma classe do Alfresco
Ao invés dele pegar o ApplicationContext que esta rodando, pois, o servidor esta “no ar”…ele inicia outra instancia.
10:10:23,062 WARN [remoting.rmi.RmiRegistryFactoryBean] Could not detect RMI registry - creating new one
10:10:27,000 WARN [alfresco.util.OpenOfficeConnectionTester] A connection to OpenOffice could not be established.
10:10:31,468 INFO [domain.schema.SchemaBootstrap] Schema managed by database dialect org.hibernate.dialect.MySQLInnoDBDialect.
10:10:34,812 INFO [domain.schema.SchemaBootstrap] No changes were made to the schema.
10:10:38,625 INFO [repo.admin.ConfigurationChecker] The Alfresco root data directory ('dir.root') is: E:\Alfresco\alf_data
10:10:38,781 INFO [admin.patch.PatchExecuter] Checking for patches to apply ...
10:10:39,562 INFO [repo.module.ModuleServiceImpl] Found 0 module(s).
10:10:40,000 INFO [service.descriptor.DescriptorService] Alfresco JVM - v1.5.0_11-b03; maximum heap size 63,563MB
10:10:40,000 WARN [service.descriptor.DescriptorService] Alfresco JVM - WARNING - maximum heap size 63,563MB is less than recommended 512MB
10:10:40,000 INFO [service.descriptor.DescriptorService] Alfresco started (Community Network): Current version 2.1.0 (482) schema 64 - Installed version 2.9.0 (B 683) schema 116
Isto ocorre qdo o servidor do Alfresco nao esta rodando. Qdo ele esta no ar e eu executo este codigo…acontece o seguinte erro!!
Exception in thread "main" org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'serverConnector' defined in class path resource [alfresco/core-services-context.xml]: Invocation of init method failed; nested exception is java.io.IOException: Cannot bind to URL [rmi://localhost:50500/alfresco/jmxrmi]: javax.naming.NameAlreadyBoundException: alfresco/jmxrmi [Root exception is java.rmi.AlreadyBoundException: alfresco/jmxrmi]
Caused by: java.io.IOException: Cannot bind to URL [rmi://localhost:50500/alfresco/jmxrmi]: javax.naming.NameAlreadyBoundException: alfresco/jmxrmi [Root exception is java.rmi.AlreadyBoundException: alfresco/jmxrmi]
at javax.management.remote.rmi.RMIConnectorServer.newIOException(Unknown Source)
at javax.management.remote.rmi.RMIConnectorServer.start(Unknown Source)
at org.springframework.jmx.support.ConnectorServerFactoryBean.afterPropertiesSet(ConnectorServerFactoryBean.java:168)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1118)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1085)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:429)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:250)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:141)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:247)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:161)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:270)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:346)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:92)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:77)
at org.alfresco.util.ApplicationContextHelper.getApplicationContext(ApplicationContextHelper.java:55)
at org.alfresco.sample.WorkflowApd.main(WorkflowApd.java:68)
Caused by: javax.naming.NameAlreadyBoundException: alfresco/jmxrmi [Root exception is java.rmi.AlreadyBoundException: alfresco/jmxrmi]
at com.sun.jndi.rmi.registry.RegistryContext.bind(Unknown Source)
at com.sun.jndi.toolkit.url.GenericURLContext.bind(Unknown Source)
at javax.naming.InitialContext.bind(Unknown Source)
at javax.management.remote.rmi.RMIConnectorServer.bind(Unknown Source)
... 15 more
Caused by: java.rmi.AlreadyBoundException: alfresco/jmxrmi
at sun.rmi.registry.RegistryImpl.bind(RegistryImpl.java:123)
at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
at sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:375)
at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:240)
at sun.rmi.transport.Transport$1.run(Transport.java:153)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:466)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:707)
at java.lang.Thread.run(Thread.java:595)
at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(Unknown Source)
at sun.rmi.transport.StreamRemoteCall.executeCall(Unknown Source)
at sun.rmi.server.UnicastRef.invoke(Unknown Source)
at sun.rmi.registry.RegistryImpl_Stub.bind(Unknown Source)
... 19 more
Será que existe alguma função no pacote springframework que verifica se existe algum ApplicationContext rodando e que me retorne o mesmo ? Acho que assim resolveria meu problema!! Esta aplicação que eu estou criando no momento esta standalone…eu irei passa-la para web utilizando-a em um applet!!
Vlw :?