在 JSF 页面之间传输 Java 个对象
Transfer Java object between JSF pages
我尝试在 JSF 中实现 flash。如果我必须在一个会话中的页面之间传输 Java 对象,它工作得很好。但是我有一个特殊的情况需要解决。
我有一个用户输入个人数据的提交表单。然后他打开第二个页面,用于打开支付网关(paypal)页面。应用付款后,Paypal 会将用户重定向回新网页中的网站。
我需要一些方法来在第一页和最后一页之间传输 Java 对象数据。有什么解决办法吗?
我正在使用 JSF 2.2.6 和 Tomcat 8.
我想将 paypal 重定向到您的站点会创建一个新会话,如果是这种情况,您所要做的就是创建一个 DTO 对象并使用序列化将会话 ID 存储到 BD 中 Java Serializable Object to Byte Array
但是如果 paypal 在同一个会话中调用,你所要做的就是像这样从会话中获取对象
FacesContext facesContext = getFaceContext();
Application app = facesContext.getApplication();
ExpressionFactory elFactory = app.getExpressionFactory();
ELContext elContext = facesContext.getELContext();
ExternalContext externalContext = facesContext.getExternalContext();
HttpSession session = (HttpSession) externalContext.getSession(true);
session.setMaxInactiveInterval(-1);
ValueExpression valueExp = elFactory.createValueExpression(elContext, expression, Object.class);
YourBean yourBean = (YourBean) valueExp.getValue("#{yourBean}");
这个bean的作用域一定是@SessionScoped
我尝试在 JSF 中实现 flash。如果我必须在一个会话中的页面之间传输 Java 对象,它工作得很好。但是我有一个特殊的情况需要解决。
我有一个用户输入个人数据的提交表单。然后他打开第二个页面,用于打开支付网关(paypal)页面。应用付款后,Paypal 会将用户重定向回新网页中的网站。
我需要一些方法来在第一页和最后一页之间传输 Java 对象数据。有什么解决办法吗? 我正在使用 JSF 2.2.6 和 Tomcat 8.
我想将 paypal 重定向到您的站点会创建一个新会话,如果是这种情况,您所要做的就是创建一个 DTO 对象并使用序列化将会话 ID 存储到 BD 中 Java Serializable Object to Byte Array
但是如果 paypal 在同一个会话中调用,你所要做的就是像这样从会话中获取对象
FacesContext facesContext = getFaceContext();
Application app = facesContext.getApplication();
ExpressionFactory elFactory = app.getExpressionFactory();
ELContext elContext = facesContext.getELContext();
ExternalContext externalContext = facesContext.getExternalContext();
HttpSession session = (HttpSession) externalContext.getSession(true);
session.setMaxInactiveInterval(-1);
ValueExpression valueExp = elFactory.createValueExpression(elContext, expression, Object.class);
YourBean yourBean = (YourBean) valueExp.getValue("#{yourBean}");
这个bean的作用域一定是@SessionScoped