前提:
在开发基于ejb3.0的webservice时,启动jboss时绑定某个IP,比如127.0.0.1或者本机局域网地址192.168........
当flex项目部署到jboss时,只能选择其中一种才能访问webservice。
当我不想绑定IP时(或者你绑定0.0.0.0也不能解决),如何解决两种都能访问呢
解决方案:
需要给JBoss设置crossdomain.xml,将crossdomain.xml放到
jboss-4.2.3.GA\server\default\deploy\jboss-web.deployer\ROOT.war 目录中。
这样用 http://域名或IP:8080/crossdomain.xml 是可以访问到xml的
xml代码:
- <?xml version="1.0"?>
- <!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.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="*" secure="false" />
- </cross-domain-policy>
重启服务器后,问题解决
但是如果是其他机器访问本机,启动jboss还是要添加-b ***.***.***.***