3

Alfresco Exlplorer の解決策を見つけるのは簡単ですが、Alfresco Share が Web ブラウザのロケール設定に関係なく、特定の言語のみを使用するにはどの方法が適切でしょうか?

4

4 に答える 4

8

Alfresco をどのようにデプロイしたかによって異なりますが、クライアントと Alfresco サーバーの間に HTTP プロキシ/ロード バランサーを配置することが標準的な方法である運用環境で作業していると仮定すると、いくつかの選択肢があります。

Share は Web ブラウザーから送信されたヘッダーに応答するAccept-Languageため、これに基づいて言語を切り替えることを防ぐために、Accept-Language着信クライアント要求からヘッダーを削除するようにプロキシを構成できます。

たとえば、次のような構成でmody_proxyと一緒に使用できる Apache を使用します。mod_headers

ProxyPass / http://localhost:8080/
ProxyPassReverse / http://localhost:8080/
RequestHeader unset Accept-Language

最初の 2 行は、Apache (ポート 80 で実行されている可能性が高い) からポート 8080 で Alfresco をホストする Tomcat インスタンスにリクエストをプロキシし、3 行目はAccept-Languageヘッダーを削除します。

共有は、Alfresco が実行されている Java プロセスのロケールにデフォルト設定されるため、これが米国英語 ( en-US) に設定されていることを確認する必要があります。

于 2013-04-08T10:28:35.540 に答える
6

シェアは の上にあるものに基づいてSpring SurfSpring MVCます。デフォルトでは、組み込みAcceptHeaderLocaleResolverが使用されます。それをオーバーライドするにはorg.springframework.extensions.surf.mvc.LocaleResolver、上記のように拡張する Bean を定義するだけです。

によってインポートされた構成ファイルに Bean 宣言を追加します。slingshot-application-context.xml

<!-- Override Locale Resolver -->
<bean id="localeResolver" class="mypackage.CustomLocaleResolver" />

新しい LocaleResolver 実装クラスを追加します

    package mypackage;

    import java.util.Locale;
    import javax.servlet.http.HttpServletRequest;
    import org.springframework.extensions.surf.mvc.LocaleResolver;
    import org.springframework.extensions.surf.util.I18NUtil;

    public class CustomLocaleResolver extends LocaleResolver {

    public Locale resolveLocale(HttpServletRequest request) {
        Locale locale = Locale.FRENCH;
        I18NUtil.setLocale(locale);

        return locale;
        }
    }
于 2013-07-24T14:52:38.217 に答える
1

他のすべての *.properties ファイルを削除する最も簡単な方法です。

共有は、web-client-config.xml ファイルに対する Explorer のようには見えません。

したがって、次のようなスクリプトfind . -name *_<language>.properties -exec rm -rf {} \;

于 2013-04-08T08:23:34.330 に答える