5

我用 struts 1 配置了 zk。我创建了一个列表并在会话中设置。

List<String> nameList = new ArrayList<String>();
nameList.add( "xxx" );
nameList.add( "yyy" );
nameList.add( "nnn" );
nameList.add( "ddd" );

request.getSession().setAttribute("NAMES_LIST", nameList);

现在从zul我试图获取会话值的文件中。我怎么做?

4

2 回答 2

3

您必须在 zk 会话上调用 getNativeSession,然后将其转换为 struts 正在使用的 javax.servlet.http.Session。

试图将 zk 与 struts 混合使用是没有意义的。使用 zk 做任何你需要做的事情并更新 zk 组件,浏览器将自动更新。将数据放入旧式表单以发送到服务器然后更新页面是旧式编程,并且效率低于 zk 事件驱动编程,您只需更新 zk 桌面(无需考虑页面)并更新屏幕。您的使用可以整天以丰富的行为工作,而无需发布与 struts 交互的表单。

于 2010-12-20T21:07:39.710 回答
3

ZK session 是 HttpSession 之上的一个包装对象,所以访问是一样的。对于 EL,只需使用 sessionScope,例如 ${sessScope['xxx']}。

在 Java 中,只需使用 getAttribute。要获取会话对象,您可以调用 Sessions.getCurrent()。

希望能帮助到你。

于 2010-08-07T02:59:24.363 回答