我必须在Tomcat 6.0.24上部署一个webapp,提供一些应该使用REST风格的方法访问的Web服务(不完全是REST,因为使用的flex类HTTPService只能发送GET和POST)。
网络服务部署在http://localhost:8080/-webappname-/rest/-methodname-
问题是flex sandbox的策略(我认为它是这样的)要求具有服务的服务器必须在其根目录上提供文件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="*" />
<allow-http-request-headers-from domain="*" headers="*"/>
</cross-domain-policy>
现在我必须找到合适的位置,因为我还在该机器上运行了一个apache服务器,在端口80上:
http://localhost/
http://localhost:8080/
我正在测试它,它似乎不起作用。也许我做得不对。 PS:我认为Apache没有配置为管理Tomcat寻址的请求,我认为每个请求都是由端口调度的。 我不能提供精确的flex错误,因为我没有开发那部分。我将尝试在接下来的几个小时内做一个最小的例子,看看我能否重现这个问题。
答案 0 :(得分:2)
只要URL请求“http:// localhost:8080 / crossdomain.xml”返回正确的文件,实际上在哪里粘贴(无论物理上)都无关紧要。