我先是在 Flex Builder 做了一个小的 swf 文件,调试一切正常,可以 Java EE 应用程序通讯。
当把这个 swf 嵌入到 Servlet 后,一运行就提示安全错误:
Fault faultString="Security error accessing url"
faultCode="Channel.Security.Error"
faultDetail="Destination: DefaultHTTP"
这个错误已经是很普遍的问题了,在网上一搜就一大堆答案。Adobe 官方及各地高手的答案都是一个,就是在 网站根目录放上一个 crossdomain.xml 文件,里面的内容大同小异,基本就是:
<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<!-- This is a master socket policy file -->
<!-- No other socket policies on the host will be permitted -->
<site-control permitted-cross-domain-policies="master-only"/>
<!-- Instead of setting to-ports="*", administrator's can use ranges and commas -->
<!-- This will allow access to ports 123, 456, 457 and 458 -->
<!-- <allow-access-from domain="swf.example.com" to-ports="123,456-458" /> -->
<allow-access-from domain="*" to-ports="*" />
<allow-http-request-headers-from domain="*" />
<!-- <allow-http-request-headers-from domain="*" headers="*" secure="false" /> -->
</cross-domain-policy>
那我就如法炮制,在我的APP上放上这个 crossdomain.xml 文件
重新编译和部署,错误依旧。然后,就是再搜索、修改,把 crossdomain.xml 放到所有的目录,等等,花了几乎大半天时间,安全错误还是如旧。
后来仔细想了想,既然官方的指引也就是把 crossdomain.xml 放网站的根目录,为什么我就不行呢?
突然间想起,我在 Netbeans 编译和部署的 App 并不是根目录,而是 根以下的 APP 目录,我在这个目录下放的 crossdomain.xml 并不是在根目录。
Glassfish 的根是在 domain/domain1 下的 docroot, 在浏览器直接输入 http://localhost:8080 所打开的就是这 docroot 里的 index.html。
呵呵,那把 crossdomain.xml 放到 domain1/docroot 下就可以了,安全错误消失。
:-
- 大小: 24.1 KB
- 大小: 51 KB
分享到:
相关推荐
在Java开发中,`javax.xml.ws.Service` 是一个核心组件,属于Java API for XML Web Services (JAX-WS)的一部分,用于创建客户端和服务端的Web服务代理。报错通常表明缺少必要的依赖包,这可能会影响到程序的正常运行...
《深入解析Glassfish 3.1.2.2与Java EE 6的融合应用》 Glassfish 3.1.2.2是一款由Oracle公司开发的开源应用服务器,它是Java EE 6规范的重要实现者,提供了全面的支持和丰富的功能,为开发者提供了构建企业级Web...
- **“最新的Glassfish v3使用指南”**:表明这份文档是当时最新的关于Glassfish v3的使用指南。 - **“希望大家可以使用愉快”**:作者希望读者能够通过阅读此文档获得愉快的学习体验并成功地管理Glassfish v3。 #...
### jMaki Development with Sun GlassFish V3:深入解析与应用实践 #### 一、概述 jMaki 是一种用于创建动态网页的轻量级框架,它为开发人员提供了简化的方式来构建基于 Java 的 Web 应用程序。本文档旨在介绍...
glassfish-v3-windows.part1
2. 高性能:相比Tomcat,GlassFish在处理并发请求和大型应用时表现出更高的性能,特别是在使用EJB和JMS等高级特性时。 3. 扩展性:GlassFish支持集群部署,可以轻松扩展以应对高负载需求,通过Admin Console可以...
2. **下载GlassFish安装包**:访问官方下载页面获取最新版本的GlassFish安装包。 #### 三、安装步骤 1. **解压安装包**: - 使用命令行工具,执行如下命令解压安装包: ``` java -Xmx256m -jar <filename>.jar ...
### Glassfish安装步骤详解 #### 一、简介 Glassfish是一款开源的应用服务器,它支持Java EE标准,并且在企业级应用开发中具有广泛的应用。为了能够成功安装并配置Glassfish,确保系统环境中已经安装了合适的JDK...
- **操作步骤**: 将 `.war` 或 `.ear` 文件放置到 `glassfish/domain/autodeploy` 目录下,Glassfish会在下次启动时自动检测并部署这些文件。 ##### 2. 使用命令行工具 - **部署**: 使用 `asadmin deploy` 命令...
### GlassFish v3知识点概述 #### 一、GlassFish v3简介 - **定义与背景**:GlassFish v3是一款由Sun Microsystems开发的企业级应用服务器,它基于Java平台标准(Java Platform, Enterprise Edition,简称Java EE...
- GlassFish 2.0 的配置文件(如`domain.xml`)允许进行详细的服务器配置,包括数据源、安全设置、监听端口等,可以根据项目需求进行定制。 总之,GlassFish 2.0 是一个强大的Java EE应用服务器,适合于企业级开发...
《glassfish-3.1.2.2 使用Dearby类库详解》 Glassfish是一款开源的应用服务器,由Oracle公司维护,广泛应用于Java EE应用程序的部署和管理。在Glassfish 3.1.2.2版本中,Dearby库是其核心组件之一,它为Java平台...
glassfish-v3-windows.part4
glassfish-v3-windows.part2
DAS(Domain Administration Server)是管理Glassfish服务器的核心工具。首先,你需要在主服务器上安装Glassfish,然后通过DAS进行集群的管理和配置。 #### 1.2 创建节点 节点是集群的基本组成部分,每个物理机或...
配置完成后,插件会自动检测到GlassFish服务器的配置文件,如domain.xml,允许你进行修改和保存。 部署应用程序是GlassFish插件的核心功能之一。只需将项目拖放到已配置的服务器实例上,Eclipse就会自动将应用打包...
glassfish手工修改domain部署应用步骤,文档详细介绍了如何使用手工部署一个web文件夹目录形式的应用,以及手工配置jdbc
在Linux环境下,Glassfish服务器的自动化启动是系统管理员和开发者常用的需求,这有助于提升服务器管理效率,确保服务的持续性和稳定性。Glassfish是Oracle公司提供的一个开源Java EE应用服务器,它支持各种Web应用...