Overview of concepts

This part of the Developer's Guide provides an overview of the basic concepts that form the programming model for building IBM® WebSphere® sMash applications. It includes an overview of the conventions and configuration for WebSphere sMash applications.

Basic Concepts
WebSphere sMash has an event driven architecture and utilizes Representational State Transfer (REST) concepts that are reflected in its programming model. This section also describes how to build Groovy, PHP or Java based handlers. It also describes the application directory layout and the concept of virtualized directories that allow seamless integration of the application with its dependencies.
Configuration
Properties and behavior of a WebSphere sMash application can be specified in configuration files.
REST based programming
WebSphere sMash simplifies the task of creating applications using the Representational State Transfer (REST) architectural style. This article describes the conventions and programming model to build and access RESTful resources.
Web serving conventions
WebSphere sMash allows developers to build applications using conventional Web based programming techniques in addition to REST based programming. This article describes some of the conventions and API to work with web content.
Fetching remote resources
The connection infrastructure provides a simple way to make REST-style requests to resources using a variety of protocols.
Considerations for deploying WebSphere sMash applications
There are a few aspects that need to be taken in to consideration when deploying a WebSphere sMash application in production. These include the hosting environment, transport security requirements, whether the applications are to be fronted by a Proxy Server, tuning the application and the environment. These aspects are covered in this article.
Security considerations
WebSphere sMash implements system-level authentication and authorization. Applications can take advantage of WebSphere sMash security by defining security rules that determine which resources are protected, by what means they are protected, and what users and groups are allowed to access those resources. The following sections of this article provide information about authentication, authorization and requiring SSL.

Version 1.1.0.0.21442