Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Injectors repository and how to fetch injector

Once the injector is created in your activator, it must be stored somewhere, so that it can be reused to provide models for you components. Thanks to this, there will be no need to recreate injector for every subsequent request. The place where created and configured injectors live is called Injectors Repository.

...

<slice:lookup> allows you to specify which injector to choose (using its appName property). However, if you leave it blank, the tag will try to detect the application name. It's done by going up in the content tree and looking property called injectorName. If no injectorName property has been found, the appName is computed basing on the current resource path - it is part of path directly after apps. For /apps/testApp/... it will return testApp. Therefore, it is suggested to call the injector after the name of the application in the content structure. Additionally, the name of the app (if not defined) is being found only once per request and then cached (to avoid content traversing). If an application uses various app names at the same time, the appName attribute must be explicitly defined so that a proper app name is selected

Execution stack

Execution stack is something very internal in Slice - you will never ever see it in action. However, it's really worth knowing that Slice is based on it and what exactly you can achieve thanks to it.

...