1

我们目前有 2 台服务器运行相同的(据我所知)ColdFusion 8 的配置:

  • 相同的数据源配置
  • 相同的映射
  • 相同的 JVM 配置
  • 相同的文件夹结构
  • 相同的代码

我们正在使用 Flash 远程处理使用一个组件的数据自定义 Flash 资产。

在一台服务器上,调用工作正常:

HTTP/1.1 200 OK
Content-Length: 298
Content-Type: application/x-amf
Server: Microsoft-IIS/7.5
X-Powered-By: ASP.NET
Access-Control-Allow-Origin: *
Access-Control-Allow-Headers: X-Requested-With
Date: Thu, 10 Jan 2013 13:12:11 GMT

������
/1/onResult�null���������COPYTEXT�JIf ...

对另一个的相同调用失败:

<head><title>JRun Servlet Error</title></head><h1>500 </h1><body>
<br><pre>
java.lang.NullPointerException
    at jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:285)
    at jrun.servlet.ServletEngineService.dispatch(ServletEngineService.java:543)
    at jrun.servlet.jrpp.JRunProxyService.invokeRunnable(JRunProxyService.java:203)
    at jrunx.scheduler.ThreadPool$DownstreamMetrics.invokeRunnable(ThreadPool.java:320)
    at jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.java:428)
    at jrunx.scheduler.ThreadPool$UpstreamMetrics.invokeRunnable(ThreadPool.java:266)
    at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66)
</pre></body>

如前所述,我比较了两个盒子的配置,看起来都很好。

我还将日志记录代码添加到被调用的组件中。在工作机器上,记录已完成。在故障机器上,不会生成日志。因此,我怀疑代码根本没有得到评估。

任何线索将不胜感激。

4

1 回答 1

3

在深入检查 ColdFusion 日志时,似乎 JRUN 日志中充满了以下错误:

01/10 14:01:25 user FlashGateway: init
01/10 14:01:25 user failed to load: flashgateway.controller.GatewayServlet
01/10 14:01:25 error [Flash Remoting MX]-> Unable to load configuration. Reason: The string "--" is not permitted within comments.
[1]flashgateway.GatewayException: [Flash Remoting MX]-> Unable to load configuration. Reason: The string "--" is not permitted within comments.

然后使用比较两个配置文件,两个配置文件之间有一个字符差异: \wwwroot\WEB-INF\gateway-config.xml 故障机器:

<!---<adapter>coldfusion.flash.adapter.CFWSAdapter</adapter>--->

工作机器:

<!---<adapter>coldfusion.flash.adapter.CFWSAdapter</adapter>-->

删除额外的破折号(ColdFusion 结束注释到 HTML 结束注释)解决了这个问题。

于 2013-01-10T14:04:59.913 回答