gpt4 book ai didi

java - 在 Vaadin 8 中传递和接收数据

转载 作者:行者123 更新时间:2023-12-02 02:12:18 26 4
gpt4 key购买 nike

我有一个观点:

@SpringUI(path="order")
@Title("order")
public class OrderGUI extends UI{

我会将参数传递给其他人:

@SpringUI(path="orderNumber")
@Title("Order number")
public class GetOrderNumber extends UI {

我尝试通过以下方式发送参数(orderNumber):

getUI().getPage().setUriFragment(orderNumber);
getUI().getPage().setLocation("orderNumber");

然后它会转到 /orderNumber 但当尝试通过以下方式捕获它时:

String fragment = getPage().getUriFragment();

但是

System.out.println("Fragment: " + fragment);

表示Fragment: null

如何将参数从一个 Vaadin View 发送到另一个 Vaadin View ?

@编辑离上类很近。我已将 View 更改为:

@SpringView(name = "GetOrderNumber")
@Title("Order number")
public class GetOrderNumber extends VerticalLayout implements View {

并在@SpringUI中做了getUI().getNavigator().navigateTo("GetOrderNumber/"+ orderNumber);
它实际上仍然抛出java.lang.IllegalArgumentException:尝试导航到未知状态''并且错误 View 提供程序不存在但它可以工作。我的意思是当我每次访问 localhost:8080/order

@SpringUI(path="order")
public class OrderGUI extends UI {

抛出一个错误,但随后按预期工作 - 转到右侧查看并传递参数。我不知道为什么 navigator = new Navigator(this, this); 导致错误

最佳答案

@SpringUI 注释始终只定义 View 的名称,它不是您提供 URI 参数的位置,正确的位置是 navigatorTo(..) 方法,例如:

getUI().getNavigator().navigateTo("myview/someparameter");

这里有关于 Vaadin 和 Spring 插件的更多信息

https://vaadin.com/docs/v8/framework/advanced/advanced-spring.html

关于java - 在 Vaadin 8 中传递和接收数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49841698/

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