Do we think that Isis should require that public methods be annotated as @Action in order to be picked up? Put another way, that @Programmatic is assumed unless @Action is specified?
Maybe we could introduce a configuration property to make this configurable, with the default currently as is? Thoughts? Dan On Mon, 9 Oct 2017 at 07:08 Jayesh Prajapati <[email protected]> wrote: > Thank you Oscar. > > Cheers, > Jayesh > > On 08-Oct-2017 8:28 PM, "Óscar Bou" <[email protected]> wrote: > > > Dear Jayesh, > > As you’ve discovered, Isis will automatically add to the metamodel as > actions all public methods on Domain Entities and Services. > > When those public methods are intended as internal methods, but you need > them to be public (due to package scope, etc.) you can annotate them with > @Programmatic, telling Apache Isis that they’re not part of your app’s > Domain metamodel. > > HTH, > > Oscar > > > > El 8 oct 2017, a las 12:15, Jayesh Prajapati <[email protected]> > escribió: > > > > Hi, > > > > I figured that above validation were applied on quartz objects because > they > > were used as argument in one of the public method of a domain service. > > > > public JobDetail createJobDetail(String name, String group, JobDataMap > > jobDataMap) { > > > > After making this method private it started working fine. Any more > > clarification/detail on above behavior is much appreciated. > > > > Cheers, > > Jayesh > > > > On Sun, Oct 8, 2017 at 2:21 PM, Jayesh Prajapati <[email protected]> > > wrote: > > > >> Hi, > >> > >> I am using v1.15.0 along with quartz addon. While starting below errors > >> are reported. > >> > >> ################################################ ISIS METAMODEL > >> VALIDATION ERRORS ############################## > >> ################################## > >> > >> org.quartz.JobDataMap#clearDirtyFlag: has prefix clear, is probably > >> intended as a supporting method for a property, collection or action. > If > >> the method is intended to be an action, then rename and use > >> @ActionLayout(named="...") or ignore completely using @Programmatic > >> org.quartz.utils.DirtyFlagMap#clearDirtyFlag: has prefix clear, is > >> probably intended as a supporting method for a property, collection or > >> action. If the method is intended to be an action, then rename and use > >> @ActionLayout(named="...") or ignore completely using @Programmatic > >> org.quartz.utils.StringKeyDirtyFlagMap#clearDirtyFlag: has prefix clear, > >> is probably intended as a supporting method for a property, collection > or > >> action. If the method is intended to be an action, then rename and use > >> @ActionLayout(named="...") or ignore completely using @Programmatic > >> > >> Please inspect the above messages and correct your domain model. > >> > >> ################################################ ISIS METAMODEL > >> VALIDATION ERRORS ############################## > >> ################################## > >> > >> > >> These classes are part of Quartz library and hence I cannot attach > >> Programmatic annotation. > >> > >> Question is why metamodel validations are applied on classes under > >> org.quartz package? > >> > >> Any way to skip this validation will help greatly. As of now this is > >> blocking access to Wicket UI. As a workaround I am initializing quartz > on > >> click of an action/button. > >> > >> Thanks, > >> Jayesh > >> >
