For a Java application, I can create an Application, and uses this Application like a service with this configuration :
<bean id="web.handler"
class="org.red5.server.webapp.Webcam.Application" />
<bean id="webcam.service"
class="org.red5.server.webapp.Webcam.Application" />
For a Rhino application I don't found the good configuration, I have try this one :
<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="webcam.service" class="org.red5.server.script.rhino.RhinoScriptFactory">
<constructor-arg index="0" value="classpath:applications/main.js"/>
</bean>
But I have this error when I start the server :
[java] [INFO] 17548 main:( /Webcam.invoke0 ) Set web app root system property: '/Webcam' = [/home/neokod/coding/red5/webapps/Webcam/]
[java] [INFO] 17551 main:( /Webcam.invoke0 ) Initializing Log4J from [/home/neokod/coding/red5/webapps/Webcam/WEB-INF/log4j.properties]
[java] [INFO] 17563 main:( org.springframework.web.context.ContextLoader.info ) Root WebApplicationContext: initialization started
[java] [INFO] 17564 main:( /Webcam.invoke0 ) Loading Spring root WebApplicationContext
[java] [INFO] 17564 main:( org.springframework.web.context.ContextLoader.info ) Getting parent context definition: using parent context key of 'default.context' with BeanFactoryLocator
[java] [INFO] 17804 main:( org.springframework.beans.factory.config.PropertyPlaceholderConfigurer.info ) Loading properties file from ServletContext resource [/WEB-INF/red5-web.properties]
[java] [INFO] 17807 main:( org.springframework.beans.factory.support.DefaultListableBeanFactory.info ) Pre-instantiating singletons in factory [org.springframework.beans.factory.support.DefaultListableBeanFactory defining beans [placeholderConfig,web.context,web.scope,web.handler,webcam.service]; parent: org.springframework.beans.factory.support.DefaultListableBeanFactory defining beans [global.clientRegistry,global.serviceInvoker,global.mappingStrategy,global.context,global.handler,global.scope,red5.scopeResolver]; parent: org.springframework.beans.factory.support.DefaultListableBeanFactory defining beans [red5.server,serializer,deserializer,statusObjectService,rtmpCodecFactory,remotingCodecFactory,videoCodecFactory,streamableFileFactory,sharedObjectService,streamService,providerService,consumerService,FlowControlService,schedulingService,threadFactory,remotingPool,object.cache,flv.impl]; root of BeanFactory hierarchy]
[java] [INFO] 17818 main:( org.springframework.beans.factory.support.DefaultListableBeanFactory.info ) Destroying singletons in {org.springframework.beans.factory.support.DefaultListableBeanFactory defining beans [placeholderConfig,web.context,web.scope,web.handler,webcam.service]; parent: org.springframework.beans.factory.support.DefaultListableBeanFactory defining beans [global.clientRegistry,global.serviceInvoker,global.mappingStrategy,global.context,global.handler,global.scope,red5.scopeResolver]; parent: org.springframework.beans.factory.support.DefaultListableBeanFactory defining beans [red5.server,serializer,deserializer,statusObjectService,rtmpCodecFactory,remotingCodecFactory,videoCodecFactory,streamableFileFactory,sharedObjectService,streamService,providerService,consumerService,FlowControlService,schedulingService,threadFactory,remotingPool,object.cache,flv.impl]; root of BeanFactory hierarchy}
[java] [ERROR] 17821 main:( org.springframework.web.context.ContextLoader.error ) Context initialization failed
[java] org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'web.scope' defined in ServletContext resource [/WEB-INF/red5-web.xml]: Error setting property values; nested exception is org.springframework.beans.PropertyBatchUpdateException; nested PropertyAccessExceptions (1) are:
[java] PropertyAccessException 1: org.springframework.beans.TypeMismatchException: Failed to convert property value of type [org.red5.server.script.rhino.RhinoScriptFactory] to required type [org.red5.server.api.IScopeHandler] for property 'handler'; nested exception is java.lang.IllegalArgumentException: No matching editors or conversion strategy found
[java] Caused by:
[java] org.springframework.beans.PropertyBatchUpdateException; nested PropertyAccessException details (1) are:
[java] PropertyAccessException 1:
[java] org.springframework.beans.TypeMismatchException: Failed to convert property value of type [org.red5.server.script.rhino.RhinoScriptFactory] to required type [org.red5.server.api.IScopeHandler] for property 'handler'; nested exception is java.lang.IllegalArgumentException: No matching editors or conversion strategy found
[java] Caused by:
[java] java.lang.IllegalArgumentException: No matching editors or conversion strategy found
[java] at org.springframework.beans.TypeConverterDelegate.convertIfNecessary(TypeConverterDelegate.java:212)
[java] at org.springframework.beans.TypeConverterDelegate.convertIfNecessary(TypeConverterDelegate.java:127)
[java] at org.springframework.beans.BeanWrapperImpl.setPropertyValue(BeanWrapperImpl.java:775)
[java] at org.springframework.beans.BeanWrapperImpl.setPropertyValue(BeanWrapperImpl.java:608)
[java] at org.springframework.beans.AbstractPropertyAccessor.setPropertyValue(AbstractPropertyAccessor.java:49)
[java] at org.springframework.beans.AbstractPropertyAccessor.setPropertyValues(AbstractPropertyAccessor.java:74)
[java] at org.springframework.beans.AbstractPropertyAccessor.setPropertyValues(AbstractPropertyAccessor.java:57)
[java] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:970)
[java] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:729)
[java] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:416)
[java] at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:245)
[java] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:141)
[java] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:242)
[java] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:156)
[java] at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:290)
[java] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:348)
[java] at org.springframework.web.context.support.AbstractRefreshableWebApplicationContext.refresh(AbstractRefreshableWebApplicationContext.java:156)
[java] at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:246)
[java] at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:184)
[java] at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
[java] at org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:450)
[java] at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1129)
[java] at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:420)
[java] at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:457)
[java] at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:38)
[java] at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:156)
[java] at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:38)
[java] at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:119)
[java] at org.mortbay.jetty.Server.doStart(Server.java:210)
[java] at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:38)
[java] at org.red5.server.JettyLoader.init(JettyLoader.java:102)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[java] at java.lang.reflect.Method.invoke(Method.java:585)
[java] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1104)
[java] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1066)
[java] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1029)
[java] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:420)
[java] at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:245)
[java] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:141)
[java] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:242)
[java] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:156)
[java] at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:290)
[java] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:348)
[java] at org.springframework.context.access.ContextSingletonBeanFactoryLocator.initializeDefinition(ContextSingletonBeanFactoryLocator.java:136)
[java] at org.springframework.beans.factory.access.SingletonBeanFactoryLocator.useBeanFactory(SingletonBeanFactoryLocator.java:380)
[java] at org.red5.server.Standalone.main(Standalone.java:136)
[java] [WARN] 18038 main:( org.mortbay.log.invoke0 ) failed [EMAIL PROTECTED]/Webcam,file:/home/neokod/coding/red5/webapps/Webcam/}
[java] [WARN] 18039 main:( org.mortbay.log.invoke0 ) failed [EMAIL PROTECTED]
[java] [INFO] 18050 main:( org.mortbay.log.invoke0 ) Started SelectChannelConnector @ 0.0.0.0:5080
[java] [WARN] 18051 main:( org.mortbay.log.invoke0 ) failed [EMAIL PROTECTED]
[java] [ERROR] 18052 main:( org.red5.server.JettyLoader.error ) Error loading jetty
Is anyone know the good configuration of the red5-web.xml for this please ?
Thanks
signature.asc
Description: Ceci est une partie de message numériquement signée
_______________________________________________ Red5 mailing list [email protected] http://osflash.org/mailman/listinfo/red5_osflash.org
