0

我可以使用以下几行将我的混合 android 应用程序与 Kaazing 连接起来:

 var jmsConnectionFactory;
 jmsConnectionFactory = new JmsConnectionFactory("ws://10.0.2.2:8888/jms");
 var connectionFuture = jmsConnectionFactory.createConnection(null, null, function () {/*something is done here*/}

gateway-config.xml 的行是:

<service>
<name>JMS Service</name>
<description>JMS Service</description>   
 <accept>ws://10.0.2.2:8888/jms</accept>
<type>jms</type>

<properties>
  <connection.factory.name>GenericConnectionFactory</connection.factory.name>
  <context.lookup.topic.format>%s</context.lookup.topic.format>
  <context.lookup.queue.format>%s</context.lookup.queue.format>

  <env.java.naming.factory.initial>com.tibco.tibjms.naming.TibjmsInitialContextFactory</env.java.naming.factory.initial>
  <env.java.naming.provider.url>tcp://localhost:7222</env.java.naming.provider.url>
  <destination.strategy>session</destination.strategy>
</properties>
<accept-options>
  <ws.bind>localhost:8888</ws.bind>
</accept-options>
<realm-name>demo</realm-name>
<cross-site-constraint>
  <allow-origin>*</allow-origin>      
</cross-site-constraint>

这是错误

ConnectionFailedException : WebSocket connection failed"

最糟糕的是它工作正常,我能够连接,但现在无法正常工作。

我所做的是升级我的nodejs安装的cordova来升级它。现在我把所有东西都带回来了,但它不起作用。

4

1 回答 1

1

在我下面所说的内容中,KAAZING_GATEWAY_HOME 表示您安装 Kaazing JMS 网关的目录。

有几个活动部分 - 客户端、Kaazing JMS 网关和 EMS 后端。问题可能是 Kaazing JMS 网关连接到后端的 EMS,或者客户端尝试连接到 Kaazing JMS 网关可能存在问题。目前还没有太多细节。为了让我们进行故障排除,提供更多详细信息的一种方法是使 Kaazing JMS 网关上的日志记录更加详细。

日志默认写入 KAAZING_GATEWAY_HOME/log/。那里有几个,但主要日志是error.log。它的默认 LOG4J 配置位于 KAAZING_GATEWAY_HOME/conf/log4j-config.xml 中。您可以通过将该文件的内容替换为以下内容来获得有关两端连接问题的更多诊断信息(您可以制作备份副本以稍后恢复默认日志配置):

<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
    <appender name="ErrorFile" class="org.apache.log4j.RollingFileAppender">
        <param name="File" value="${GATEWAY_LOG_DIRECTORY}/error.log"/>
        <param name="Append" value="false"/>
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d [%t] %-5p %m%n"/>
        </layout>
    </appender>

    <appender name="STDOUT" class="org.apache.log4j.ConsoleAppender">
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d [%t] %-5p %m%n"/>
        </layout>
    </appender>

    <logger name="transport">
        <level value="trace"/>
    </logger>

    <logger name="com.kaazing.gateway.jms">
        <level value="trace"/>
    </logger>

    <logger name= "service.stomp.jms">
        <level value="trace"/>
    </logger>

    <logger name= "service.jms">
        <level value="trace"/>
    </logger>

    <root>
        <priority value="info"/>
        <appender-ref ref="ErrorFile"/>
        <appender-ref ref="STDOUT"/>
    </root>

</log4j:configuration>

将其复制到位后,请尝试再次连接。如果您在网关中看到来自客户端的连接尝试没有记录,这意味着客户端代码或配置、客户端和网关之间或客户端计算机本身存在问题。否则,请分享更新结果。结果应该带有时间戳,以便您可以判断哪些日志条目对应于您的连接尝试。

你可以在这里分享你的日志,或者直接通过下面的地址给我。

请随时通知我们。最好的问候,丹史密斯,Kaazing 全球支持 daniel.smith@kaazing.com

于 2016-05-02T18:08:10.380 回答