Eine von uns entwickelte Salesforce Applikation kommt im Partner Portal zum Einsatz.
Diese beinhaltet unter anderem eine Visualforce Seite mit einer integrierten Flex-Applikation.
Folgendes Abbild stellt das gesamte Konstrukt vereinfacht dar.
Diese beinhaltet unter anderem eine Visualforce Seite mit einer integrierten Flex-Applikation.
Folgendes Abbild stellt das gesamte Konstrukt vereinfacht dar.
Die Flex-Applikation bedient sich der Daten aus der aktuellen Salesforce-Instanz.
Fehler
im Partner-Portal kann trotz der aktivierten API-Einstellung keine Datenabfrage erfolgen
Ursache
der Controller der Visualforce-Seite übergibt den "falschen" Endpoint an die Flex App.
Im Partner-Portal Context sieht die URL (in einer Sandbox) so aus:
https://full-myorg-fullsb.cs80.force.com
und wird wie folgt berechnet:
System.URL.getSalesforceBaseUrl().getHost();
Lösung
Statt Partner-Portal-URL muss die Salesforce-Instanz-URL eingesetzt werden:
https://cs80.force.com
Diese lässt sich wie folgt vom Controller berechnen
ApexPages.currentPage().getHeaders().get('X-Salesforce-Forwarded-To');
Kommentare
Kommentar veröffentlichen