2017-11-02 7 views
1

別のWebアプリケーションと統合するSiebel 7.8アプリケーションがあります。Siebel eScriptを使用して、ユーザーパスワードまたはシンボリックURLを取得できますか?

私たちのビューの1つでは、Siebelアプレットでcreating a symbolic URL and embedding itで実装しました。しかし、外部のwebappにはページ間の遷移アニメーションがあるため、Siebel(特にCTIツールバー)に問題があります。

私たちはビューからアプレットを削除し、代わりにポップアップとして開きます。ポップアップとして機能させるためには、シンボリックURLの定義を変更する必要がありました。「IFrame」の代わりに、「フォームリダイレクト」SSO処理があります。それは動作します...しかし、それはまた、私たちにいくつかの問題を与えています(ポップアップが開かれると、同じBCに基づくすべてのアプレットが変わって動作します)。

Siebelに埋め込まれたwebappが表示されなくなったので、シンボリックURLは実際には必要ありません。window.open("http://example.com");を実行することができます。しかし、我々はURLにいくつかのパラメータを渡しており、そのうちの1つは現在のユーザのパスワードです。ログイン名は、TheApplication().LoginName()で取得できます。 パスワードを取得する方法はありますか?

これまでの私の研究から、答えは「いいえ」です。これは次の質問につながります:は、サーバまたはブラウザのスクリプトから完全なシンボリックURLを取得する方法はありますか? object interfaces referenceに関連するものは何も見つかりませんが、そのための文書化されていない方法がありますか?

また、この要件を実装する別の方法がありますか? Siebelでポップアップを開くだけですが、URLには他のパラメータの中にユーザーのパスワードが含まれている必要があります。

答えて

2

これは予想よりも簡単でした。 現在のユーザーのパスワードを取得する方法があります。 Siebelの中にいつものようにUndocumentedが、それはとにかく動作します:

function getCurrentUserPassword() { 
    var service = TheApplication().GetService("Web Engine HTTP TXN"); 
    var psIn = TheApplication().NewPropertySet(); 
    var psOut = TheApplication().NewPropertySet(); 

    service.InvokeMethod("GetAllRequestParameters", psIn, psOut); 
    return psOut.GetProperty("SWEPassword"); 
} 
+1

私はこの答えを入力することを約あったと私はあなたがすでにそれを考え出し見る:) –

関連する問題