使用jboss服务器时其他机器访问不了主机,主要是安全沙箱crossdomain.xml的问题没有放置到jboss的以下目录引起的server\all\deploy\jbossweb-tomcat55.sar\ROOT.war
crossdomain.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>
并且还要在services-config.xml做如下配置
<?xml version="1.0" encoding="UTF-8"?>
<services-config>
<services>
<service-include file-path="remoting-config.xml" />
<service-include file-path="proxy-config.xml" />
<service-include file-path="messaging-config.xml" />
<default-channels>
<channel ref="my-amf"/>
<!-- <channel ref="my-http"/>-->
</default-channels>
</services>
<security>
<login-command class="flex.messaging.security.TomcatLoginCommand" server="JBoss"/>
<!-- Uncomment the correct app server
<login-command class="flex.messaging.security.TomcatLoginCommand" server="JBoss">
<login-command class="flex.messaging.security.TomcatLoginCommand" server="Tomcat"/>
<login-command class="flex.messaging.security.JRunLoginCommand" server="JRun"/>
<login-command class="flex.messaging.security.WeblogicLoginCommand" server="Weblogic"/>
<login-command class="flex.messaging.security.WebSphereLoginCommand" server="WebSphere"/>
-->
<!--
<security-constraint id="basic-read-access">
<auth-method>Basic</auth-method>
<roles>
<role>guests</role>
<role>accountants</role>
<role>employees</role>
<role>managers</role>
</roles>
</security-constraint>
-->
</security>
<channels>
<channel-definition id="my-amf" class="mx.messaging.channels.AMFChannel">
<endpoint url="http://192.168.10.105:8080/AccessControl/messagebroker/amf"
class="flex.messaging.endpoints.AMFEndpoint"/>
<properties>
<polling-enabled>false</polling-enabled>
</properties>
</channel-definition>
<!-- <channel-definition id="setmy-amf" class="mx.messaging.channels.AMFChannel">-->
<!-- <endpoint url="http://192.168.10.105:8080/AccessControl/messagebroker/amf" class="flex.messaging.endpoints.AMFEndpoint"/>-->
<!-- </channel-definition>-->
<channel-definition id="my-secure-amf" class="mx.messaging.channels.SecureAMFChannel">
<endpoint url="https://{server.name}:{server.port}/{context.root}/messagebroker/amfsecure" class="flex.messaging.endpoints.SecureAMFEndpoint"/>
<properties>
<add-no-cache-headers>false</add-no-cache-headers>
</properties>
</channel-definition>
<channel-definition id="my-polling-amf" class="mx.messaging.channels.AMFChannel">
<endpoint url="http://{server.name}:{server.port}/{context.root}/messagebroker/amfpolling" class="flex.messaging.endpoints.AMFEndpoint"/>
<properties>
<polling-enabled>true</polling-enabled>
<polling-interval-seconds>4</polling-interval-seconds>
</properties>
</channel-definition>
<channel-definition id="my-http" class="mx.messaging.channels.HTTPChannel">
<endpoint url="http://192.168.10.105:8080/AccessControl/messagebroker/http" class="flex.messaging.endpoints.HTTPEndpoint"/>
</channel-definition>
<!--
<channel-definition id="my-secure-http" class="mx.messaging.channels.SecureHTTPChannel">
<endpoint url="https://{server.name}:{server.port}/{context.root}/messagebroker/httpsecure" class="flex.messaging.endpoints.SecureHTTPEndpoint"/>
<properties>
<add-no-cache-headers>false</add-no-cache-headers>
</properties>
</channel-definition>
-->
</channels>
<logging>
<target class="flex.messaging.log.ConsoleTarget" level="Error">
<properties>
<prefix>[BlazeDS] </prefix>
<includeDate>false</includeDate>
<includeTime>false</includeTime>
<includeLevel>false</includeLevel>
<includeCategory>false</includeCategory>
</properties>
<filters>
<pattern>Endpoint.*</pattern>
<pattern>Service.*</pattern>
<pattern>Configuration</pattern>
</filters>
</target>
</logging>
<system>
<redeploy>
<enabled>true</enabled>
<watch-interval>20</watch-interval>
<watch-file>{context.root}/WEB-INF/flex/services-config.xml</watch-file>
<watch-file>{context.root}/WEB-INF/flex/proxy-config.xml</watch-file>
<watch-file>{context.root}/WEB-INF/flex/remoting-config.xml</watch-file>
<watch-file>{context.root}/WEB-INF/flex/messaging-config.xml</watch-file>
<!-- <watch-file>{context.root}/WEB-INF/flex/data-management-config.xml</watch-file>-->
<touch-file>{context.root}/WEB-INF/web.xml</touch-file>
</redeploy>
</system>
<factories>
<factory id="spring" class="flex.samples.factories.SpringFactory"/>
</factories>
</services-config>
分享到:
相关推荐
`crossdomain.xml`是服务器端的一个XML文件,它定义了哪些外部源(即其他域名)的Flash或Flex内容可以访问该服务器的资源。这个文件允许跨域资源共享(CORS),使Flex应用能够安全地从其他域获取数据,比如地图服务...
1. **配置crossdomain.xml**:在服务器根目录下创建一个crossdomain.xml文件,明确允许哪些域可以访问你的GIS服务。例如,如果你的GIS服务位于`example.com`,crossdomain.xml可能如下所示: ```xml <?xml version=...
Flex沙箱安全问题主要是由跨域资源共享机制引起的,通过正确配置crossdomain.xml文件以及相关服务器设置可以有效避免Error #2048这类错误的发生。此外,在开发过程中充分利用调试工具和文档资料也是解决问题的关键。
Flex安全沙箱问题是一个在开发基于...总的来说,解决Flex安全沙箱问题需要深入理解沙箱机制、跨域策略和`crossdomain.xml`文件的配置,同时关注服务器端的实现细节,以确保应用程序既能正常运行,又能保障用户的安全。
2. **浏览器沙箱**:浏览器沙箱内的SWF文件通常来自Web页面,它们可以访问网页内容,但受到限制,不能直接访问用户的文件系统或网络,除非用户通过交互(如点击按钮)明确授权。 3. **网络沙箱**:网络沙箱允许SWF...
如描述所示,对于.NET环境,你需要将`crossdomain.xml`文件添加到Web服务器的根目录。对于Java Tomcat环境,对于ArcGIS Server 10.0及更高版本,文件应放在`<ArcGIS_Server_Install_Location>\ArcGIS\Server\...
无论是哪种方案,都需要在服务器端 Web 应用的根目录下配置 crossdomain.xml。 使用服务器端代理,可以简单在服务器端定义 DefaultHTTP,打开 proxy-config.xml,如下配置。其中*号表示 ...
在Tomcat的`\webapps\ROOT`目录下添加`crossdomain.xml`文件,允许来自任何域名的访问,以解决安全沙箱限制。 总结起来,实现Flex与Java通信涉及多个步骤,包括配置BlazeDS、设置XML文件、处理部署问题、满足Flex类...
因此,服务器端需要提供一个crossdomain.xml文件,声明哪些来源的Flex应用可以访问其资源。 总结来说,这个Flex开发实例涵盖了Flex沙箱控制、事件处理、与Java Servlet的交互以及跨域策略等多个知识点。通过对...
1. **创建信任策略文件**:首先,你需要创建一个XML文件,文件名为`ClientAccessPolicy.xml`或`CrossDomain.xml`。这两个文件都可以用于定义跨域策略,但`ClientAccessPolicy.xml`是专门为Silverlight设计的。将此...
- **Flash的crossdomain.xml**:允许指定源的Flash跨域访问。 - **Chrome的多进程架构**:每个进程独立运行,提高安全性。 - **Sandbox**:沙箱技术用于限制恶意代码的影响力。 - **恶意网址拦截**:基于黑名单...
1. **跨域策略文件**:为了允许Silverlight从不同的域调用WCF服务,服务端需要提供一个跨域策略文件(clientaccesspolicy.xml或crossdomain.xml)。这个文件定义了哪些源(即来自哪个域名或IP的请求)可以访问服务。...
如果跨域通信或访问本地资源,需要正确配置服务器的crossdomain.xml文件,以允许特定来源的请求。 5. **部署到WebLogic** - 虽然Red5本身是一个独立的应用服务器,但也可以将其部署到其他应用服务器,如WebLogic。...
例如,使用跨域策略文件(crossdomain.xml)允许不同源之间的通信。此外,为了确保数据安全,可能需要加密和解密传输的数据。 总之,这个项目或文章探讨的是如何在不同类型的客户端技术之间建立数据通道,这涉及到...
在Eclipse+Flex+Tomcat环境中,通常需要在`C:\Program Files\ArcGIS\java\web_output`目录下添加一个`crossdomain.xml`文件来放宽跨域策略。示例文件内容如下: ```xml <?xml version="1.0" encoding="UTF-8"?> ...
解决这一问题的一种常见方法是在服务器端放置一个名为`crossdomain.xml`的文件,该文件定义了哪些域被允许访问。此文件的典型内容如下: ```xml <?xml version="1.0"?> <!DOCTYPE cross-domain-policy SYSTEM ...
跨域问题,也称为“同源策略”,是指当一个域(域名、协议或端口)的网页尝试去访问另一个域的资源时,浏览器出于安全考虑,会限制这种跨域访问。此限制使得从一个域中的网页脚本访问到另外一个域中的数据变得复杂。...