xpages在不使用url参数的情况下从智能卡传递值

时间:2014-12-08 13:44:53

标签: xpages smartcard url-parameters

当xpage加载到浏览器中时,它会检查引用者是否包含字符串“TranslateForm”。

return facesContext.getExternalContext().getRequest().getHeader("Referer");

如果它不包含我的字符串,它会重定向到URL“Home?RequestCert& SubmitCert& TranslateForm = CertSubmitTranslation”,然后重定向到它通过初始测试的xpage。我可以轻松地从Home表单中获取信息,该表单从智能卡中捕获信息(例如CommonName),然后通过附加字符串“?CN =”+ document.forms [0] .CommonName.value 将其作为URL参数传递。 p>

然后,我可以显然捕获该附加值,并在处理xpage时执行我想要的操作。 我想要做的是捕获CommonName字段并将其保存在后端而不使用URL参数。我不希望用户能够看到它或在源中查找隐藏字段。

1 个答案:

答案 0 :(得分:0)

行。我为解决这个问题所做的是在启动页面时使用URL参数:

document.location = "/path/db.nsf/xpage.xsp?CN=" + document.forms[0].CommonName.value;

我创建了一个值为0的Counter字段。

然后,在xpage的BeforePageLoad事件中,我运行了一个脚本,首先确定Counter是否为0.如果Counter仍为0,那么我测试了URL中是否有该参数。 如果是这样,我将该值写入后端文档,递增计数器并保存。

document1.replaceItemValue("CI", context.getUrlParameter("CI"));

然后在没有URL参数的情况下以编辑模式重新加载xpage /文档。