①、
[RPC Fault faultString="HTTP request error" faultCode="Server.Error.Request" faultDetail="Error: [IOErrorEvent type="ioError" bubbles=false cancelable=false eventPhase=2 text="Error #2032: 流错误。 URL:
http://localhost:3000/posts/10.xml
"]. URL:
http://localhost:3000/posts/10.xml
"]
at mx.rpc::AbstractInvoker/http://www.adobe.com/2006/flex/mx/internal::faultHandler()
....................
这个大多是你的Ralis程序出错了,其实rails把error info全都发过来了,但是flex没法处理这些文本,于是出现上面的错误,这个时候你可以看看Rails控制台,那里显示了错误信息。不像以前rails的html页面编程时直接显示详细的出错信息。
②、
ActionController::InvalidAuthenticityToken (ActionController::InvalidAuthenticityToken):
...........................
以前在rails中,这个错误的解决方案有好几种,最佳方案是在页面中增加
<%= javascript_tag "var authenticity_token = '#{form_authenticity_token}';" %>
然后以隐藏字段post这个authenticity_token ,从而不破坏Rails的protect_from_forgery机制,但是现在要通过Rails向Flex传送authenticity_token ,我还没找到正解,只好暂时用下面的方法:
在Controller里添加:protect_from_forgery :except =>[:destroy,:update]
③、
[RPC Fault faultString="Security error accessing url" faultCode="Channel.Security.Error" faultDetail="Destination: DefaultHTTP"
]
at mx.rpc::AbstractInvoker/http://www.adobe.com/2006/flex/mx/internal::faultHandler()
at mx.rpc::Responder/fault()
at mx.rpc::AsyncRequest/fault()
at DirectHTTPMessageResponder/securityErrorHandler()
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at flash.net::URLLoader/redirectEvent()
那是因为
Flex
不使用代理时遇到安全沙箱冲突
。
解决方案:在../public目录下新建一个文件:
crossdomain.xml
内容为:
<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<allow-access-from domain="*" />
<allow-http-request-headers-from domain="*" headers="*"/>
</cross-domain-policy>
就OK了
^_^
④、
/
!\ FAILSAFE /!\ Thu Jul 16 14:50:31 +0800 2009
Status: 500 Internal Server Error
#<RuntimeError: attempted adding second root element to document>
c:/ruby/lib/ruby/1.8/rexml/document.rb:90:in `<<'
c:/ruby/lib/ruby/1.8/rexml/element.rb:867:in `add'
......................
script/server:3
...
attempted adding second root element to document
Line:
Position:
Last 80 unconsumed characters:
111111</password>
c:/ruby/lib/ruby/1.8/rexml/parsers/treeparser.rb:90:in `parse'
c:/ruby/lib/ruby/1.8/rexml/document.rb:204:in `build'
c:/ruby/lib/ruby/1.8/rexml/document.rb:42:in `initialize'
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.2/lib/active_support/xml_mini/rexml.rb:17:in `new'
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.2/lib/active_support/xml_mini/rexml.rb:17:in `parse'
(__DELEGATION__):2:in `__send__'
(__DELEGATION__):2:in `parse'
..............................
那是因为在<mx:HTTPService>
中设置了属性contentType="application/xml",
那么如果你通过以下方式
svcLogin
.send( {login: loginTI.text, password: passwordTI.text} );
发送request,就会出现上面的错误:又或者你写成
<mx:request>
<login>{loginTI.text}</login>
<password>{passwordTI.text}</password>
</mx:request>
也会出现同样的错误
因为xml方式发送参数格式应该是:只有一个root即<user>
<mx:request>
<user>
<login>{loginTI.text}</login>
<password>{passwordTI.text}</password>
</user>
</mx:request>
解决方案,就是去掉
contentType="application/xml",
那么<mx:HTTPService>就会采用默认的contentType="application/x-www-form-urlencoded",
那么
svcLogin
.send( {login: loginTI.text, password: passwordTI.text} ); 就不会出错了。
⑤、 TabNavigator,Accordion组件
使浏览器地址出现类似字符串“#app=
6d4&68af-selectedIndex=1”
参考:http://hereson.iteye.com/blog/188513
得到解决方案:
在Flex Bulider中,右键点击项目,选Properties-->Flex Complier,将Enable integration with browser navigation 这个选项去除
Ps:本文持续更新中^_^
分享到:
相关推荐
### Flexible Rails: Flex3 on Rails2 #### 关于Flexible Rails 本书《Flexible Rails: Flex 3 on Rails 2》由Peter Armstrong撰写,旨在探讨如何结合使用Flex 3和Rails 2来开发高效的富互联网应用程序(Rich ...
在探索如何将Adobe Flex3与Ruby on Rails(简称Rails)结合,创建动态Web应用的过程中,一个常见的入门案例便是“HelloWorld”。此案例不仅展示了这两种技术如何协同工作,还揭示了它们在构建交互式用户界面方面的...
### Flex on Rails 文档知识点详解 #### 一、关于 Flexible Rails **Flexible Rails** 是一个旨在结合 **Flex** 和 **Rails** 技术优势的框架。通过将这两者结合,可以构建出高度交互且功能丰富的 Web 应用程序。本...
《Ruby on Rails 3 Tutorial》是一本专门为初学者设计的指南,旨在帮助读者快速掌握Ruby on Rails这一强大的Web开发框架。Ruby on Rails(简称Rails)是基于Ruby语言的一个开源框架,它采用MVC(Model-View-...
《Ruby on Rails Tutorial》中文版(原书第2版,涵盖 Rails 4) Ruby 是一门很美的计算机语言,其设计原则就是“让编程人员快乐”。David Heinemeier Hansson 就是看重了这一点,才在开发 Rails 框架时选择了 Ruby...
### Ruby on Rails 101:深入理解与实践 #### 引言 《Ruby on Rails 101》是一本介绍Ruby on Rails(简称RoR或ROR)的基础书籍,旨在为初学者提供一个全面而深入的学习框架。本书由Peter Marklund编写,包含了五天...
在压缩包子文件的文件名称列表中仅列出“rails”,这可能是Rails框架的核心库文件,或者是包含了Rails框架的安装包。在实际的开发环境中,这样的压缩包通常还会包含数据库连接器(如pg或mysql2)、开发工具(如...
3. **实战项目**:通过具体的Web 2.0项目案例,读者可以亲自动手实践,加深对jRuby on Rails的理解和应用能力。 4. **前沿技术**:本书覆盖了当时最新的jRuby版本和Rails框架特性,让读者了解并掌握最前沿的开发技术...
### Flex与Ruby on Rails结合应用 #### 知识点一:Flex与Ruby on Rails的集成原理及优势 《FlexibleRails》这本书主要讲述了如何将Flex与Ruby on Rails进行整合,实现强大的Web应用程序。Flex是一种用于构建丰富的...
### Ruby on Rails Guides v2 - Ruby on Rails 4.2.5 #### 一、重要概念及基础假设 - **重要概念**:本指南旨在帮助读者深入理解Ruby on Rails(以下简称Rails)4.2.5版本的核心功能与最佳实践。 - **基础假设**:...
Ruby on Rails是一款基于Ruby语言的开源Web开发框架,它遵循MVC(模型-视图-控制器)架构模式,简化了Web应用的开发流程。在Linux环境下安装Ruby on Rails需要一系列的依赖包和步骤,本资源包提供了所需的所有组件,...
Ruby on Rails,简称Rails,是一款基于Ruby语言的开源Web应用框架,它遵循MVC(Model-View-Controller)架构模式,旨在提升开发效率和代码的可读性。Rails以其“约定优于配置”的设计理念,以及“DRY(Don't Repeat ...
Ruby on Rails,简称Rails,是一款基于Ruby语言的开源Web应用框架,它遵循MVC(Model-View-Controller)架构模式,旨在简化Web应用程序的开发。Rails由David Heinemeier Hansson于2004年创建,它提倡“约定优于配置...
### Ajax on Rails 知识点解析 #### 一、引言 在当今的Web开发领域,Ajax技术已经成为了提升用户体验的重要手段之一。Rails作为一种高效、优雅的Web开发框架,与Ajax技术结合能够创造出功能强大且易于维护的应用...
Ruby on Rails,简称Rails,是由David Heinemeier Hansson基于Ruby语言开发的一个开源Web应用程序框架。这个框架遵循“约定优于配置”(Convention over Configuration)的原则,致力于简化Web应用的开发流程,提高...
Ruby on Rails,简称Rails,是基于Ruby语言的一个开源Web应用程序框架,它遵循MVC(Model-View-Controller)架构模式,旨在使Web开发过程更加高效、简洁。本压缩包中的"Ruby on Rails入门经典代码"提供了新手学习...
Ruby on Rails(简称Rails)是一种基于Ruby编程语言的开源Web应用程序框架,专为敏捷开发而设计,强调简洁的代码和“约定优于配置”的原则。它主要用于构建数据驱动的Web应用,借助于MVC(Model-View-Controller)...