Hey Everyone, I'm having some issues. I have a plugin which basically only has a global configuration that provides access to a mongo database other plugins can make use of to store data with via a simple interface. I am having an issue with the rendering of the configuration screen
The main plugin simply just extends Plugin and has a config.jelly with the following to show a list of possible datasources *<j:jelly xmlns:j="jelly:core" xmlns:st="jelly:stapler" xmlns:d="jelly:define" xmlns:l="/lib/layout" xmlns:t="/lib/hudson" xmlns:f="/lib/form">* * <f:section title="NoSQL Configuration: ${it.provider}">* * <f:dropdownDescriptorSelector field="provider" title="Database selection" descriptors="${it.getAllProviders()}"/> * * </f:section>* *</j:jelly>* I't populates and renders the list of my describable objects just fine, and i can see that the values do get persisted in the xml file on my jenkins instance. However, when the i reload and go back to see the configuration all the fields are blank in the configuration for my describable object. I have overriden the following methods in the Plugin Implemention: * @Override* * public void configure(StaplerRequest req, JSONObject formData) throws IOException, ServletException, Descriptor.FormException {* * super.configure(req, formData); //To change body of generated methods, choose Tools | Templates. * * provider = req.bindJSON(NoSQLProvider.class, formData.getJSONObject("provider"));* * save();* * }* * @Override* * public void start() throws Exception {* * super.start(); //To change body of generated methods, choose Tools | Templates.* * load();* * }* The base implementation of my describable object looks like this: *public abstract class NoSQLProvider implements Describable<NoSQLProvider>, Serializable {* * public abstract <T> T create(T t) throws NoSQLDataException;* * public abstract <T> T read(Object key, Class<T> clazz) throws NoSQLDataException;* * public abstract static class NoSQLDescriptor extends Descriptor<NoSQLProvider> {* * public static ExtensionList<NoSQLDescriptor> all() {* * return Jenkins.getInstance().getExtensionList(NoSQLDescriptor.class);* * }* * }* *}* I also tried all sorts of things, one of the was calling load() in the constructor of my desribables, for example for MongoDB i have the following descriptor: * @Extension* * public static final class MongoProviderDescriptor extends NoSQLDescriptor {* * public MongoProviderDescriptor() {* * load();* * }* * @Override* * public String getDisplayName() {* * return "MongoDB";* * }* * } * What am i missing here? I've done this before...but i can't figure out what keeps this from working :) Best regards, Mads [image: ____________________________________________________________] Mads Nielsen Consultant m...@praqma.net +45 50 98 18 09 <+45%2050%2098%2018%2009> Skype: inkspot Praqma www.praqma.com Allerød Stationsvej 4 DK-3450 Allerød +45 36 77 27 62 <+45%203677%202762> <http://www.code-conf.com/> -- You received this message because you are subscribed to the Google Groups "Jenkins Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/CAFariutcTZrnq-JdTmVNuw0nO2CZrf0D7ydnAFHLWcqK8cW9LQ%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.