ColdFusion 10 CFC Web服务因javax.servlet.ServletException而失败:禁止使用https

时间:2013-07-29 22:17:47

标签: coldfusion coldfusion-10

这个问题类似于下面的链接,主要关注Java:

Web service authentication using https giving error

但是,这个问题是ColdFusion 10特有的,上面问题的答案只是暗示了ColdFusion 10中的解决方案。

问题: 您有一个Web服务CFC,它完全通过http(端口80)工作。当您尝试通过https(端口443)运行相同的Web服务时,Web服务将失败。 IIS或ColdFusion中的错误不是很有用。如果查看异常日志,您将找到如下错误消息:

javax.servlet.ServletException:禁止使用https

问题的原因是“transportReceiver”设置为默认情况下仅使用http与ColdFusion 10一起使用。

1 个答案:

答案 0 :(得分:4)

对于Windows:

打开文件{cfusionhome} \ cfusion \ wwwroot \ WEB-INF \ axis2.xml

搜索以下行:

<transportReceiver name="http"
                   class="coldfusion.xml.rpc.CFAxisServletListener"/>

将该行替换为:

<!--    <transportReceiver name="http"
                   class="coldfusion.xml.rpc.CFAxisServletListener"/> -->

<transportReceiver name="http" class="coldfusion.xml.rpc.CFAxisServletListener">
    <parameter name="port">80</parameter>
</transportReceiver>

<transportReceiver name="https" class="coldfusion.xml.rpc.CFAxisServletListener">
    <parameter name="port">443</parameter>
</transportReceiver>

然后重新启动“ColdFusion 10 Application Server”服务。