×
文章路径: Flex

Flex跨域解决办法

发表于3年前(Dec 24, 2014 9:42:14 AM)  阅读 494  评论 0

分类: Flex

标签: crossdomain.xml Weblogic 跨域

Flex跨域问题很常见,网上有很多解决办法,最常见的就是配置crossdomain.xml文件,要求这个文件在服务器根目录能访问到(其实并不是一定要根目录,如果不是根目录,flex应用程序访问时得手动配置加载跨域安全文件,网上也有方法,但是我未能测试成功,所以这里就不说了)。如果是tomcat,很简单,只需要把这个文件放到webapps根目录下即可。但生产环境很少会是用tomcat的,我们基本上都是用weblogic,个别系统使用绑定的jboss。怎么把crossdomain.xml文件放到weblogic根目录,网上也有,我整理了一下,测试通过,现在把工程放上来,您可以直接下载使用。

1、新建一个ROOT文件夹,把crossdomain拷贝到这个文件夹下,文件内容如下:
<?xml version=”1.0″?>
<!DOCTYPE cross-domain-policy SYSTEM “http://www.adobe.com/xml/dtds/cross-domain-policy.dtd“>
<cross-domain-policy>
    <allow-access-from domain=”*”/>
    <allow-http-request-headers-from domain=”*” headers=”*”/>
</cross-domain-policy>
2、在ROOT\WEB-INF文件夹下新建一个weblogic.xml文件,文件的内容如下:
<!DOCTYPE weblogic-web-app PUBLIC “-//BEA Systems, Inc.//DTD Web Application 8.1//EN” “http://www.bea.com/servers/wls810/dtd/weblogic810-web-jar.dtd“>
<weblogic-web-app>
  <container-descriptor>
    <index-directory-enabled>true</index-directory-enabled>
    <default-mime-type>text/x-cross-domain-policy</default-mime-type>
  </container-descriptor>
  <context-root>/</context-root>
</weblogic-web-app>
3、在ROOT\WEB-INF目录下新建一个web.xml文件,内容如下:
<?xml version=”1.0″ encoding=”UTF-8″?>
<!DOCTYPE web-app PUBLIC “-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN ” “http://java.sun.com/dtd/web-app_2_3.dtd“>
<web-app id=”WebApp_ID”>
<display-name>root</display-name>
</web-app>
4、在WebLogic控制台安装这个应用。之后就可以通过http://<servername>:7001/crossdomain.xml访问了

工程下载:/upload/2014/11/24/ROOT.rar

发表评论