ExternalInterface | How to get called from flash in"xml flavor"?

Hi guys,
I have seen that ActiveX version of Flash Player issues an
event (FlashCall) that describes using xml the function call that
the programmer has called with ExternalInterface.call method.
That xml has the form : <invoke
name="thenameofthefunction"><arguments>...</arguments></invoke>
However, regarding the NPPlugin version, when you make a
"ExternalInterface.call" flash always ask to its container to
"evaluate" a chunk of javascript code.
Also, both flash player versions (ActiveX and NPPlugin)
provide the "CallFunction" method that allows you to pass, in a
single parameter, an xml (in the same form as the one from
"FlashCall" event) describing the actionscript function (and its
arguments) to be called.
I would need to use the "xml flavor" in both directions
(flash to container and container to flash) independently of the
version of Plash Player being used (ActiveX or NPPlugin). The
reason: I do not have any problem parsing and consuming xml and,
however, I do not want to write a javascript interpreter at all.
Does anyone know if there is any possibility to instruct
flash npplugin, in any way, to describe the function calls using
xml instead of javascript?
Any suggestion will be welcome.
Best regards.

Hi people,
Finally I've got the answer to my question:
It seems that there is not a feasible way to achieve that
Flash Player (Netscape Plug-in) calls into its wrapper using the
XML pattern that uses its "brother" (ActiveX Flash Player). Thus,
the solution is to interpret the chunk of javascript code in the
best way that is suitable for your (my) needs.
Bellow, for your convenience, is the answer I got from one of
the player architecs.
Thanks a lot to Matt, Gary and all the people that replied to
this topic.
For the Netscape plug-in, I think the easiest thing for him
to do is
just to parse the JS coming from the Player. You don't need a
full
_JavaScript interpreter to do it. The _JavaScript code
generated always
follows the same basic pattern. A parser to transform it into
XML or
any other data structures would probably only be a few
hundred lines.

Similar Messages

  • How to get called from R3 on a Sales Order creation

    Hi,
    I'm completely new on SAP NetWeaver technology.
    My domain is SAP Business One SDK development and .NET Technologies.
    What I'm trying to do is some kind of integration between B1 and R3 and for that I need to get called in my .NET application by an event or something similar coming from and R3 system everytime a new Sales Order is created.
    Could some of you as NetWeaver experts give me a hint on how to do it? Right now I'm looking at ALE and IDocs but I cannot find a concrete sample of a .NET application. Do you have some useful links to .NET samples?
    Thanks,
    Trinidad.

    Use ERP Connect.
    Apart from the client functionality that allows function modules or BAPIs to be accessed in
    the SAP system, ERP Connect also offers the possibility of easily developing a server
    function.
    For example, if you have a .net application which adds 2 numbers sent by R/3, you can call that .NET function using ABAP code like this one:
    REPORT z_add_test .
    DATA result TYPE i.
    CALL FUNCTION 'Z_ADD' DESTINATION 'YAHOO'
      EXPORTING
        number1 = 13
        number2 = 31
      IMPORTING
        res = result.
    WRITE result.
    Looks simple, right?
    But don't forget that you still have to do something from the .net realm.
    Code something like this:
    using ERPConnect;
    static void Main(string[] args)
      RFCServer s = new RFCServer();
      s.GatewayHost = "ides";
      s.GatewayService = "sapgw13";
      s.ProgramID = "YAHOO";
      s.IncomingCall  += new ERPConnect.RFCServer.OnIncomingCall(s_IncomingCall);
      RFCServerFunction f = s.RegisteredFunctions.Add("Z_ADD");
      f.Imports.Add("NUMBER1",RFCTYPE.INT);
      f.Imports.Add("NUMBER2",RFCTYPE.INT);
      f.Exports.Add("RES",RFCTYPE.INT);
      s.Start();
      Console.Write("Service is ready.");
      Console.ReadLine();
    private static void s_IncomingCall(RFCServer Sender, RFCServerFunction CalledFunction)
      if (CalledFunction.FunctionName=="Z_ADD")
        Int32 i1 = (Int32)CalledFunction.Imports["NUMBER1"].ParamValue;
        Int32 i2 = (Int32)CalledFunction.Imports["NUMBER2"].ParamValue;
        Int32 erg = i1 + i2;
        CalledFunction.Exports["RES"].ParamValue = erg;
        Console.WriteLine("SAP did a call at " + DateTime.Now.ToString());
      else
        throw new Exception("Something bad happened!!!");
    That... should be working
    Reward points when you find usefull.

  • How to get value from ___.co.xml ???

    Hi All,
         I am trying to deveop a KM service that should be configurable(by the User) so that he/she can specify the folder on which the service should act on...
    I have created a CM repository called "<b>test_Rep</b>" for my purpose and added my rep. service to it. Guess what! The uploaded documents are getting renamed .. HURRAY!!!!!!!!!
    i changed the
    ___.co.xml
    and
    ___.cc.xml
    files by adding another parameter!
    After editing the XML files, i have tried to read the properties in the received() method as follows :
    String repositoryPath = this.properties.getProperty("myFolder");
    <b>It works!</b>
    Original value of myFolder (in co.xml file) = /test_Rep/folder1
    <Configurable .....>
    <property name="myFolder" value="/test_Rep/folder1" />
    </Configurable>
    But, in PORTAL when i change, System Admin >> System config >> Content management >> rep. services >> com.test.SampleService >> myFolder = <b>"/test_Rep/folder2"</b>, and try to check in that folder... it doesn't work .. 
    I even restarted the server .. but, doesn't help!
    <b><u>Doubts:</u></b>
    1) when the user changes the value of 'myFolder' (in  content mgt >> rep. services >> com.test.SampleService), does it change the XML file inside the par file?????
    2) How should i retrieve the value of this parameter at runtime (the latest value which the user entered in  content mgt >> rep. services >> com.test.SampleService)
    please see the below code of received(IEvent event) method:::::
    private static final Location log = Location.getLocation(SampleService.class );
    public void received(IEvent event) {
      IResourceEvent myEvent = (IResourceEvent) event;
      IResource resource = (IResource) myEvent.getParameter();
      String repositoryPath = this.properties.getProperty( "myFolder");     //getting folder name at runtime!!!!!!!
      String parentPath = "";
      try {
         parentPath = resource.getParentCollection().getRID().toString();
      } catch (AccessDeniedException e1) {
         e1.printStackTrace();
      } catch (ResourceException e1) {
         e1.printStackTrace();
         if (resource != null && (!resource.isCollection()) ) {
         try {
         /* my business logic...
         } catch (NotSupportedException e) {
              log.errorT("Got exception: Not Supported Exception!" );
         } catch (ResourceException e) {
              log.errorT("Got exception: Resource Exception!" );
    plz help..
    Any ideas on this scenario ..
    Regards,
    Krish.

    Hi,
    you don't have to create a ConfigListener. But if you want it - you can. Have you noticed in another sections of CM configuration that you do not have to restart the J2EE to apply changes?
    In your *.cc.xml you can define it by adding the <i>hotReload, hotLoad, hotUnload</i> attributes. See my example:
    <ConfigClass
         id="name"
         name="NewDocuments"
         hotReload="true"
         hotUnload="true"
         advanced="false"
         hotLoad="true"
         configurable="cz.sap.szif.newDocuments.handler.EventHandlerService" >
                <attribute name="name" type="string" mandatory="true"  visibleColumn="true"/>      
              <attribute name="replicator" type="boolean" mandatory="true" default="false"/>              
    </ConfigClass>
    Now create an implementation of IConfigListener interface (something like this):
    public class NewDocumentsServiceConfig implements IConfigEventListener {
      // plugin definition
      private static final String PLUGIN_NEW_DOCUMENTS = "/cm/customer";
      private static final String CONFIGCLASS_NEW_DOCUMENTS = "NewDocuments";
      private static final String readPlugins[] = { PLUGIN_NEW_DOCUMENTS };
      // config data
      private List configList = null;
       * constructor
      public NewDocumentsServiceConfig() {
        try {
          // read initial data
          reconfigure();
          // register event listener for my configuration
          Configuration.getInstance().getConfigEventServiceInstance().addConfigEventListener(
            this,
            readPlugins);
        } catch (Exception e) {
          LogWriter.traceSevere(LogWrapper.trace, e, LogWriter.extractCallStack(e), true);
       * call before object destroy
      public void destroy() {
        try {
          // unregister listener
          Configuration.getInstance().getConfigEventServiceInstance().removeConfigEventListener(this);
        } catch (InitialConfigException e) {
          LogWriter.traceSevere(LogWrapper.trace, e, LogWriter.extractCallStack(e), true);
        } catch (Exception e) {
          LogWriter.traceSevere(LogWrapper.trace, e, LogWriter.extractCallStack(e), true);
      /* (non-Javadoc)
       * @see com.sapportals.config.event.IConfigEventListener#getConfigListenerId()
      public String getConfigListenerId() {
        return toString();
      /* (non-Javadoc)
       * @see com.sapportals.config.event.IConfigEventListener#configEvent(com.sapportals.config.event.ConfigEvent)
      public void configEvent(ConfigEvent event) {
        // this is a simple example
        // if an event occurs - reconfigure == re-read all configurations
        // ...you could catch which configuration was changed and only change the config for only this one
        try {
          if (event.getType() != ConfigEvent.CONFIGURABLE_LOADED
            && event.getType() != ConfigEvent.CONFIGMANAGER_TERMINATED)
            reconfigure();
          LogWriter.traceInfo(LogWrapper.trace, " event:" + event.getType());
        } catch (Exception e) {
          LogWriter.traceSevere(LogWrapper.trace, e, LogWriter.extractCallStack(e), true);
       * Reload all the configurations
      private void reconfigure() {
        try {
          IConfigClientContext context = IConfigClientContext.createContext(ConfigCrutch.getConfigServiceUser());
          IConfigManager cfg = Configuration.getInstance().getConfigManager(context);
          IConfigPlugin configPlugin = cfg.getConfigPlugin(PLUGIN_NEW_DOCUMENTS);
          this.configList = new LinkedList();
          if (configPlugin != null) {
            LogWriter.traceInfo(LogWrapper.trace, " configPlugin:" + configPlugin.getName());
            IMutableConfigurable[] configurables =
              configPlugin.getConfigurables(CONFIGCLASS_NEW_DOCUMENTS, false);
            for (int j = 0; j < configurables.length; j++) {
              IMutableConfigurable configurable = configurables[j];
              if (configurable.getConfigClass().getName().equals(CONFIGCLASS_NEW_DOCUMENTS)) {
                // this is a simple object which holds the attribute values
                // in a HashMap (hMap.put(PROP_NAME, configurable.getPropertyValue(PROP_NAME));...)
                NewDocumentsConfigRecord record = new NewDocumentsConfigRecord(configurable);
                this.configList.add(record);
          } else {
            LogWriter.traceWarning(
              LogWrapper.trace,
              " configPlugin == NULL for pluginName:" + PLUGIN_NEW_DOCUMENTS);
        } catch (InitialConfigException e) {
          LogWriter.traceSevere(LogWrapper.trace, e, LogWriter.extractCallStack(e), true);
        } catch (Exception e) {
          LogWriter.traceSevere(LogWrapper.trace, e, LogWriter.extractCallStack(e), true);
       * @return all my configurations
      public List getConfigList() {
        return this.configList;
    ...and in your service:
    public class EventHandlerService extends AbstractService implements IEventHandlerService {
      private NewDocumentsServiceConfig config_listener;
      public void afterInit() {
        // setup config listener
        config_listener = new NewDocumentsServiceConfig();
      public void release() {
        config_listener.destroy();
        config_listener = null;
    Now you should be able to catch the changes in the configuration.
    Hope this helps,
    Romano

  • I keep getting calls from a block caller id and it's some dude speaking arabian what do i do? How do i stop this?

    I keep getting calls from a block caller id and it's some dude speaking arabian what do i do? How do i stop this?

    Stop answering calls with blocked numbers. If it's someone who really wants to talk to you, they'll leave you a message and you can call them back.

  • I'm using same icloud and same apple ID on two iphones. Now i get calls from same number on both iphones at the same time. How to turn off that?

    I'm using same icloud and same apple ID on two iphones. Now i get calls from same number on both iphones at the same time. How to turn off that?

    Apple ID's are not device specific, so when you changed it on the iPad 2 it changed it on the iPhone 4 as well, since it's the same account still. What you need to do is create a second Apple ID (so you'll have two accounts, one for iPhone 4 and a seperate one for iPad 2).
    To create a new Apple ID on your iPad 2:
    1) Go into Settings > Store.
    2) If you are already signed in, tap your Apple ID on the screen and you will be given a few options, one of which is to sign out of your account.
    3) After you sign out, now click the "Sign in" button.
    4) Tap "Create New Apple ID" and follow the instructions on-screen.

  • How to get resultset from oracle procedure use ejb3

    how to get resultset from oracle procedure use ejb3
    i know oracle procedure should like this
    Create or replace PROCEDURE resultset_test(
    aaa IN NUMBER,
    bbb OUT sys_refcursor) ....
    but what s the ejb3 scripts looks like? please give me an example or link~
    ths

    - there are no EJB3 scripts, only compiled application code
    - the part of the EJB spec that deals with databases is called the Java Persistence API, but likely you are just looking for the JDBC API.
    Now you should know what to Google to get your "example script": "java jdbc oracle procedure"

  • How  to get  response from such a  function

    How  to get  response from such a  function (in MODULE USER_COMMAND_0010 INPUT I get "ODGOVOR" 'X'
    FUNCTION Z_SEENKRAT.
    ""Local Interface:
    *"  EXPORTING
    *"     REFERENCE(ODGOVOR) TYPE  MSEG-KZEAR
    DATA ok_code LIKE sy-ucomm.
    DATA: test like mseg-kzear.
    BREAK-POINT.
    call screen 10.
    test = ODGOVOR.
    ENDFUNCTION.
    *&      Module  CLEAR_OK_CODE  OUTPUT
          text
    MODULE clear_ok_code OUTPUT.
      CLEAR ok_code.
    ENDMODULE.                 " CLEAR_OK_CODE  OUTPUT
    *&      Module  USER_COMMAND_0010  INPUT
          text
    MODULE USER_COMMAND_0010 INPUT.
    DATA odgovor LIKE mseg-KZEAR.
    CASE ok_code.
        WHEN 'DA'.
        ODGOVOR = 'X'.
      ENDCASE.
    ENDMODULE.                 " USER_COMMAND_0010  INPUT

    Hi,
    You need to declare the ODGOVOR variable in the TOP include, then you will get the value
    Regards
    Sudheer

  • How to get BOOLEAN from STORED FUNCTION

    We are calling legacy PLSQL stored procedures and functions via named queries. This has worked fine so far, but there are some functions which return the type 'BOOLEAN'. e.g.
    FUNCTION some_function( some_argument IN NUMBER) RETURN BOOLEAN;
    Where the return type is BOOLEAN calling the named query fails with
    Local Exception Stack:
    Exception [TOPLINK-4002] (Oracle TopLink - 10g Release 3 (10.1.3.0.0) (Build 060118)): oracle.toplink.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: ORA-06550: line 1, column 13:
    PLS-00382: expression is of wrong type
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignored
    Error Code: 6550
    A couple of threads have hinted that what we are trying to do is not possible:
    How to get BOOLEAN from STORED PROCEDURES
    Re: Creating Named Query: from OracleCallableStatement
    This would possibly be due to 'restriction in the OCI layer'. Can anyone help? Is there really now way to call a valid PLSQL stored function via a named query when the return type is BOOLEAN?
    thanks

    I can't comment on possible issues you might have with the driver, but if it can be done in JDBC, it should be possible in TopLink.
    TopLink has the StoredFunctionCall which extends the StoredProcedureCall but adds an unnamed ouput parameter in the first spot of its parameter list. You will need to get the databasefield and set its type to BOOLEAN ie:
      DatabaseField returnField = (DatabaseField)yourStoredFunctionCall.getParameters().firstElement();
            returnField.setName(name);
            returnField.setSqlType(Type.BOOLEAN);Be sure not to use the setType() method, as I believe TopLink will try to use the Type.BIT when a boolean class is used as the classtype.
    Best Regards,
    Chris

  • How to pass text from flash to html?

    how to pass text from flash to html?

    This is a wonderful sample i found online.
    pls run using a server so that it can display properly
    http://active.tutsplus.com/tutorials/actionscript/flash-html-javascript-externalinterface/

  • How to get CLOB from stored procedure via StoredProcedureCall

    hi all
    I got "sp" on server : procedure get_text(p_in in varchar2, o_list out clob);
    in code:
    StoredProcedureCall call = new StoredProcedureCall();
    call.setProcedureName("get_text");
    call.addNamedArgumentValue("p_in", new String("MyList"));
    call.addNamedOutputArgument("o_list"); // <- out CLOB
    Vector v = (Vector)this.m_UnitOfWorkt.executeSelectingCall( call ); // <- here I got error
    but if o_list is varchar is all ok
    so how to get data from clob?
    Please help
    Regards
    Krzysztof

    Post Author: achaithanya
    CA Forum: Data Connectivity and SQL
    I'm connecting to database through stored procedure only.We have sybase installed on our local system so that we are given permissions only to access the stored procedures.When u see the fields in CR XI i.e Field explorer you are able to see only 1st result fileds.I connected to sybase and there i'm able to see the output of 1st & 2nd Result set.
    Regards,
    Chaithanya.

  • How to get photos from mac to iPhone 6? when i try it just comes up iCloud instead of my photos

    how to get photos from mac to iPhone 6? when i try it just comes up iCloud instead of my photos

    Make sure Settings > iCloud > Photos > iCloud Photo Library (Beta) = "Off"
    Then sync your iPhone using iTunes and make sure your sync settings for photos are set correctly in iTunes.

  • I got a new computer and don't know how to get music from ipod touch to itunes library

    I recently got a new computer and don't know how to get music from my ipod touch to show on my itunes library. 

    You need to transfer the iTunes folder from the old computer to the new one.
    iTunes: How to move your music to a new computer (Mac or Windows):
      http://support.apple.com/kb/HT4527

  • I have a new MacAir and don't know how to get info from my USB stick and my SD photo card.  Can anyone help me please?

    I have a new MacBook Air and don't know how to get info from my USB stick and get info from my SD card.  Can anyone help, please?

    Plug the stick and/or card into the appropriate slots on the side of your Air. Do you see icons for the devices appear on the desktop? Click into them to see what files are there.
    Matt

  • Am I the only one getting calls from 253-802-0308 about malicious file downloads after updating FIREFOX?

    After updating Firefox I start getting calls from 253-802-0308 (International Telcom in Auburn Washington, found using 411.com). The report that they are getting messages that my Windows PC is reporting the downloading of malicious files. I don't think that there is a connection with Mozilla but it only started after I ran the last 2 or 3 updates to Firefox. Searches on Google and other search engines don't show logical connections to the phone calls and the problem being reported to me. None of my anti-virus programs, Ccleaner, DEFENDER & AVG pickup and malicious files. I'm curious about who they may be because when I question them during the calls they end up hanging up on me. Just wondering if similar problems are being reported.

    That is a reported scammer set-up. Read some of the following from actual phone customers. It is not related to your Firefox updates. I have gotten a few of these types of calls on my '''''unlisted '''''home phone number over the past several years. They use a dialer, usually automatic and sequential number dialing. Get a loud whistle to blow into the phone mouth piece or one of those loud air horns from the hardware/sporting good store; this kind of trash deserves broken ear drums.
    *https://encrypted.google.com/search?q=253-802-0308&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a
    '''If this reply solves your problem, please click "Solved It" next to this reply when <u>signed-in</u> to the forum.'''
    Not related to your question, but...
    You need to update some plug-ins:
    *Plug-in check: https://www-trunk.stage.mozilla.com/en-US/plugincheck/
    *Adobe Shockwave for Director Netscape plug-in: [https://support.mozilla.com/en-US/kb/Using%20the%20Shockwave%20plugin%20with%20Firefox#w_installing-shockwave Installing ('''''or Updating''''') the Shockwave plugin with Firefox]

  • How to get data from a USB-UIRT device using Labview?

    How to get data from a USB-UIRT device using Labview?
    I'm trying to get data from a USB-UIRT device, is it posible with Labview?
    I really appreciate your help, 
    thanks

    You may want to contact the developer of the device for the API and DLL.
    http://65.36.202.170/phpBB2/viewforum.php?f=3

Maybe you are looking for

  • Sharing screens - premium account ?

    Hi,    I dont really want to buy a premium account for sharing screens with multiple people. I am using that not that often Why cant I pay it on the go per session ???    Are you planning to implement this ? Chris.

  • Matrix style sreen issue

    I've also posted this in the displays board but thought I'd post it here too: I have recently been having a problem with my disply on my laptop and linked screen, which also happens when the laptop on working on it's own. Basically, spots of colour a

  • RSS Vulnerability in Safari - Can we please get a patch for this

    Disclosure of information vulnerability in Safari Posted on Sun, 11 Jan 2009 Last edited Wed, 14 Jan 2009 Note: The original version of this page contained a simple workaround for this issue which I believed would protect users against this problem.

  • Safari will not save passwords now

    Safari on my MBPro will no longer (if it ever did) ask me if I want to save a new password once I enter it for a secure site.  I want that saved so I can use autofill.  I recently got my MacPro to do this for sites that do not want you to auto log on

  • Local web authentication fails

    hello experts!!! i'm having trouble making clients authenticate locally on a 2106 controller with ios v.4.1.171.0. do i need a radius server to be able to do local auth. also the auth login page does not appear automatically when i open a browser and