如何知道Jpos中的请求者是谁?

时间:2015-08-05 05:08:01

标签: java jpos

我有一个使用jpos的程序,我想过滤所以我的服务器只响应特定的IP或端口。

如何知道消息来自哪里?这是我的简单代码

    public class ServerListener implements ISORequestListener {

    private final static Logger logger = LoggerFactory.getLogger(ServerListener.class);

    @Override
    public boolean process(ISOSource requester, ISOMsg reqMsg) {

    logger.debug("Heder Destinatnion " +reqMsg.getISOHeader().getDestination());

    logger.debug("Heder Source " +reqMsg.getISOHeader().getSource());
    return false
    }
    }

仅显示日志

Heder Destinatnion = null

Heder Source = null

1 个答案:

答案 0 :(得分:1)

如果您的ISOSource实施实际上是一个扩展BaseChannel的频道(大多数频道实施延伸BaseChannel),那么您可以将ISOSource投射到BaseChannel并使用BaseChannel.getSocket()获取对底层套接字的引用。

如果您使用的是QServer,则可以使用allow属性配置允许的主机。

当然,您可以使用防火墙。