Use the Model Action Access builder to manually add action names to the list of public actions in a model.
Typically in IBM® WebSphere® Portlet Factory the actions that need to be public are automatically determined. However, if an incoming request tries to invoke a model action that is not deemed public, that request is not allowed to access the requested action, and results in a security exception being thrown.
Use this builder if an incoming action is not referred to by any action builders (for example, Button and Link) and the incoming URL is not generated by WebSphere Portlet Factory. (This might be the case when access is by a bookmark). This builder adds the names of specified actions to a list of actions stored on the WebApp property, bowstreet.PublicActions
. In WebSphere Portlet Factory, this list is used at runtime to allow access to actions in the model. If an external request is not in this list, access to the action is denied.
By default, the public action list on the WebApp is populated automatically by the following actions.
- All pages in the model are added to the list.
- Special action names are added to the list. For example: main, _pageDispatcher and _bowstreet_show_current_page.
- Actions that are referenced by builders (for example, Button and Link) that extend the BaseWebAppActionBuilder class are added to the list.
- At runtime, the URL Mapper adds to the list when the URL being generated is known to be for the current WebApp.
There is also a global list of actions that contains entries that specify a model and action name that are public. This list is populated only by the URL Mapper when a URL is being generated for a model and action that is not the current WebApp.
Actions available as a REST service call
If you use this builder to make an action in your model available as a REST service call, you can pass arguments by URL and manually fetch parameters from the incoming request. For more information, see Passing Arguments to a Method Via URL section of the Executing model actions topic.
Parent topic: Builder help
About using the builder call editor
Executing model actions
Generating URLs to model actions