[jboss-dev-forums] [Design of POJO Server] - ProfileService - ManagedObject impl
adrian@jboss.org
do-not-reply at jboss.com
Mon Aug 28 09:05:04 EDT 2006
To help in the implementation of the ManagedObject part of the
deployers, I've implemeted the MXBean in the mbeans module.
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3967804#3967804
The MXBean/OpenMBean has some fundamental restrictions where
we should try to go further:
1) OpenType is immutable so it is difficult/impossible to build
recursive types. e.g. class.getSuperClass()
You can't have java.lang.Class as an "attribute" of the
java.lang.Class composite type.
2) OpenType being immutable doesn't support "setters".
OpenTypes can only be set on MXBeans.
3) OpenType/CompositeType access, creates and transfers
across the wire the full graph of the object. There should be
an option for something more lazy for more complicated
and extensions object graphs.
4) OpenType has only limited support for primitives, in
general it works because of reflection, i.e. autoboxing
but there are some examples where it doesn't work,
see the javadoc above for an example.
5) No support for polymorphism.
i.e. You can have a true Object[] or BaseClass[]
because of restrictions on CompositeType "subclassing"
(being fix in the spec) and also SimpleTypes and arrays
are transfered as "raw data".
To support polymorphism, rather than the open data for a string
being a java.lang.String, it would need to be the couple
| SimpleData
| {
| SimpleType type; // SimpleType.STRING
| Object data; // java.lang.String
| }
|
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3967805#3967805
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3967805
More information about the jboss-dev-forums
mailing list