<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet title="XSL formatting" type="text/xsl" href="http://blog.pabloprieto.net/index.php/feed/rss2/xslt" ?><rss version="2.0"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
  <title>Pablo Prieto - Blog - red5</title>
  <link>http://blog.pabloprieto.net/index.php/</link>
  <description>&quot;Faire des sites web c'est pas facile tous les jours&quot;</description>
  <language>fr</language>
  <pubDate>Fri, 19 Mar 2010 06:31:23 +0100</pubDate>
  <copyright></copyright>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Dotclear</generator>
  
    
  <item>
    <title>Red5 : installation sous Mac OS X</title>
    <link>http://blog.pabloprieto.net/index.php/post/2007/05/15/Red5-%3A-installation-sous-Mac-OS-X</link>
    <guid isPermaLink="false">urn:md5:44c59fbed720890fb022064c03cde0f3</guid>
    <pubDate>Tue, 15 May 2007 12:58:00 +0200</pubDate>
    <dc:creator>Pab.</dc:creator>
        <category>Actionscript/Flash/Flex</category>
        <category>flash</category><category>mac</category><category>red5</category>    
    <description>&lt;p&gt;Un petit tutoriel pour vous permettre de démarrer rapidement sous &lt;a href=&quot;http://osflash.org/red5&quot; hreflang=&quot;en&quot;&gt;Red5&lt;/a&gt;&amp;nbsp;: installer et configurer le serveur, puis créer votre première application. Je vais détailler l'installation sous Mac OS X mais à quelques détails prêt ce tutorial peut être suivi et adapté pour les autres plates-formes.&lt;/p&gt;    &lt;p&gt;Vous aurez besoin&amp;nbsp;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;de &lt;a href=&quot;http://osflash.org/red5&quot; hreflang=&quot;en&quot;&gt;Red5&lt;/a&gt;...&lt;/li&gt;
&lt;li&gt;d'&lt;a href=&quot;http://www.eclipse.org/&quot; hreflang=&quot;en&quot;&gt;Eclipse&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;de Java et &lt;a href=&quot;http://ant.apache.org/&quot; hreflang=&quot;en&quot;&gt;Apache Ant&lt;/a&gt;, qui sont déjà fournis avec Mac OS X, ce qui va nous faire gagner du temps, on peut donc directement commencer par configurer Eclipse. Pour Windows, ces 2 composants doivent être installés au préalable.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Par défaut Red5 s'installe dans /Applications/Red5. Toutes les applications Red5 doivent être placées dans un dossier distinct à l'intérieur du dossier /webapps.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Au lancement d'Eclipe, définir le workspace à /Applications/Red5/webapps/. Le dossier webapps est le dossier contenant toutes les applications Red5, chacune dans un dossier distinct. Dans chaque dossier d'application doit se trouver un dossier /WEB-INF contenant les classes java et les fichiers xml de configuration.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Red5 propose dans le dossier /docs/templates un dossier d'application &quot;modèle&quot; qui va nous servir de base. Copiez donc le dossier /docs/templates/myapp dans le dossier /webapps et le renommer du nom de votre application (ici /webapps/monappli)&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Dans Eclipse, créez un nouveau projet (&quot;File&quot; &amp;gt; &quot;New&quot; &amp;gt; &quot;Project...&quot;), choisir &quot;Java Project&quot;, puis donner un nom à l'application. Choisir en dessous &quot;Create project from existing source&quot; puis choisir le dossier crée à l'étape précédente (/webapps/monappli) comme dossier du projet.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;img src=&quot;http://blog.pabloprieto.net/public/red5-1/red5-2.png&quot; alt=&quot;red5-2.png&quot; /&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Dans le dossier /WEB-INF, créez les dossiers /src et /classes. Le dossier /src sera le dossier contenant les sources java, /classes sera le dossier d'export pour les classes compilées.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Définir le dossier /WEB-INF/src comme dossier de sources, par un clic droit sur ce dossier puis &quot;Build Path&quot; &amp;gt; &quot;Use as Source Folder&quot;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;img src=&quot;http://blog.pabloprieto.net/public/red5-1/red5-5.png&quot; alt=&quot;red5-5.png&quot; /&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Faites un clic droit sur le dossier du projet puis &quot;Properties&quot;, &quot;Java Build Path&quot; à gauche, onglet &quot;Source&quot;, définir le dossier /WEB-INF/classes comme dossier de sortie (&quot;Default output folder&quot;)&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Toujours dans la fenêtre de propriétés du projet, onglet &quot;Librairies&quot;, cliquez sur &quot;Add External JARs&quot; puis sélectionnez red5.jar situé dans le dossier d'installation de Red5. Ceci va nous permettre d'utiliser l'API de Red5 dans notre application.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;img src=&quot;http://blog.pabloprieto.net/public/red5-1/red5-6.png&quot; alt=&quot;red5-6.png&quot; /&gt;&lt;/p&gt;


&lt;h3&gt;Fichiers de configuration&lt;/h3&gt;


&lt;p&gt;Ouvrez le fichier red5-web.properties et changez l'url de votre application&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
webapp.contextPath=/monappli
&lt;/pre&gt;


&lt;p&gt;Ouvrez ensuite le fichier &lt;em&gt;red5-web.xml&lt;/em&gt;. Dans ce dernier il va falloir changer le chemin vers la classe principale de notre application. Comme nous allons le voir à l'étape suivante, celle-ci s'appelle &quot;Application&quot; et est située dans le package &quot;demo&quot;&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
&amp;lt;bean id=&amp;quot;web.handler&amp;quot; class=&amp;quot;demo.Application&amp;quot; singleton=&amp;quot;true&amp;quot; /&amp;gt;
&lt;/pre&gt;


&lt;p&gt;Juste en dessous vous pouvez supprimer le noeud&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
&amp;lt;bean id=&amp;quot;myhandler.service&amp;quot; class=&amp;quot;the.path.to.my.ServiceHandler&amp;quot; singleton=&amp;quot;true&amp;quot; /&amp;gt;
&lt;/pre&gt;


&lt;p&gt;Ouvrez enfin &lt;em&gt;web.xml&lt;/em&gt; et modifiez la valeur de webAppRootKey avec le chemin vers votre application&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
&amp;lt;context-param&amp;gt;
		&amp;lt;param-name&amp;gt;webAppRootKey&amp;lt;/param-name&amp;gt;
		&amp;lt;param-value&amp;gt;/monappli&amp;lt;/param-value&amp;gt;
&amp;lt;/context-param&amp;gt;
&lt;/pre&gt;


&lt;h3&gt;Création de la classe Application&lt;/h3&gt;


&lt;p&gt;Dans le dossier de sources, créez un nouveau package &quot;demo&quot; (clic droit sur le dossier WEB-INF/src -&amp;gt; &quot;New&quot; -&amp;gt; &quot;Package&quot;) puis une nouvelle classe dans ce dernier. Nommez-là &quot;Application&quot;.&lt;/p&gt;


&lt;p&gt;&lt;img src=&quot;http://blog.pabloprieto.net/public/red5-1/red5-8.png&quot; alt=&quot;red5-8.png&quot; /&gt;&lt;/p&gt;


&lt;p&gt;Je vais ici reprendre l'exemple de base fourni dans la doc de Red5. Nous allons créer une application minimaliste qui possède une simple et unique fonction qui renvoie la somme entre 2 nombres. Plus simple tu meurs :)&lt;/p&gt;


&lt;p&gt;A noter, notre classe Application doit hériter de la classe org.red5.server.adapter.ApplicationAdapter.&lt;/p&gt;

&lt;pre&gt;
package demo;

import org.red5.server.adapter.ApplicationAdapter;

public class Application extends ApplicationAdapter {
	
	public double add(double a, double b){
		return a+b;
	}

}
&lt;/pre&gt;


&lt;h3&gt;Compilation et lancement du serveur&lt;/h3&gt;


&lt;p&gt;Red5 utilise &lt;a href=&quot;http://ant.apache.org/&quot; hreflang=&quot;en&quot;&gt;Ant&lt;/a&gt; pour simplifier et automatiser l'étape de compilation. Ant se configure à l'aide d'un fichier build.xml qui se trouve à l'intérieur du dossier d'installation de Red5 (/Application/Red5). Il va donc falloir modifier ce fichier afin d'intégrer notre classe dans le processus de compilation.&lt;/p&gt;


&lt;p&gt;Ouvrez le fichier build.xml puis à l'intérieur du noeud &amp;lt;target name=&quot;compile_demos&quot;&amp;gt;, rajoutez un nouveau noeud comme ceci&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
&amp;lt;javac sourcepath=&amp;quot;&amp;quot; srcdir=&amp;quot;${webapps.dir}/monappli/WEB-INF/src&amp;quot; destdir=&amp;quot;${webapps.dir}${tmp.war.dir}/monappli/WEB-INF/classes&amp;quot;
	 classpathref=&amp;quot;webapps.classpath&amp;quot; optimize=&amp;quot;${build.optimize}&amp;quot; verbose=&amp;quot;${build.verbose}&amp;quot;
	 fork=&amp;quot;${build.fork}&amp;quot; nowarn=&amp;quot;${build.nowarn}&amp;quot; deprecation=&amp;quot;${build.deprecation}&amp;quot;
	 debug=&amp;quot;${debug.state}&amp;quot; compiler=&amp;quot;${compiler}&amp;quot; source=&amp;quot;${java.target_version}&amp;quot; target=&amp;quot;${java.target_version}&amp;quot;/&amp;gt;
&lt;/pre&gt;


&lt;p&gt;Voilà, à présent tout est configuré, il ne reste plus qu'à lancer le processus de compilation et lancer le serveur. Pour ce faire, ouvrez une fenêtre du terminal, déplacez vous dans le dossier /Applications/Red5 puis lancez la commande&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
sudo ant server
&lt;/pre&gt;


&lt;p&gt;&lt;strong&gt;A noter :&lt;/strong&gt; sudo est nécessaire car les droits root sont requis dans le dossier /Applications pour y créer et modifier des dossiers et/ou fichiers. Si vous avez installé Red5 dans votre dossier personnel, vous pouvez vous passer de sudo.&lt;/p&gt;


&lt;p&gt;A la fin de la compilation, le serveur démarre, Red5 est lancé&amp;nbsp;!&lt;/p&gt;


&lt;h3&gt;Coté client&lt;/h3&gt;


&lt;p&gt;Nous allons désormais créer l'application cliente sous Flash. Dans un nouveau FLA, tapez le code suivant sur la première frame&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
var nc:NetConnection = new NetConnection();

nc.connect(&amp;quot;rtmp://localhost/monappli&amp;quot;);

nc.onResult = function(obj) {
	trace(&amp;quot;Le résultat est &amp;quot; + obj);
}

nc.call(&amp;quot;add&amp;quot;, nc, 1, 2);
&lt;/pre&gt;


&lt;p&gt;Vous l'avez déjà deviné, la méthode call permet d'appeler une méthode de l'application distante, puis le gestionnaire onResult permet de capter la réponse du serveur.&lt;/p&gt;


&lt;p&gt;Sauvegardez, testez, et admirez :)&lt;/p&gt;</description>
    
    
    
          <comments>http://blog.pabloprieto.net/index.php/post/2007/05/15/Red5-%3A-installation-sous-Mac-OS-X#comment-form</comments>
      <wfw:comment>http://blog.pabloprieto.net/index.php/post/2007/05/15/Red5-%3A-installation-sous-Mac-OS-X#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.pabloprieto.net/index.php/feed/rss2/comments/22</wfw:commentRss>
      </item>
    
</channel>
</rss>