2017-03-31 9 views
0

最近、WPS v7.0からv8.5にアップグレードしました。ポートレットとコードの一部を更新して、新しいプラットフォーム(v8.5)で互換性を持ち作業を進めました。しかし、いくつかの情報を探しているという点で、いくつかの特異な振る舞いを見出しました。ここではそれが行く:WebSphere Portal 8.5 +アクションURL +にコンテキスト・パスのCookie値が含まれています

前提は:これらのポートレットは、以前のWPSのV7の

などオハイオ州のためのああNYニューヨークのためのを、例えばコードの形で地域のためにクッキーを使用しています。 0の場合、生成されたポートレットアクションURLの形式は、

http://<host>:<port>/wps/portal/!ut/p/b1/04_SjzQ0M....などとなりました。

新しいプラットフォーム(v8.5)では、URLは以下のフォームと少し異なります。今独特の部分に来る

http://<host>:<port>/wps/portal/oh/!ut/p/z1/pZBNCsIwE...(オハイオ州の場合)

http://<host>:<port>/wps/portal/ny/!ut/p/z1/pZBNCsIwE...(ニューヨークの場合)

。 8.5のURLには、コンテキストの一部としてクッキー値(この場合はオハイオ州ではoh)が含まれています。

ActionURLタグと他のURL実装クラス(BasicURLImpl, BaseURLImpl, PortletURLProviderImpl)のログをトレースして確認しましたが、生成されている間にクッキー値がどのように動作しているかについては何のヒントも見つかりませんでした。

EDIT: 私は(この記事次WebSphere Portal decode url)のURLをデコードすることができたとクッキーの値が共有パラメータ(グローバル)(参照:IBM WebSphere Portal Remote State Service and Fragment Service)として予定されていることを見た国民はレンダリング・パラメーターとして、私はそれらを考慮。ここでは、以下のデコードURL出力からのサンプルの抜粋:この時点で

<shared-parameters id="global"> 
    <shared-parameter nsuri="http://www.ibm.com/xmlns/prod/websphere/portal/publicparams" localpart="path-info"> 
     <value>oh</value> 
    </shared-parameter> 
</shared-parameters> 

は、私の意見は何とか値はパラメータをレンダリングするパブリックとして設定されていますが、方法がわからないされているクッキーです。

私たちの目標は、Cookieの値をURLの一部として持たないことです。設定や設定などの手掛かりや、望ましい結果を得るための手助けとなるものは感謝しています。

ありがとうございました。

答えて

0

actionURLの作成によってデバッグした後、クッキーの値が、以下の観測されたパスでフレンドリーなパスとして渡されていることがわかります。今のところ、これらの値がどのようにフレンドリーなパスとして渡されているかについての考えはありません。

最後に問題は今WAS管理コンソールで次のプロパティを追加することで固定されている
PortletURLImpl 
    .provider 
        .request (PortletRequestWRapper). 
            .request(ExtendedLocaleRequest). 
                .request(ExtendedLocaleRequest). 
                    .request(FriendlySelectionHttpServletRequestWrapper) 
                        .friendlyPath= /oh 
                        .contextPath = /wps 
                        .originalPathInfo =  / 
                        .pathInfo =/
                        .servletPath= /portal 
                        .request (MappingURLRequestWrapper) 
                            .contextPath = /wps 
                            .servletPath= /portal 
                            .originalPathInfo = /oh 

リソース環境プロバイダーの下で

>WP ConfigService>カスタムプロパティ

追加プロパティ

名前:friendly.pathinfo

false説明:URLマッピングとフレンドリーなURLはURLの一部として、コンテンツアイテムへのパス情報を含めることができるかどうか

値を.enabled。

関連する問題