CompositeDataにSimpleType.INTEGER、SimpleType.STRINGなどのSimpleType値を含めることができることはわかっています。しかし、CompositeDataの別のインスタンスをCompositeDataに取り込むにはどうすればよいのでしょうか。例:
CompositeType type = new CompositeType("My Type", "My Type", new String[]{"item1", "item2"}, new String[]{"item1", "item2"}, new OpenType[]{SimpleType.STRING, SimpleType.STRING});
CompositeData data = new CompositeDataSupport(type, new String[]{"item1", "item2"}, new String[]{"item value 1", "item value 2"});
CompositeType compType = new CompositeType("compData", "compData", new String[]{"compItem1"}, new String[]{"compItem1"}, new OpenType[]{I_DONT_KNOW_WHAT_TO_PUT_HERE});
CompositeData compData = new CompositeDataSupport(compType, new String[]{"compData"}, data);
上記の「I_DONT_KNOW_WHAT_TO_PUT_HERE」を参照してください。CompositeDataのOpenTypeを渡す方法がわかりませんでした。そして、CompositeDataからネストされたCompositeDataのインスタンスを再帰的に取得する例を見てきました。
いくつかの参考文献:
http://docs.oracle.com/javase/6/docs/api/javax/management/openmbean/CompositeData.html http://docs.oracle.com/javase/6/docs/api/javax/management/openmbean /CompositeType.html http://docs.oracle.com/javase/6/docs/api/javax/management/openmbean/OpenType.html