Uploaded image for project: 'Tapestry 5'
  1. Tapestry 5
  2. TAP5-2276

Error loading asset from inherited component from different library

VotersWatch issueWatchersLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    Description

      I use component inheritance in my project. Parent component 'Dialog' is located in library 'common'. It uses asset 'common.js' located in META-INF/assets/common/common.js. When I use it in page it works fine, but if I use inherited component FormDialog located in my application components folder, I get error: 'Unable to locate asset 'common.js' for component request/Create:contractorcreatedialog. It should be located at META-INF/assets/common.js'. Inherited component doesn't contain any @Import annotations.
      This error occurs because method getComponentAsset(...) in AssetSourceImpl uses ComponentResources of inherited component when calculates asset path and gets incorrect (empty in my case) library path prefix instead of super component library name.

      Attachments

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            Unassigned Unassigned
            vvv Vladimir Velikiy
            Votes:
            1 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment