Java 从会话中获取服务器名称

Java 从会话中获取服务器名称,java,session,xpages,lotus-domino,xpinc,Java,Session,Xpages,Lotus Domino,Xpinc,在服务器开发中驻留在数据库中的托管bean中,我有以下代码: s = ExtLibUtil.getCurrentSession(); theMap.put("Server Name", s.getServerName()); 运行此操作后,当我查看地图时,会看到服务器名称,该值为空。在此之后,我获得了一个datbase RepID,然后尝试使用RepID打开数据库 appDB = s.getDbDirectory(null).openDatabaseByReplicaID(repID);

在服务器开发中驻留在数据库中的托管bean中,我有以下代码:

s = ExtLibUtil.getCurrentSession();
theMap.put("Server Name", s.getServerName());
运行此操作后,当我查看地图时,会看到服务器名称,该值为空。在此之后,我获得了一个datbase RepID,然后尝试使用RepID打开数据库

appDB = s.getDbDirectory(null).openDatabaseByReplicaID(repID);
                if (appDB.isOpen()){
                    theMap.put(thisKey, repID); 
                }else{
                    theMap.put("DB " + thisKey, "Is Not Open");
                }
如果我在本地有一个数据库的rep副本,它就会打开它;如果我删除了本地副本,打开就会失败。如果我将行更改为:

appDB = s.getDbDirectory("Development").openDatabaseByReplicaID(repID);

正确的appDB将打开。因此,会话似乎认为它正在本地运行,因为它为服务器名返回null。这真的很奇怪,我是不是错过了什么?目前,我刚刚在getDbDirectory中硬编码了服务器名称,但这在现实世界中不起作用。

这是XPiNC吗?这将考虑数据库在本地运行,除非您已经将应用程序属性“服务器上运行的基于XPERS的XPERS”设置为

< P>这是XPNC吗?这将考虑数据库在本地运行,除非您已经将应用程序属性“服务器上运行的基于XPERS的XPERS”设置为

< P>这是XPNC吗?这将考虑数据库在本地运行,除非您已经将应用程序属性“服务器上运行的基于XPERS的XPERS”设置为

< P>这是XPNC吗?这将考虑数据库在本地运行,除非您已经将应用程序属性“服务器上运行的基于XPERS的XPERS”设置为“/P>”。有时看不见树林,就是这样。有时看不见树林,就是这样。有时看不见树林,就是这样。有时看不见森林,看不见树木。
String serverName = s.getEnvironmentString("ServerName", true);
or
String serverName = s.getEnvironmentString("ServerKeyFileName_Owner", true);