Applications are the basic building blocks of the Smart Application Model that define the way specific Content are presented and processed when addressed. Smart Pages are the most common applications but there are also special Application types that do not appear in the form of pages and return with custom response. Applications can be invoked via Actions.
The features described in this section (displaying content with Pages) are available only if you have the sensenet WebPages component installed, but the underlying philosophy of arranging applications, security and url generation applies even if you only have the core Services layer.
The simplest way to present a Content is done by placing portlets on individual pages that utilize Content presentational functionality (eg. Content viewer Portlet. However, Content can also be presented by addressing the Content itself and choosing an Application to present it. The selected Application is usually a simple page that uses Context bound Portlets to handle the addressed Content. These Applications are also referred to as Smart Pages and a single Smart Page in itself is capable of presenting many different Content of the same type. To create a Smart Page create a new Portlet Page under an (apps)/[Content Type name] folder in the Content Repository and use Context bound Portlets for Content handling.
Path of the created Application bears special importance as it defines the range of Content it is applicable to. The path of an Application can be given in the form:
Applications can be overridden in a subtree by placing an Application of the same name under an (apps) folder that is placed at a deeper level in the Content Repository and also by using the
This keyword as contenttypename. See examples and refer to Smart Application Model for a details.
To connect Content and Application - besides properly setting up the Application Model in the Content Repository - so called Actions can be used. An Action in this case is a link that addresses the Content and specifies the name of the Application, for example:
The Application is resolved then using Smart Application Model mechanisms.
Although an Application for a Content Type is usually defined as a Smart Page to present the Content, there are several other Application types defined in the system. An RssApplication for example will return the Rss feed corresponding to the addressed Content in the response. The base Content Type for Application types can be found under /Root/System/Schema/ContentTypes/GenericContent/Application. Here is a few examples of pre-defined Application types:
There is a special type of application that is a placeholder for defining an OData REST API endpoint. This is the GenericODataApplication that points to a method that will be executed when the api endpoint is called. These methods are very similar to ASP.NET web api methods, and this is how you customize and extend the REST api of sensenet.
ExploreActionsscenario appears in the Actions menu of Explore. You can read more about this at the Action reference wiki page.
?actionurl parameter that points to the Application name.
UrlActionfor containers with a custom evaluation: the upload link becomes disabled if the context folder does not allow File types to be added as child Content.
Is something missing? See something that needs fixing? Propose a change here.