[
https://issues.apache.org/jira/browse/ARIES-98?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12796484#action_12796484
]
Rex Wang commented on ARIES-98:
-------------------------------
Yes, that is a limitation of the MBean, and not a problem of Blueprint, so I
agree with Alasdair that we should not doc this as a best practice, although
the muti-inline managers seems really not a good style.
The essential issue is what said by Jarek. That is, in openmbean's
CompositeType, we can not define an item that represents a value with an
uncertain type. So we have to uniform it as a Byte[]. Actually when firstly
implement this way, we try it in Java 6, which support the primitive ArrayType.
But Java 5 don't. Hence we move it to Byte[]. I am also not comfortable with
this work around.
I think Jarek's solution is better on performance. I would like to have a try
and then provide a patch. So until we get an acceptable solution on this
problem I'd like to keep this JIRA as open. Could anybody assign this to me?
Thanks :-)
-Rex
> Blueprint MetadataMBean cannot handle multiple-nesting blueprint component
> definitions
> --------------------------------------------------------------------------------------
>
> Key: ARIES-98
> URL: https://issues.apache.org/jira/browse/ARIES-98
> Project: Aries
> Issue Type: Bug
> Components: Blueprint
> Affects Versions: Incubation
> Environment: Linux i386
> Sun jdk1.5.0_16
> Reporter: Forrest Xia
>
> When a blueprint config has multiple-nesting components definition, for
> example as follows, then the BlueprintMetadataMBean will return a huge
> java.lang.Byte[], in my case, it's more than 5 millions, thus cause JMX
> client application(e.g JConsole) hangs.
> <?xml version="1.0" encoding="UTF-8"?>
> <blueprint default-activation="eager" default-availability="optional"
> default-timeout="300000"
> xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0">
> <description>Apache Aries Blueprint Complex Sample -
> Client</description>
> <bean id="bean1"
> class="org.apache.aries.blueprint.sample.complex.client.temp.Bean1"
> init-method="startUp">
> <argument>
> <bean
> class="org.apache.aries.blueprint.sample.complex.client.temp.Bean2"
> init-method="startUp">
> <argument>
> <bean
> class="org.apache.aries.blueprint.sample.complex.client.temp.Bean3"
> init-method="startUp">
> <argument>
> <bean
> class="org.apache.aries.blueprint.sample.complex.client.temp.Bean4"
> init-method="startUp">
> <argument>
> <bean
> class="org.apache.aries.blueprint.sample.complex.client.temp.Bean5"
> init-method="startUp">
>
> <argument>
>
> <bean
> class="org.apache.aries.blueprint.sample.complex.client.temp.Bean6"
> init-method="startUp">
>
> <argument value="This is Bean6!"/>
>
> </bean>
>
> </argument>
> </bean>
> </argument>
> </bean>
> </argument>
> </bean>
> </argument>
> </bean>
> </argument>
> </bean>
> </blueprint>
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.