gpt4 book ai didi

java - 如何在不使用 queryParam 的情况下设置 GWT 语言环境 onLoad?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:17:03 25 4
gpt4 key购买 nike

我的申请由几个部分组成。除了一个小的 GWT 位置之外,我想通过更改我所有应用程序中的 URL 来防止用户更改语言环境。我需要在 URL 中为该地点提供语言环境,以确保以正确的语言加载该地点。

我能做什么?

我看到以下选项:

1) 从该位置创建单独的模块,并允许在该模块的 xml 设置文件中使用 queryparam 作为语言环境源。据我了解,我需要记下类似 <set-configuration-property name="locale.searchorder" value="queryparam,cookie"/> 的内容可能它会起作用,但对于这么小的任务来说有点困难。

2) 另一种选择是手动实现所需的功能。我写了下面的代码:

String languageCode = Window.Location.getParameter("lang");
Cookies.setCookie(COOKIE_NAME, languageCode, new Date(System.currentTimeMillis() * 1000 * 3600 * 24 * 365 * 100));
Scheduler.get().scheduleDeferred(new ScheduledCommand()
{
@Override
public void execute()
{
Window.Location.reload();
}
});

它有效,但问题在于延迟调用:如果我使用它,页面加载,然后重新加载信号出现,并在页面显示后开始重新加载。用户观察到奇怪的闪烁。如果我不使用延迟调用,则不会设置 cookie,我不知道为什么(你能解释一下吗?)。

那么你将如何解决这个任务?

最佳答案

我们避免在 GWT 代码中设置 cookie。我们改为根据用户操作或设置在着陆页中设置 cookie,然后重定向到 GWT 应用程序。

第 1 步 - 登录 - JSP 页面设置 cookie 并进行身份验证。

第 2 步 - 成功时将 URL 定向到托管 GWT 应用程序的 html 文件。

第 3 步 - GWT 只需通过模块 xml 文件读取 cookie 信息即可。

在您的 .gwt.xml 文件中提供登录 jsp 正在设置的 cookie。

<set-configuration-property name="locale.cookie" value="GWT_LOCALE" />

也引用

1) GWT i18n, change metaTag and reload application

2) https://developers.google.com/web-toolkit/doc/latest/DevGuideI18nLocale

3) http://learninggwt.blogspot.in/2011/07/gwt-internationalization-and-cookies.html

关于java - 如何在不使用 queryParam 的情况下设置 GWT 语言环境 onLoad?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18381155/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com