1

问题:

无法从 Flex 向 java-servlet 发送 HTTP“GET”请求。

不断收到此错误消息:[RPC Fault faultString="访问 url 的安全错误" faultCode="Channel.Security.Error" faultDetail="Destination: DefaultHTTP"]

细节:

我已经使用 Flex 为客户端和 Java Web 应用程序(基于 servlet)为服务器端构建了一个国际象棋游戏。

我在我的 PC 上托管 flex-app(使用 HFS ~ HTTP 文件服务器,监听端口 80),并且 java-web-app 也在我的 PC 上运行(在 NetBeans 上使用 glass-fish 监听端口 8080)。

当我在本地运行 flex 应用程序时,从 - D://path-to/flex-app.html - 一切正常,但是,当我从 - 'http://domain-name/flex- 运行 flex 应用程序时app.html' - 我收到上面的错误,服务器上没有记录任何请求。

我试图将 crossdomain.xml 文件添加到服务器根文件夹,即使是最宽松的,也没有成功。

crossdomain.xml 文件(位于“http://localhost:8080/crossdomain.xml”)如下:

<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
    <site-control permitted-cross-domain-policies="all" />  
    <allow-access-from domain="*" to-ports="*" secure="false"/>
    <allow-http-request-headers-from domain="*" headers="*"/> 
</cross-domain-policy> 

在 flex 声明部分我有这个 httpService:

    <s:HTTPService id="loginService"
                   url="http://localhost:8080/Chess/Login" 
                   fault="onFault(event)"
                   result="login_onResult(event)"
                   resultFormat="object"
                   showBusyCursor="true"/>

感谢帮助。

4

0 回答 0