gpt4 book ai didi

java - 如何在 vaadin 7 中正确浏览身份验证 View

转载 作者:行者123 更新时间:2023-12-01 18:49:58 24 4
gpt4 key购买 nike

我正在尝试从登录 View 导航到另一个 View ...此过程是通过我编写的身份验证方法进行的。我可以从登录 View 访问另一个 View ,但是,当我刷新窗口时,我收到一个丑陋的异常,告诉我没有我想要访问的此类 View 。我已经尝试过有 2 个 UI。一个用于登录,另一个用于其他所有内容,在第一个中,我想通过 setContent() 方法设置另一个 UI,但我给了我更丑陋的异常,然后我发现它是被禁止的或类似的东西,所以我用 View 和导航器再次尝试但失败了。请你帮助我好吗?我的用户界面中设置导航器的代码如下..

navigator = new Navigator(this, this);

navigator.addView("",new LoginView());

在我调用的身份验证方法中:

getUI().getNavigator().addView("kniznica", new LoggedInView());
getUI().getNavigator().navigateTo("kniznica");

向用户界面添加新 View ,然后导航至该 View 。

刷新称为“kniznica”的 View 后出现异常:

java.lang.IllegalArgumentException: Trying to navigate to an unknown state 'kniznica' and an error view provider not present
at com.vaadin.navigator.Navigator.navigateTo(Navigator.java:525)
at com.vaadin.ui.UI.doInit(UI.java:534)
at com.vaadin.server.AbstractCommunicationManager.getBrowserDetailsUI(AbstractCommunicationManager.java:2468)
at com.vaadin.server.AbstractCommunicationManager.handleBrowserDetailsRequest(AbstractCommunicationManager.java:2362)
at com.vaadin.server.VaadinServlet.service(VaadinServlet.java:325)
at com.vaadin.server.VaadinServlet.service(VaadinServlet.java:201)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:722)

最佳答案

可能没有首先导航到登录 View 。试试这个:

public static String LOGINVIEW ="LoginView";
public static String LOGGEDINVIEW = "kniznica";

navigator = new Navigator(this, this);

navigator.addView(LOGINVIEW ,new LoginView());
navigator.navigateTo(LOGINVIEW );

在认证方法调用中:

getUI().getNavigator().addView(LOGGEDINVIEW, new LoggedInView());
getUI().getNavigator().navigateTo(LOGGEDINVIEW);

关于java - 如何在 vaadin 7 中正确浏览身份验证 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16199996/

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