1

实际上,我已将 CCAvenue JSP_Kit 集成到我的 Lifreay 门户 6.2。直到付款一切正常,这意味着在填写所有付款详细信息并提交后不会出现错误。但我们得到的响应为空。

下面是 ReponseHandler.jsp 的代码。

encResp 在付款后或取消请求后变为空。

<%
String workingKey = "working key"; //32 Bit Alphanumeric Working Key should be entered here so that data can be decrypted.
String encResp= request.getParameter("encResp");
AesCryptUtil aesUtil=new AesCryptUtil(workingKey);
String decResp = aesUtil.decrypt(encResp);
StringTokenizer tokenizer = new StringTokenizer(decResp, "&");
Hashtable hs=new Hashtable();
String pair=null, pname=null, pvalue=null;
while (tokenizer.hasMoreTokens()) {
pair = (String)tokenizer.nextToken();
if(pair!=null) {
StringTokenizer strTok=new StringTokenizer(pair, "=");
pname=""; pvalue="";
if(strTok.hasMoreTokens()) {
pname=(String)strTok.nextToken();
if(strTok.hasMoreTokens())
pvalue=(String)strTok.nextToken();
hs.put(pname, pvalue);
}
}
}
%> 
4

1 回答 1

1

在门户世界中,您通常无法访问完整的原始 HttpServletRequest。您可以通过调用来访问它

origRequest = PortalUtil.getOriginalHttpServletRequest( 
                            PortalUtil.getHttpServletRequest());

当然,这意味着您有点超出规范,但是如果您确实需要通过 servlet 参数进行通信,那可能是您唯一的选择。我还建议将此代码添加到更好的可测试/可维护位置 - 例如在 Java Portlet 类中。

这是 PortalUtil 接口

于 2015-12-18T17:57:42.423 回答