[ https://issues.apache.org/activemq/browse/SM-883?page=com.
atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Guillaume Nodet updated SM-883:
-------------------------------
Fix Version/s: (was: incubation)
3.1.2
> MBean registration in Websphere returns different
objectName
>
------------------------------------------------------------
>
> Key: SM-883
> URL: http
s://issues.apache.org/activemq/browse/SM-883
> Project: ServiceMix
> Issue Type: Improvement
> Components: servicemix-core
> Affects Versions: 3.0.1, 3.1
> Environment: Windows XP SP1, Ubuntu Linux, Java
1.5
> Reporter: Grant McDonald
> Assigned To: Grant McDonald
> Fix For: 3.1.2, 3.2
>
> Attachments: PatchTo3.0.1.zip,
PatchToCurrentVersion.zip, SM-883-MBeanRegistration.patch
>
> Original Estimate: 2 hours
> Remaining Estimate: 2 hours
>
> Description courtesy of David Potter:
> When running serviceMix V3.0 on WebSphere 6.1.0.0 I get
the following error
> after stopping and starting serviceMix from the
WebSphere console.
> ERROR - ContextLoader - Context
initialization failed
>
org.springframework.beans.factory.BeanCreationException:
Error creating bean
> with name 'jbi' defined in ServletContext resource
> [/WEB-INF/servicemix.xml]: Invocation of init method
failed;
> nested exception is
> javax.jbi.JBIException:
javax.management.InstanceAlreadyExistsException:
>
org.apache.servicemix:Name=ManagementContext,cell=SD1464Node
01Cell,Type=SystemService,ContainerName=ServiceMix,node=SD14
64Node01,process=server1
> I have traced the error to the fact that when you
register an mbean IBM adds
> additional information to the bean. So when serviceMix
regesters the bean
>
org.apache.servicemix:Name=ManagementContext,Type=SystemServ
ice,ContainerName=ServiceMix
> IBM, in the method
>
com.ibm.ws.management.PlatformMBeanServer.registerMBean(Plat
formMBeanServer.java:469)
> , adds the attributes cell=SD1464Node01Cell,
> node=SD1464Node01,process=server1
> These means that when we try to unregister the bean on
application shutdown
> we cannot find it (as we look the been up by name).
> Solution Ideas:
> 1) In AsyncBaseLifeCycle.doInit() use queryNames()
instead of isRegistered().
> Care would need to be taken in unregistering the bean
is case the bean is
> not ours.
> 2) After a bean is registered, update its name (or the
complete bean) with the
> name of the bean returned by the register operation.
(this is preferred)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue
online.
|