[ 
https://issues.apache.org/jira/browse/ISIS-1739?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dan Haywood updated ISIS-1739:
------------------------------

I think that Erik also reported (on mailing list?) that he's seeing getXxx() 
being called even when hideXxx() returns true.

> DisableXxx() method is always called while hideXxx() returns true
> -----------------------------------------------------------------
>
>                 Key: ISIS-1739
>                 URL: https://issues.apache.org/jira/browse/ISIS-1739
>             Project: Isis
>          Issue Type: Bug
>          Components: Core: Viewer: Wicket
>    Affects Versions: 1.15.0
>            Reporter: Erik de Hair
>             Fix For: 1.16.0
>
>
> I have a contributed action that must be rendered on the first parameter's 
> page (OrderAbstract) on top of the page but shouldn't be rendered on the 
> other parameter's page.
> public Blob downloadDealerQuotationAsPdf(final OrderAbstract order, final 
> Contact recipient){
>      Blob quotation = ...
>      return quotation;
> }
> public String disableDownloadDealerQuotationAsPdf(final OrderAbstract order, 
> final Contact recipient){
>      if(order.getOrderLines().isEmpty()){
>          return "No orderline added yet");
>      }
>      return null;
> }
> public boolean hideDownloadDealerQuotationAsPdf(final OrderAbstract order, 
> final Contact recipient) {
>      return order == null || !order.getCompany().hasDealer();
> }
> As far as I can see the disableXXX method wouldn't be called in Apache Isis 
> 1.14.x when the Contact page was rendered, because this was suppressed by the 
> fact that the action was already hidden by the hiddenXXX method. But now 
> they're both called but when rendering the
> Contact page it will fail due to a NPE on the first line of the disableXXX 
> method so I have to change this method to
> public String disableDownloadDealerQuotationAsPdf(final OrderAbstract order, 
> final Contact recipient){
>      if(order == null){
>          return "Some dummy reason";
>      }
>      // actual disable conditions
>      ...
> }



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to