Uploaded image for project: 'Magnolia DAM Module'
  1. Magnolia DAM Module
  2. MGNLDAM-718

Class cast exception in getItem of AbstractAssetContainer

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Obsolete
    • Icon: Neutral Neutral
    • None
    • 2.2.5
    • DAM External App
    • None

      Steps to reproduce extracted from comment of Panagiotis in SUPPORT-7697:

      In the attached zip files.zip , at screen1.png is where we get the exception whenever click the List View icon. If we are at the Tree View and search for an asset, it automatically swaps to the List View(Search View) without causing any issue. Also in the attached files you can see that in the SearchAssetContainer
      we extend an exact copy of info.magnolia.dam.external.app.contentview.AbstractAssetContainer with only difference line 131 where we tried to bypass the mentioned exception with a custom code. Although this works fine now for the Content App implementation, when is used as a dialog in other apps, seems that the info.magnolia.dam.external.app.contentview.AbstractAssetContainer is still called.Method info.magnolia.dam.external.app.contentview.AbstractAssetContainer.getItem(...) never called by us directly but from the Magnolia framework (probably WorkbenchPresenter or WorkbenchViewImpl) trying to pass an empty HashSet.

      Issue at line 161 of info.magnolia.dam.external.app.contentview.AbstractAssetContainer.getItem(Object)
      Grep code:

      159 @Override
      160 public BeanItem<info.magnolia.dam.api.Item> getItem(Object itemId) {
      161 if (itemId != null && ItemKey.isValid(((ItemKey) itemId).asString())) {
      162 try {
      163 info.magnolia.dam.api.Item item = getAssetProvider().getItem((ItemKey) itemId);
      163 info.magnolia.dam.api.Item item = getAssetProvider().getItem((ItemKey) itemId);
      164 return new BeanItem<info.magnolia.dam.api.Item>(item);
      165 } catch (AssetProvider.AssetNotFoundException e) {
      166 log.error("Failed to retrieve item with given id: " + e.getMessage(), e);
      167 } catch (AssetProvider.IllegalItemKeyException e) {
      168 log.error("Failed to handle item id: " + e.getMessage(), e);
      169 }
      170 }
      171 return null;
      172 }
      

        Acceptance criteria

              Unassigned Unassigned
              viet.nguyen Viet Nguyen
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved:

                  Bug DoR
                  Task DoD