code: @Override
  	public Response createApplication( Application app ) {
  
  		this.logger.fine( "Request: create application " + app + "." );
  		Response result;
  		try {
  			String tplName = app.getTemplate() == null ? null : app.getTemplate().getName();
  			String tplQualifier = app.getTemplate() == null ? null : app.getTemplate().getVersion();
  			String appName = app.getDisplayName() != null ? app.getDisplayName() : app.getName();
  			ManagedApplication ma = this.manager.applicationMngr().createApplication( appName, app.getDescription(), tplName, tplQualifier );
  			result = Response.ok().entity( ma.getApplication()).build();
  
  		} catch( InvalidApplicationException e ) {
  			result = handleError(
  					Status.NOT_FOUND,
  					new RestError( REST_MNGMT_INVALID_TPL, e, application( app )),
  					lang( this.manager )).build();
  
  		} catch( AlreadyExistingException e ) {
  			result = handleError(
  					Status.FORBIDDEN,
  					new RestError( REST_MNGMT_CONFLICT, e, application( app )),
  					lang( this.manager )).build();
  
  		} catch( IOException e ) {
  			result = handleError(
  					Status.UNAUTHORIZED,
  					new RestError( REST_SAVE_ERROR, e, application( app )),
  					lang( this.manager )).build();
  		}
  
  		return result;
  	}
docs: /*
  (non-Javadoc)
  @see net.roboconf.dm.rest.services.internal.resources.IManagementResource
  #createApplication(net.roboconf.core.model.beans.Application)