gpt4 book ai didi

java - 在 Google App Engine 中使用命名空间进行 Multi-Tenancy

转载 作者:行者123 更新时间:2023-12-01 10:32:43 25 4
gpt4 key购买 nike

我想使用 Multi-Tenancy ,为此我使用命名空间。我面临的问题是,每次设置 namespace 时,它都会返回到 null。我为应用程序上的每个 URL 调用此过滤器,例如在登录页面上。当我验证登录信息时,我应该获取用户登录并设置命名空间。这是正确完成的,但之后..当我回到另一个 URL“NamespaceManaget.get()”上的该方法时返回 null。

这是我的 MultitenancyServlet 的代码

public class MultiTenancyServlet implements Filter {

@Override
public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws IOException, ServletException {
String client = req.getParameter("login");
String nameSpace = NamespaceManager.get();

if(nameSpace == null){
NamespaceManager.set(client);
}
chain.doFilter(req, resp);
}

@Override
public void destroy() {
// TODO Auto-generated method stub

}

@Override
public void init(FilterConfig arg0) throws ServletException {
// TODO Auto-generated method stub

}
}

有人知道我为什么会遇到这个问题吗?

最佳答案

命名空间需要根据每个请求进行设置,因为您的应用程序实例应该没有状态。

Multi tenancy documentation中的示例代码确实显示了空检查,但这是为了检查在同一请求中执行的另一个过滤器是否已经将命名空间设置为其他内容 - 而不是先前的请求设置了命名空间。

关于java - 在 Google App Engine 中使用命名空间进行 Multi-Tenancy ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35004966/

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