[jboss-dev-forums] [Design of Management Features on JBoss] - ManagedObject persistence for -jboss-beans.xml

bstansberry@jboss.com do-not-reply at jboss.com
Thu May 14 17:29:04 EDT 2009


Emanuel,

Still not seeing attachment persistence for the ServiceBindingManager MOs.

In Branch_5_x I've modified the way the ServiceBindingManager MOs work along the lines of what we chatted about last week. Basically the conf/bindings-jboss-beans.xml only has one bean that has @ManagedXXX annotations; the rest are pure pojos. That ServiceBindingManagementObject bean exposes a few managed properties, annotated with @MetaMapping. For most properties the result is a CollectionValue whose elements are CompositeValues.  This works fine in terms of being able to read the data via the ManagementView and pass back updates to the runtime component.

But persistence doesn't work. I get a metadata.attachments.xml like the following but that's it:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
  | <attachments-metadata xmlns="urn:org:jboss:profileservice:attachments:1.0">
  |     <deployment-name>bindings-jboss-beans.xml</deployment-name>
  |     <deployment-structure>
  |         <relative-order>0</relative-order>
  |     </deployment-structure>
  |     <last-modified>1242333438099</last-modified>
  | </attachments-metadata>

I believe the problem is the following call returns null:


  | Thread [WorkerThread#0[127.0.0.1:41261]] (Suspended)	
  | 	ManagedDeploymentImpl.getManagedObject(String) line: 212	
  | 	AbstractAttachmentStore.updateDeployment(ProfileDeployment, ManagedComponent, boolean) line: 426	
  | 	AbstractAttachmentStore.updateDeployment(ProfileDeployment, ManagedComponent) line: 342	
  | 	ManagementViewImpl.updateComponent(ManagedComponent) line: 1351	
  | 	NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not available [native method]	
  | 	NativeMethodAccessorImpl.invoke(Object, Object[]) line: 39	
  | 	DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 25	
  | 	Method.invoke(Object, Object...) line: 585	
  | 	Dispatcher.invoke(Invocation) line: 121	
  | 	ProfileServiceInvocationHandler(AOPRemotingInvocationHandler).invoke(InvocationRequest) line: 82	
  | 	ProfileServiceInvocationHandler.invoke(InvocationRequest) line: 97	
  | 	SocketServerInvoker(ServerInvoker).invoke(InvocationRequest) line: 891	
  | 	ServerThread.completeInvocation(SocketWrapper, InputStream, OutputStream, boolean, int) line: 744	
  | 	ServerThread.processInvocation(SocketWrapper, InputStream, OutputStream) line: 697	
  | 	ServerThread.dorun() line: 524	
  | 	ServerThread.run() line: 232	

The name of being looked up is "org.jboss.kernel.plugins.deployment.AbstractKernelDeployment". There is no such entry in the ManagedDeploymentImpl.unitMOs map.

The component being updated is:

org.jboss.profileservice.management.TempManagedComponentImpl at 238b1d64{name=ServiceBindingManager, type=ComponentType{type=MCBean, subtype=ServiceBindingManager}, owner=ManagedDeployment at 37134967}

It's parent is 

ManagedObject{ServiceBindingManager}

whose parent is 

ManagedObject{org.jboss.kernel.plugins.deployment.AbstractKernelDeployment}

View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4231178#4231178

Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4231178



More information about the jboss-dev-forums mailing list