简体   繁体   English

经纪人已创建的JMS

[英]Broker Already Created JMS

I am trying to deploy my application to a Glassfish 3.2 server. 我正在尝试将我的应用程序部署到Glassfish 3.2服务器上。 When I do, I get the following messages in my logs: 当我这样做时,我在日志中收到以下消息:

16:01:37.591 [admin-thread-pool-4848(3)] INFO  j.resourceadapter.mqjmsra.lifecycle.start - SJSMQ LifecycleManagedBroker configuration=
brokerInstanceName       =imqbroker
brokerBindAddress        =null
brokerPort               =7676
brokerHomeDir            =/opt/glassfish3/mq
brokerLibDir             =/opt/glassfish3/mq/lib
brokerVarDir             =/opt/glassfish3/glassfish/domains/medallion/imq
brokerJavaDir            =/usr/java/jdk1.6.0_26/jre
brokerArgs               =null
MasterBroker             =null
brokerId                 =null
adminUsername            =admin
adminPassword            =<default>
adminPassFile            =null
ConnectionURL            =
dbType                   =null
dbProps                  ={}
dsProps                  ={}
useJNDIRmiServiceURL     =true
useSSLJMXConnector       =true
brokerEnableHA           =false
clusterId                =null
rmiRegistryPort          =8686
startRmiRegistry         =false
brokerStartTimeout       =  jmxServiceURL            =null
    60000

Now right after this is where things go a bit crazy: 现在在这之后事情变得有些疯狂:

16:01:37.608 [admin-thread-pool-4848(3)] ERROR j.e.r.r.c.sun.enterprise.connectors.log - RAR6035 : Resource adapter start failed. 
javax.resource.spi.ResourceAdapterInternalException: java.security.PrivilegedActionException: javax.resource.spi.ResourceAdapterInternalException: MQJMSRA_RA4001: start:Aborting:Exception starting EMBEDDED broker=Cannot create broker instance.  A broker instance is already created.
    at com.sun.enterprise.connectors.jms.system.ActiveJmsResourceAdapter.startResourceAdapter(ActiveJmsResourceAdapter.java:373) ~[jms-core.jar:3.1.2.1-SNAPSHOT]
    at com.sun.enterprise.connectors.ActiveOutboundResourceAdapter.init(ActiveOutboundResourceAdapter.java:129) ~[connectors-runtime.jar:3.1.2.1-SNAPSHOT]
    at com.sun.enterprise.connectors.inbound.ActiveInboundResourceAdapterImpl.init(ActiveInboundResourceAdapterImpl.java:90) [connectors-inbound-runtime.jar:3.1.2.1-SNAPSHOT]
    at com.sun.enterprise.connectors.ActiveRAFactory.instantiateActiveResourceAdapter(ActiveRAFactory.java:135) [connectors-runtime.jar:3.1.2.1-SNAPSHOT]
    at com.sun.enterprise.connectors.ActiveRAFactory.createActiveResourceAdapter(ActiveRAFactory.java:106) [connectors-runtime.jar:3.1.2.1-SNAPSHOT]
    at com.sun.enterprise.connectors.service.ResourceAdapterAdminServiceImpl.createActiveResourceAdapter(ResourceAdapterAdminServiceImpl.java:212) [connectors-runtime.jar:3.1.2.1-SNAPSHOT]
    at com.sun.enterprise.connectors.service.ResourceAdapterAdminServiceImpl.createActiveResourceAdapter(ResourceAdapterAdminServiceImpl.java:348) [connectors-runtime.jar:3.1.2.1-SNAPSHOT]
    at com.sun.enterprise.connectors.ConnectorRuntime.createActiveResourceAdapter(ConnectorRuntime.java:357) [connectors-runtime.jar:3.1.2.1-SNAPSHOT]
    at com.sun.enterprise.connectors.service.ConnectorService.loadDeferredResourceAdapter(ConnectorService.java:183) [connectors-runtime.jar:3.1.2.1-SNAPSHOT]
    at com.sun.enterprise.connectors.ConnectorRuntime.loadDeferredResourceAdapter(ConnectorRuntime.java:1262) [connectors-runtime.jar:3.1.2.1-SNAPSHOT]
    at com.sun.enterprise.connectors.inbound.ConnectorMessageBeanClient.getActiveResourceAdapter(ConnectorMessageBeanClient.java:286) [connectors-inbound-runtime.jar:3.1.2.1-SNAPSHOT]
    at com.sun.enterprise.connectors.inbound.ConnectorMessageBeanClient.setup(ConnectorMessageBeanClient.java:184) [connectors-inbound-runtime.jar:3.1.2.1-SNAPSHOT]
    at com.sun.ejb.containers.MessageBeanContainer.(MessageBeanContainer.java:205) [ejb-container.jar:3.1.2.1-SNAPSHOT]
    at com.sun.ejb.containers.ContainerFactoryImpl.createContainer(ContainerFactoryImpl.java:121) [ejb-container.jar:3.1.2.1-SNAPSHOT]
    at org.glassfish.ejb.startup.EjbApplication.loadContainers(EjbApplication.java:230) [ejb-container.jar:3.1.2.1-SNAPSHOT]
    at org.glassfish.ejb.startup.EjbDeployer.load(EjbDeployer.java:305) [ejb-container.jar:3.1.2.1-SNAPSHOT]
    at org.glassfish.ejb.startup.EjbDeployer.load(EjbDeployer.java:108) [ejb-container.jar:3.1.2.1-SNAPSHOT]
    at org.glassfish.internal.data.ModuleInfo.load(ModuleInfo.java:186) [internal-api.jar:3.1.2.1-SNAPSHOT]
    at org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:264) [internal-api.jar:3.1.2.1-SNAPSHOT]
    at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:460) [kernel.jar:3.1.2.1-SNAPSHOT]
    at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:240) [kernel.jar:3.1.2.1-SNAPSHOT]
    at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:389) [deployment-admin.jar:3.1.2.1-SNAPSHOT]
    at com.sun.enterprise.v3.admin.CommandRunnerImpl$1.execute(CommandRunnerImpl.java:348) [kernel.jar:3.1.2.1-SNAPSHOT]
    at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:363) [kernel.jar:3.1.2.1-SNAPSHOT]
    at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1085) [kernel.jar:3.1.2.1-SNAPSHOT]
    at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1200(CommandRunnerImpl.java:95) [kernel.jar:3.1.2.1-SNAPSHOT]
    at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1291) [kernel.jar:3.1.2.1-SNAPSHOT]
    at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1259) [kernel.jar:3.1.2.1-SNAPSHOT]
    at com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:461) [kernel.jar:3.1.2.1-SNAPSHOT]
    at com.sun.enterprise.v3.admin.AdminAdapter.service(AdminAdapter.java:212) [kernel.jar:3.1.2.1-SNAPSHOT]
    at com.sun.grizzly.tcp.http11.GrizzlyAdapter.service(GrizzlyAdapter.java:179) [grizzly-utils.jar:1.9.50]
    at com.sun.enterprise.v3.server.HK2Dispatcher.dispath(HK2Dispatcher.java:117) [kernel.jar:3.1.2.1-SNAPSHOT]
    at com.sun.enterprise.v3.services.impl.ContainerMapper$Hk2DispatcherCallable.call(ContainerMapper.java:354) [kernel.jar:3.1.2.1-SNAPSHOT]
    at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:195) [kernel.jar:3.1.2.1-SNAPSHOT]
    at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:860) [grizzly-http.jar:1.9.50]
    at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:757) [grizzly-http.jar:1.9.50]
    at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1056) [grizzly-http.jar:1.9.50]
    at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:229) [grizzly-http.jar:1.9.50]
    at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137) [grizzly-framework.jar:1.9.50]
    at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104) [grizzly-framework.jar:1.9.50]
    at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90) [grizzly-framework.jar:1.9.50]
    at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79) [grizzly-http.jar:1.9.50]
    at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54) [grizzly-framework.jar:1.9.50]
    at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59) [grizzly-framework.jar:1.9.50]
    at com.sun.grizzly.ContextTask.run(ContextTask.java:71) [grizzly-framework.jar:1.9.50]
    at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532) [grizzly-utils.jar:1.9.50]
    at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513) [grizzly-utils.jar:1.9.50]
    at java.lang.Thread.run(Thread.java:662) [na:1.6.0_26]
Caused by: java.security.PrivilegedActionException: null
    at java.security.AccessController.doPrivileged(Native Method) ~[na:1.6.0_26]
    at com.sun.enterprise.connectors.jms.system.ActiveJmsResourceAdapter.startResourceAdapter(ActiveJmsResourceAdapter.java:357) ~[jms-core.jar:3.1.2.1-SNAPSHOT]
    ... 47 common frames omitted
Caused by: javax.resource.spi.ResourceAdapterInternalException: MQJMSRA_RA4001: start:Aborting:Exception starting EMBEDDED broker=Cannot create broker instance.  A broker instance is already created.
    at com.sun.messaging.jms.blc.LifecycleManagedBroker.start(LifecycleManagedBroker.java:458) ~[imqjmsra.jar:na]
    at com.sun.messaging.jms.ra.ResourceAdapter.start(ResourceAdapter.java:383) ~[imqjmsra.jar:na]
    at com.sun.enterprise.connectors.jms.system.ActiveJmsResourceAdapter$1.run(ActiveJmsResourceAdapter.java:364) ~[jms-core.jar:3.1.2.1-SNAPSHOT]
    ... 49 common frames omitted
Caused by: java.lang.IllegalAccessException: Cannot create broker instance.  A broker instance is already created.
    at com.sun.messaging.jmq.jmsclient.runtime.impl.BrokerInstanceImpl.createInstance(BrokerInstanceImpl.java:136) ~[imqjmsra.jar:na]
    at com.sun.messaging.jmq.jmsclient.runtime.impl.ClientRuntimeImpl.createBrokerInstance(ClientRuntimeImpl.java:82) ~[imqjmsra.jar:na]
    at com.sun.messaging.jms.blc.EmbeddedBrokerRunner.createTheInVMBrokerInstance(EmbeddedBrokerRunner.java:291) ~[imqjmsra.jar:na]
    at com.sun.messaging.jms.blc.EmbeddedBrokerRunner.(EmbeddedBrokerRunner.java:130) ~[imqjmsra.jar:na]
    at com.sun.messaging.jms.blc.LifecycleManagedBroker.start(LifecycleManagedBroker.java:449) ~[imqjmsra.jar:na]
    ... 51 common frames omitted

Does anyone have insight on how such a situation could be created? 有人对如何造成这种情况有见识吗? How is it possible that 2 brokers could be created? 如何创建两个经纪人? Google is a bit light on people reporting this issue. Google对报告此问题的人有些反感。 Not really sure where to begin. 不太确定从哪里开始。

I am using ActiveMQ, so when it starts talking about an Aborting:Exception starting EMBEDDED in the exception, that is what concerns me. 我正在使用ActiveMQ,因此当它开始谈论在Aborting:Exception starting EMBEDDED开头的Aborting:Exception starting EMBEDDED ,这就是我所关心的。

The solution is simple: Remove the glassfish/domains/domain1/imq/instances/imqbroker/lock file and restart the server. 解决方案很简单:删除glassfish / domains / domain1 / imq / instances / imqbroker / lock文件并重新启动服务器。

http://www.adam-bien.com/roller/abien/entry/if_your_glassfish_v2_1 http://www.adam-bien.com/roller/abien/entry/if_your_glassfish_v2_1

Seems like you are running the Glassfish embedded broker (which is named imqbroker), but want to run the ActiveMQ resource adapter. 似乎您正在运行Glassfish嵌入式代理(名为imqbroker),但是想要运行ActiveMQ资源适配器。 I remember, that we had a similar stacktrace when trying to get ActiveMQ running in Glassfish 4. We got most informative help from this post , but for ActiveMQ in Glassfish 3 there are probably other posts more helpful. 我记得,当试图在Glassfish 4中运行ActiveMQ时,我们也有类似的stacktrace。我们从这篇文章中获得了最有用的帮助,但是对于Glassfish 3中的ActiveMQ,可能还有其他更有用的文章。 Very important is in any case to set the correct resource adapter. 无论如何都要设置正确的资源适配器,这一点非常重要。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM