Red5应用程序无法连接

时间:2012-11-08 19:11:33

标签: red5

我试图在Red5上运行一个基本应用程序,它只是尝试连接到red5服务器(在localhost上)。该应用程序的来源如下:

import org.red5.server.adapter.ApplicationAdapter;
import org.red5.server.api.IConnection;
import org.red5.server.api.scope.IScope;
// import org.red5.server.api.service.ServiceUtils;

/**
* Sample application that uses the client manager.
* 
* @author The Red5 Project (red5@osflash.org)
*/
public class Application extends ApplicationAdapter {

/** {@inheritDoc} */
@Override
public boolean connect(IConnection conn, IScope scope, Object[] params) {
    return true;
}

/** {@inheritDoc} */
@Override
public void disconnect(IConnection conn, IScope scope) {
    super.disconnect(conn, scope);
   }

}

我的客户端代码也很基本。为简洁起见,该片段如下:

public function onCreationComplete(event:FlexEvent) : void {
            // setup connection code
            connection = new NetConnection();
            connection.connect("rtmp://localhost/Player");
            connection.addEventListener(NetStatusEvent.NET_STATUS, onConnectionNetStatus);
            connection.client = this;   
        }

public function onConnectionNetStatus(event:NetStatusEvent) : void {
            // did we successfully connect
            if(event.info.code == "NetConnection.Connect.Success") {
                Alert.show("Successful Connection", "Information");
            } else {
                Alert.show("Unsuccessful Connection "+event.info.code, "Information");
            }

请注意,我让警告框显示错误代码,以便我可以看到会发生什么。

在客户端,当我尝试连接时,我收到两条失败消息:

  

连接失败NetConnection.Connect.Closed   连接失败NetConnection.Connect.Rejected

在服务器端,我看到以下内容:

  

[INFO] [NioProcessor-10]   org.red5.server.net.rtmp.codec.RTMPProtocolDecoder - 动作连接

     

[INFO] [NioProcessor-10] org.red5.server.net.rtmp.RTMPConnection -   将对象编码设置为AMF3

     

[INFO] [NioProcessor-10] org.red5.server.net.rtmp.RTMPHandler - 范围   在localhost上找不到播放器

     

[警告] [Red5_Scheduler_Worker-3]   org.red5.server.net.rtmp.RTMPConnection - 关闭RTMPMinaConnection   从127.0.0.1:50051到localhost(在:3334 out 3256),id为9   由于长时间的握手

由于某种错误的配置,似乎很明显出现问题。不幸的是,我不知道在哪里寻找问题。

请问有人可以知道出了什么问题以及如何解决这个问题?谢谢......

ADDITION:运行Red5 v1 RC2时发生的启动异常:

Exception in thread "Launcher:/Player" org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with
name 'web.context' defined in ServletContext resource [/WEB-INF/red5-web.xml]: 
Unsatisfied dependency expressed through bean property 'clientRegistry': : Cannot find class [org.red5.server.WebScope] for bean with name 'web.scope' defined in ServletContext resource [/WEB-INF/red5-web.xml]; 
nested exception is java.lang.ClassNotFoundException: org.red5.server.WebScope; nested exception is org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [org.red5.server.WebScope] for bean with name 'web.scope' defined in ServletContext resource [/WEB-INF/red5-web.xml]; nested exception is java.lang.ClassNotFoundException: org.red5.server.WebScope
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1199)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1091)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:585)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:913)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:464)
at org.red5.server.tomcat.TomcatLoader$1.run(TomcatLoader.java:593)
Caused by: org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [org.red5.server.WebScope] for bean with name 'web.scope' defined in ServletContext resource [/WEB-INF/red5-web.xml]; nested exception is java.lang.ClassNotFoundException: org.red5.server.WebScope
at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1262)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.predictBeanType(AbstractAutowireCapableBeanFactory.java:576)
at org.springframework.beans.factory.support.AbstractBeanFactory.isFactoryBean(AbstractBeanFactory.java:1331)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:317)
at org.springframework.beans.factory.BeanFactoryUtils.beanNamesForTypeIncludingAncestors(BeanFactoryUtils.java:185)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:833)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:790)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:707)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1184)
... 11 more
Caused by: java.lang.ClassNotFoundException: org.red5.server.WebScope
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1680)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526)
at org.springframework.util.ClassUtils.forName(ClassUtils.java:258)
at org.springframework.beans.factory.support.AbstractBeanDefinition.resolveBeanClass(AbstractBeanDefinition.java:417)
at org.springframework.beans.factory.support.AbstractBeanFactory.doResolveBeanClass(AbstractBeanFactory.java:1283)
at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1254)
... 19 more

4 个答案:

答案 0 :(得分:1)

另一个事实可能是你有2个Red5.jars所以你必须删除一个。在我的情况下,它很好用。 这篇文章的大Ty

答案 1 :(得分:1)

将red5-web.xml文件中的org.red5.server.WebScope更改为org.red5.server.scope.WebScope

答案 2 :(得分:0)

那是什么版本的Red5?
启动自定义Web应用程序时是否有例外?服务器启动时可能已经出现错误,从而导致您的问题。

塞巴斯蒂安

答案 3 :(得分:0)

您尝试连接到“播放器”的应用程序范围在服务器上不存在;日志记录为“在本地主机上找不到范围播放器”。这通常意味着您的应用程序没有加载。它没有加载的原因看起来像WebScope的类包错误。将beans类属性更改为org.red5.server.scope.WebScope,然后重试。

相关问题