You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ignite.apache.org by "wmz7year (JIRA)" <ji...@apache.org> on 2015/11/13 07:59:10 UTC
[jira] [Created] (IGNITE-1900) Ignite JMX problem with Spring Boot
wmz7year created IGNITE-1900:
--------------------------------
Summary: Ignite JMX problem with Spring Boot
Key: IGNITE-1900
URL: https://issues.apache.org/jira/browse/IGNITE-1900
Project: Ignite
Issue Type: Bug
Components: 1.4
Affects Versions: ignite-1.4
Reporter: wmz7year
I use Ignite with Spring Boot.
When start application,Spring Boot will register JMX info.
In IgniteMXBean interface,There is two method getUserAttributesFormatted and getLifecycleBeansFormatted return Collection<String>
But In JMX DefaultMXBeanMappingFactory.makeParameterizedTypeMapping method will get method return type.
final Type rawType = objType.getRawType();
if (rawType instanceof Class<?>) {
Class<?> c = (Class<?>) rawType;
if (c == List.class || c == Set.class || c == SortedSet.class) {
Type[] actuals = objType.getActualTypeArguments();
assert(actuals.length == 1);
if (c == SortedSet.class)
mustBeComparable(c, actuals[0]);
return makeArrayOrCollectionMapping(objType, actuals[0], factory);
} else {
boolean sortedMap = (c == SortedMap.class);
if (c == Map.class || sortedMap) {
Type[] actuals = objType.getActualTypeArguments();
assert(actuals.length == 2);
if (sortedMap)
mustBeComparable(c, actuals[0]);
return makeTabularMapping(objType, sortedMap,
actuals[0], actuals[1], factory);
}
}
}
The Collection<String> will not match any type for this although IgniteKernal return type is Set.
I think IgniteMXBean interface should change Collection to Set and List
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)