2

私は統合にかなり慣れていませんが、セールスフォースでまともな開発経験があります。セールスフォースでパワーポイントのプレゼンテーションを生成する必要がありますが、現在、セールスフォースで直接生成する方法はないようです。そこで私はグーグルで調べて、pptを生成するいくつかのJavaクラスを見つけました。これで、EclipseのローカルマシンでこれらのJavaを実行し、pptを生成できるようになりました。

Javaクラスをどこに置くべきかを理解するのに助けが必要ですか?Heroku ?? それを行う方法もわかりません。セールスフォースのApexコードは、HerokuにアップロードされたJavaクラスと通信できますか?

これに関するどんな助けも本当にappriciated。

よろしくサム

4

1 に答える 1

5

はい、これは間違いなく可能です。SalesforceとHerokuの間に特別な通信はありませんが、2つは通常のHTTPAPIを使用して相互に通信できます。これを行うには、次のことを行う必要があります。

  1. Herokuで実行されているWebサービスでPPTジェネレーターを公開します。まず、HerokuのJava入門の記事またはPlay入門をご覧ください。Herokuの記事で、基本的なHTTPアプリをHerokuで起動して実行します。次に、PPTジェネレータークラスをアプリにドロップし、それらにアクセスするためのエンドポイントを作成します。たとえば、でエンドポイントを作成して、PPTにアクセスすると、HTTP応答で生成され、返されるようにすることができます/ppthttps://example.herokuapp.com/pptもちろん、サービスに動的PPTを提供させることもできますが、この例では単純なままにしておきます。

  2. ApexからHerokuアプリを呼び出します。これを行うには、ApexドキュメントのHTTPRESTfulサービスクラスを確認してください。たとえば、Apexで次のようなことを行うことができます。

    Http h = new Http();
    
    HttpRequest req = new HttpRequest();
    req.setEndpoint('https://example.herokuapp.com/ppt');
    req.setMethod('GET');
    
    HttpResponse res = h.send(req);
    res.getBody();
    

これらのPPTが機密である場合は、2つのシステム間で何らかの認証スキームを使用することもできます。そうしないと、エンドポイントに到達した人は誰でもPPTを取得できます。私は少なくともあなたのサービスを保護するために共有秘密で基本認証を使用しますが、必要に応じてもっと凝ったものを使用することもできます。

上で説明したのはすべてバックエンドAPIですが、HerokuでもサービスのUIを作成し、Salesforceユーザーに公開したい場合は、新しいForce.comCanvasを確認することをお勧めします。フレームワーク

于 2013-02-11T17:12:46.070 に答える