Red5 フリーソフトのFlashストリーミングサーバ ~開発クライアントの構築 その3~
(3)red5-web.xmlの編集
「red5-web.xml」は、Red5 アプリケーションを構成しているファイルとなります。
スクリプト実装または Java アプリケーションは、Spring bean 要素で構成されます。
ここでは、javascript・Python・JRuby・Groovyとふぅすうのアプリケーションを実装しています。
詳しくは、次回掲載内容で触れていきます。
変更する箇所は、25行目・77行目となります。
- 変更前
<?xml version="1.0" encoding="UTF-8" ?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:lang="http://www.springframework.org/schema/lang" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/lang http://www.springframework.org/schema/lang/spring-lang-3.0.xsd"> <bean id="placeholderConfig" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="location" value="/WEB-INF/red5-web.properties" /> </bean> <bean id="web.context" class="org.red5.server.Context" autowire="byType" /> <bean id="web.scope" class="org.red5.server.WebScope" init-method="register"> <property name="server" ref="red5.server" /> <property name="parent" ref="global.scope" /> <property name="context" ref="web.context" /> <property name="handler" ref="web.handler" /> <property name="contextPath" value="${webapp.contextPath}" /> <property name="virtualHosts" value="${webapp.virtualHosts}" /> </bean> <bean id="web.handler" class="org.red5.demos.oflaDemo.Application" /> <!-- <bean id="web.handler" class="org.red5.server.script.rhino.RhinoScriptFactory"> <constructor-arg index="0" value="classpath:applications/main.js"/> <constructor-arg index="1"> <list> <value>org.red5.server.api.IScopeHandler</value> <value>org.red5.server.adapter.IApplication</value> </list> </constructor-arg> <constructor-arg index="2"> <value>org.red5.server.adapter.ApplicationAdapter</value> </constructor-arg> </bean> <bean id="web.handler" class="org.springframework.scripting.jruby.JRubyScriptFactory"> <constructor-arg index="0" value="classpath:applications/main.rb"/> <constructor-arg index="1"> <list> <value>org.red5.server.api.IScopeHandler</value> <value>org.red5.server.adapter.IApplication</value> </list> </constructor-arg> </bean> <bean id="web.handler" class="org.red5.server.script.groovy.GroovyScriptFactory"> <constructor-arg index="0" value="classpath:applications/main.groovy"/> <constructor-arg index="1"> <list> <value>org.red5.server.api.IScopeHandler</value> <value>org.red5.server.adapter.IApplication</value> </list> </constructor-arg> </bean> <bean id="web.handler" class="org.red5.server.script.jython.JythonScriptFactory"> <constructor-arg index="0" value="classpath:applications/main.py"/> <constructor-arg index="1"> <list> <value>org.red5.server.api.IScopeHandler</value> <value>org.red5.server.adapter.IApplication</value> </list> </constructor-arg> <constructor-arg index="2"> <list> <value>One</value> <value>2</value> <value>III</value> </list> </constructor-arg> </bean> --> <bean id="demoService.service" class="org.red5.demos.oflaDemo.DemoService" /> <!-- <bean id="demoService.service" class="org.red5.server.script.rhino.RhinoScriptFactory"> <constructor-arg index="0" value="classpath:applications/demoservice.js"/> <constructor-arg index="1"> <list> <value>org.red5.demos.oflaDemo.IDemoService</value> </list> </constructor-arg> <constructor-arg index="2"> <value>org.red5.demos.oflaDemo.DemoServiceImpl</value> </constructor-arg> </bean> <bean id="demoService.service" class="org.springframework.scripting.jruby.JRubyScriptFactory"> <constructor-arg index="0" value="classpath:applications/demoservice.rb"/> <constructor-arg index="1"> <list> <value>org.red5.demos.oflaDemo.IDemoService</value> </list> </constructor-arg> </bean> <bean id="demoService.service" class="org.red5.server.script.jython.JythonScriptFactory"> <constructor-arg index="0" value="classpath:applications/demoservice.py"/> <constructor-arg index="1"> <list> <value>org.red5.demos.oflaDemo.IDemoService</value> </list> </constructor-arg> <constructor-arg index="2" ref="web.handler"/> </bean> --> <!-- Uncomment this if you are using scripting <bean class="org.springframework.scripting.support.ScriptFactoryPostProcessor"/> --> </beans>
<property name="virtualHosts" value="${webapp.virtualHosts}" /> </bean> <bean id="web.handler" class="org.red5.demos.oflaDemo2.Application" /> <!-- <bean id="web.handler" class="org.red5.server.script.rhino.RhinoScriptFactory"> <constructor-arg index="0" value="classpath:applications/main.js"/> <constructor-arg index="1">
</constructor-arg> </bean> --> <bean id="demoService.service" class="org.red5.demos.oflaDemo2.DemoService" /> <!-- <bean id="demoService.service" class="org.red5.server.script.rhino.RhinoScriptFactory"> <constructor-arg index="0" value="classpath:applications/demoservice.js"/> <constructor-arg index="1">
次に、「red5-web.properties」について見ていきます。
(4)「red5-web.properties」の編集
「red5-web.properties」はRed5 アプリケーションのパスやホスト名、あるいはIPアドレスを構成しているファイルとなります。
変更する箇所は、1行目となります。
- 変更前
-
webapp.contextPath=/oflaDemo webapp.virtualHosts=*, localhost, localhost:8088, 127.0.0.1:8088
- 変更後
webapp.contextPath=/oflaDemo2 webapp.virtualHosts=*, localhost, localhost:8088, 127.0.0.1:8088
ここまでが③に関するファイルの変更箇所と簡単な説明となります。
次回は①に関するファイルの変更箇所と簡単な説明となります。
次は「Red5 フリーソフトのFlashストリーミングサーバ ~開発クライアントの構築 その4~」について紹介していきます。