Wildfly 8.2 Remoting - 打开太多频道

时间:2015-08-12 21:23:51

标签: java jboss wildfly remoting

下面是我的远程配置,当我进行远程处理时一切正常。问题是在某个时刻,有太多的频道打开,因此其他远程调用失败了。

为解决此问题,我尝试在finally语句中关闭上下文并解决此问题:

INFO  [org.jboss.ejb.client.remoting] 
    (Remoting "config-based-ejb-client-endpoint" task-9) 
EJBCLIENT000016: 
    Channel Channel ID c50b300b (outbound) of Remoting connection 
    29298b25 host/127.0.0.1:8080 can no longer process messages
...failed with exception -: 
        java.lang.IllegalStateException: 
        EJBCLIENT000027: No EJBReceiver available for node name  
String info = "remote.connection.default";
props.put(info + ".host", StringUtils.substringBefore(url, ":"));
props.put(info + ".port", StringUtils.substringAfter(url, ":"));
props.put(info + ".username", "username");
props.put(info + ".password", "password");
props.put(info + ".connect.options.org.xnio.Options.SASL_POLICY_NOANONYMOUS", "true");
props.put(info + ".connect.options.org.xnio.Options.SASL_POLICY_NOPLAINTEXT", "false");
props.put("remote.connectionprovider.create.options.org.xnio.Options.SSL_ENABLED", "false");
props.put(Context.URL_PKG_PREFIXES, "org.jboss.ejb.client.naming");
props.put("org.jboss.ejb.client.scoped.context", "true");

InitialContext ctx = new InitialContext(props);

我该如何解决这个问题?我错过了一处房产吗?如何在没有此问题的情况下关闭ejb上下文?

谢谢

2 个答案:

答案 0 :(得分:0)

在静态Map的帮助下,我能够在以后关闭Context。

答案 1 :(得分:0)

有一种静态方法

EJBClientContext.getCurrent().close();