Missing [mx.rpc]::IResponder - apache-flex

I'm trying to use the Flex 4 SDK's mx.rpc package in a Flash application.
I imported Flex's rpc.swc (Adobe\Adobe Flash Builder 4\sdks\4.0.0\frameworks\libs\rpc.swc) into my project by adding it to the list in Flash's "Publish Settings/Flash/ActionScrip 3.0 Settings/Library Path". It seems like I have access to the classes, however when I compile I get this error:
1046: Type was not found or was not a compile-time constant: [mx.rpc]::IResponder.
There's no location or line for the error either. Any idea how to get this to work? TIA!
Notes:
I'm using Flash Builder 4 and Flash CS5

Importing the rpc.swc wasn't enough. I added the entire Adobe\Adobe Flash Builder 4\sdks\4.0.0\frameworks\libs\ folder to the library path, and that fixed the problem.

The IResponder Interface is included in the framework.swc. That one and rpc.swc should be enough if those are the only flex features you are using.

Related

How do I use functionality available in an embedded jar file?

I'm trying to use GmailSender in my Xamarin Android app. My main project is referencing the binding library, and the binding library has 2 jars - GmailSender 1.1.jar, and mail.jar.
the GmailSender 1.1.jar file is set as an EmbeddedJar in properties, and mail.jar is set as an EmbeddedReferenceJar in properties.
The following image depicts how my project is set up (higher res image: http://i.imgur.com/Xbq5uKa.png)
This is where I got GmailSender 1.1.jar: http://gmailsender.blogspot.ie/
This is where I got mail.jar (renamed from mail-6.0.0.jar) http://www.java2s.com/Code/Jar/m/Downloadmail600jar.htm
How can I get my Xamarin Android app to use GmailSender?
There is a note regarding that issue on Xamarin docs:
Note: Due to bug 6695, when referencing the Java Binding project
directly from a Xamarin.Android project, none of the namespaces,
classes, or other members of the Java Binding project will be visible
in the IDE when working on the Xamarin.Android project. This bug will
be fixed in a future version of Xamarin.Android.
You won't be able to see the bindings unless you reference the generated dll (this is a workaround)
You need to reference the library using the namespace of your binding library. By default, it is probably using "BindingLibrary1" as the root namespace, so try adding a using directive for that namespace.

Flex Sub-Apps and MarhsallingSupport missing in 3.x SDK's

I'm looking at using Sub-Applications within flex, to enable mutli-versioned compilation.
Specifically, I'm looking to have a Flex 4.x host app that loads Flex 3.6 sub-apps.
The docs state this is possible (and the purpose of sub-apps). However they specify this:
When compiling each of these types of applications, you should include
the MarshallingSupport class into the main application and
sub-applications. You do this with the includes compiler argument, as
the following example shows:
-includes=mx.managers.systemClasses.MarshallingSupport
However, from what I can tell, MarhsallingSupport wasn't included until the 4.x releases.
Looking at the mx.managers.systemClasses package for 3.5.0.12683 and 3.4.1.10084 shows no reference of MarshallingSupport (see svn here and here)
This is also true for 3.6a (download of SDK available, but can't find the source).
Am I missing something? How am I supposed to include this class in the 3.x sub-apps, when it's not available?
see http://help.adobe.com/en_US/enterpriseplatform/10.0/AEPDeveloperGuide/WS8cbf8723eeed7311-4cca458e1328d74a115-7fff.html
Like module bundles, there are no special compilation requirements. You can build the
application bundle SWF in any way that is convenient. Note, however,
that application bundles must include marshalling support.
This is automatic with Flex 3, but with Flex 4 you must force the inclusion
of the MarshallingSupport class in your SWF.
For Flex 4 this can be
done by referencing the MarshallingSupport class in your application
code (as in the previous example). You can also explicitly force
inclusion of the MarshallingSupport class on the mxmlc command line
using the following option:
-includes+=mx.managers.systemClasses.MarshallingSupport

Class mx.core::DesignLayer could not be found

I am trying to run my Flex project, however on runtime I get the error:
VerifyError: Error #1014: Class mx.core::DesignLayer could not be found
So I have added an import statement for the Design layer class: import mx.core.DesignLayer, and now I get the error on compile:
Definition mx.core::DesignLayer could not be found
What is DesignLayer? Why it could not be found even tough I import it?
Thanks.
You are probably building new functionality with an old SDK. Or perhaps you are reusing a third-party component that was built with a newer SDK inside you application built with an older SDK.
In either event the DesignLayer class was introduced in Flex version 4, as stated in the docs. So if you're building your application with some flavor of Flex 3, it makes sense the DesignLayer class can't be found, simply because it isn't there.
Go have a look in the framework's source code at [sdk-path]\frameworks\projects\framework\src\mx\core. In Flex 4+ you'll find the file DesignLayer.as there. Not so in Flex 3.

AIR application not finding locale properties file

I have the problem that when I use a component from an existing Flex Library in my AIR project, the values that should be loaded from the appropriate locale .properties file are not loaded. The values are always null.
I am using Eclipse and have created an AIR project that refers to the existing Flex Library (of which I have the source code). When I use a component from that library it calls the following code:
var _resourceManager:IResourceManager = ResourceManager.getInstance();
var res:String = resourceManager.getString('resources', str, params);
"str" and "params" have valid values but res is always null.
The properties file is located within the assets directory of the Flex library. I am deducing that the properties file is not being loaded (for some reason). This Flex library works for other Flex projects so it has to be something about the way my project is set up.
I have my compiler settings set to: -locale en_US
Is there something special that AIR projects need to do to ensure that they can refer to properties files?
Any help greatly appreciated. Thanks,
Phil
I believe this is a compiler issue. It seems you have not set the locale folder in the compiler arguments.
Take a look at the LiveDocs page concerning resource compilation into Flex applications: http://livedocs.adobe.com/flex/3/html/l10n_3.html#158879

Adobe Stratus - GroupSpecifier and NetStream Problems

I started using Adobe Stratus yesterday and made a simple chat application. Today, I was to learn how to use the group feature.
But when I try to instantiate a GroupSpecifier variable, I get this error:
1046: Type was not found or was not a compile-time constant: GroupSpecifier. P2P.mxml
Earlier I was getting a similar error with NetStream (in place of GroupSpecifier).
I have Flex 4.1 and it's set to Flash Player 10.1.
What am I doing wrong? How can I fix this?
just making sure, you did import flash.net.GroupSpecifier; right?
Try to download Flash Player swc file from here and add "-target-player=11" to your compiler arguments in Flash Builder.

Resources