Unfortuantely JBoss/JMX does not have a good way to persist attribute changes to disk or database. I think with XMBeans you can create interceptors, but I haven't gotten this to work very well. I think there are two good solutions:
1) Modify the -service.xml file directly.
2) Create your own MBean which, through setAttribute/getAttribute saves/loads values from a database.
XMBean should be a good option to do this combined with a custom persistence manager. you can define ur custom persistence manager to extend from org.jboss.mx.persistence.PersistenceManager and override the load and store methods to retrieve/store values from DB or flat file.
My MBean is XDoclet-ed to use this persistencemanager like
* @jmx.mbean name="net.collab:type=Configuration"
* description="Configuration Bean - XMBean"