2011-11-22 2 views
2

J'aimerais apprendre le développement mobile Adobe Flex.Comment appeler une méthode Java dans une application mobile Adobe Flex

J'ai créé un nouveau projet appelé SampleProject, puis j'ai reçu SampleProject.mxml dans le paquet par défaut et SampleProjectHomeView.mxml.

J'ai utilisé une balise de script pour la mise en œuvre comme suit:

<?xml version="1.0" encoding="utf-8"?> 
<s:View xmlns:fx="http://ns.adobe.com/mxml/2009" 
    xmlns:s="library://ns.adobe.com/flex/spark" title="HomeView"> 
<fx:Declarations> 
    <!-- Place non-visual elements (e.g., services, value objects) here --> 
</fx:Declarations> 

<fx:Script> 
    <![CDATA[ 

       // here I would like to call methods from java class  

    ]]> 
</fx:Script> 

À partir du code ci-dessus, je voudrais appeler les méthodes d'une classe Java dans le script. J'ai écrit le code Java comme suit:

public class Sample 
    { 

public void add(int a,int b) 
{ 

    int c; 

    c=a+b; 

    System.out.println("addition of two"+c); 

} 

public void sub(int a,int b) 
{ 

    int c; 

    c=a+b; 

    System.out.println("subtraction of two"+c); 

} 

}

Comment puis-je appeler les add et sub méthodes de la classe ci-dessus SampleProjectHomeView.mxml?

S'il vous plaît, n'importe qui, aidez-moi.

+1

Connaissez-vous la fonctionnalité Extensions pour AIR mobile? Je pense que c'est probablement ce que vous cherchez. – Ryan

Répondre

1

Vous pouvez faire en sorte que votre application Flex communique avec une application Java à l'aide de BlazeDS. http://opensource.adobe.com/wiki/display/blazeds/BlazeDS. Et généralement les gens utilisent Spring-Flex (http://www.springsource.org/spring-flex) pour l'intégration.

Je l'ai déjà fait et il y a beaucoup d'efforts d'intégration, surtout si vous voulez automatiser l'ensemble du processus de construction. Peut-être que c'est beaucoup plus facile maintenant, mais je ne vous recommande pas vraiment d'aller dans cette voie à moins d'avoir un investissement important dans votre code Java.

Une autre approche alternative est de créer un service web RESTful simple (play-framework est recommandé) et de laisser Flex parler au web-service. Après tout, cela se résume à l'arbitrage de votre décision technologique.

Questions connexes