incubator-isis-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Iain Flynn <flyn...@cs.man.ac.uk>
Subject Re: Problem with non-support of Collections as arguments.
Date Fri, 08 Jul 2011 16:35:47 GMT
Hi Kevin,

The offending method actually belongs to java.util.List (so not within 
EMF) and is being called by classes within EMF's plug-in.

Thank you for the response,

- Iain.

On 08/07/2011 16:33, Kevin Meyer - KMZ wrote:
> Hi Iain,
>
> If I understand what you described originally, you have a class
> structure that looks something like:
>
> class YourDomainIsisWrapperClass extends EObjectClass {
> ...
> }
>
> where EObjectClass is any class that extends EObject (e.g. your
> generated class).
>
>
> Isis is having a problem when it introspects this
> YourDomainIsisWrapperClass, as EObject has a method "public void
> addAll(int x, java.util.Collection y)", and Isis does not support
> collections in actions.
>
> What Dan is saying is that for all methods (there may be more than
> one) that Isis can't handle because of Collection parameters, you add
> an override in YourDomainIsisWrapperClass:
>
> class YourDomainIsisWrapperClass extends EObjectClass {
> ...
>   // {{ Isis hacks
>   @Ignore
>   @Override
>   public void addAll(int x, java.util.Collection y) {
>      super.addAll(x, y);
>   }
>   //}}
> }
>
>
> The @Ignore annotation should tell Isis to not support that method as
> an action. The method does not need to be invoked, it's mere
> presence is enough to upset Isis.
>
> This solution has not been tested.
>
> This solution should also be static against changes to your generated
> EObjectClass - you will not need to reedit it as your EObjectClass is
> regenerated.
>
> Regards,
> Kevin


Mime
View raw message