Часть моего кода:
import {Injectable} from 'angular2/core';
import {Http, Headers, Request, Response} from 'angular2/http';
import {Observable} from 'rxjs/Observable';
import 'rxjs/add/operator/map';
@Injectable()
export class myClass {
  constructor(protected http: Http) {}
  public myMethod() {
    let request = new Request({
      method: "GET",
      url: "http://my_url"
    });
    return this.http.request(request)
      .map(res => res.json())
      .catch(this.handleError); // Trouble line. 
                                // Without this line code works perfectly.
  }
  public handleError(error: Response) {
    console.error(error);
    return Observable.throw(error.json().error || 'Server error');
  }
}
 myMethod() создает исключение в консоли браузера:
ОРИГИНАЛЬНОЕ ИСКЛЮЧЕНИЕ: TypeError: this.http.request(...). map (...). catch не является функцией
