当前位置: 代码迷 >> Lotus >> xpage怎么获得当前url的port number端口号
  详细解决方案

xpage怎么获得当前url的port number端口号

热度:509   发布时间:2016-05-05 06:42:51.0
xpage如何获得当前url的port number端口号。
比如我的浏览器打开的网址是
https://mmm.corp.com:81/cc.nsf/%24%24OpenDominoDocument.xsp?documentId=3A47BD1C3BF869DD48257C4C001EBBB0&action=openDocument

如何获得这个81?

困了好久了。求解哈。

以下我试过,都只能获得
https://mmm.corp.com/cc.nsf/%24%24OpenDominoDocument.xsp?documentId=3A47BD1C3BF869DD48257C4C001EBBB0&action=openDocument

都拿不到81端口。

有:
context.getUrl().toString()
facesContext.getExternalContext().getRequest().getRequestURL()

分不够,再加。
------解决方案--------------------
试试这个: facesContext.getExternalContext().getRequest().getServerPort();
------解决方案--------------------
引用:
Quote: 引用:

试试这个: facesContext.getExternalContext().getRequest().getServerPort();


得到的port是80,不是我要的81啊。


那真是它的系统Bug了, 你只好在客户端页面里计算(用window.location.href字符串计算)出来,并把值写入一个字段,需要把这个字段放到一个你需要提交的区域(整个Form或部分刷新区域),比如,这个字段绑定到viewScope.ServerPort,然后你的其它代码引用viewScope.ServerPort。
------解决方案--------------------
xpages应该不会有这样的bug。你是不是通过代理服务器或防火墙端口映射访问的domino? 如果domino server本身确实开启了80作为http端口,那么用server side JS只能取到80,想取到81只能用client side JS。
  相关解决方案