I have followed the instructions in the readme.html file, but I’m not able to get the ServerListenerStreamPublisher working. (I’ve uninstalled and reinstalled WMS and was able to play the SimpleVideoStreaming example, so I believe my set up is correct.)
I copied the wms-plugin-collection.jar to /[install-dir]/lib and followed the other instructions in the readme for ServerListenerStreamPublisher. When I restart WMS, I get errors below. I believe it is being caused by adding the ServerListener to /conf/Server.xml.
Here is my Server.xml
<Root>
<Server>
<CommandInterface>
<HostPort>
<IpAddress>*</IpAddress>
<Port>8083</Port>
</HostPort>
</CommandInterface>
<AdminInterface>
<!-- Objects exposed through JMX interface: Server, VHost, VHostItem, Application, ApplicationInstance, MediaCaster, Module, Client, MediaStream, SharedObject, Acceptor, IdleWorker -->
<ObjectList>Server,VHost,VHostItem,Application,ApplicationInstance,MediaCaster,Module,IdleWorker</ObjectList>
</AdminInterface>
<!-- JMXUrl: service:jmx:rmi://localhost:8084/jndi/rmi://localhost:8085/jmxrmi -->
<JMXRemoteConfiguration>
<Enable>false</Enable>
<IpAddress>localhost</IpAddress> <!-- set to localhost or internal ip address if behind NAT -->
<RMIServerHostName>localhost</RMIServerHostName> <!-- set to external ip address or domain name if behind NAT -->
<RMIConnectionPort>8084</RMIConnectionPort>
<RMIRegistryPort>8085</RMIRegistryPort>
<Authenticate>true</Authenticate>
<PasswordFile>${com.wowza.wms.ConfigHome}/conf/jmxremote.password</PasswordFile>
<AccessFile>${com.wowza.wms.ConfigHome}/conf/jmxremote.access</AccessFile>
<SSLSecure>false</SSLSecure>
</JMXRemoteConfiguration>
<UserAgents>Shockwave Flash|CFNetwork|MacNetwork/1.0 (Macintosh)</UserAgents>
<ServerListeners>
<ServerListener> <BaseClass>com.wowza.wms.plugin.collection.serverlistener.ServerListenerStreamPublisher</BaseClass>
</ServerListener>
<!--
<ServerListener>
<BaseClass>com.wowza.wms.plugin.loadbalancer.ServerListenerLoadBalancerListener</BaseClass>
</ServerListener>
-->
<!--
<ServerListener>
<BaseClass>com.wowza.wms.plugin.loadbalancer.ServerListenerLoadBalancerSender</BaseClass>
</ServerListener>
-->
</ServerListeners>
<VHostListeners>
<!--
<VHostListener>
<BaseClass></BaseClass>
</VHostListener>
-->
</VHostListeners>
<HandlerThreadPool>
<PoolSize>10</PoolSize>
</HandlerThreadPool>
<TransportThreadPool>
<PoolSize>10</PoolSize>
</TransportThreadPool>
<RTP>
<DatagramStartingPort>6970</DatagramStartingPort>
</RTP>
<!-- Properties defined here will be added to the IServer.getProperties() collection -->
<Properties>
</Properties>
</Server>
</Root>
Here is what WMS reports on startup:
Last login: Wed Jun 2 19:12:15 on ttys000
cd /Library/WowzaMediaServer/bin;./startup.sh;exit
craig-rogerss-mac-pro:~ craiger522$ cd /Library/WowzaMediaServer/bin;./startup.sh;exit
./startup.sh: line 20: ulimit: open files: cannot modify limit: Invalid argument
Configure logging: file:///Library/WowzaMediaServer/conf/log4j.properties
Error starting: java.lang.reflect.InvocationTargetException
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:592)
at com.wowza.wms.bootstrap.Bootstrap.startServer(Unknown Source)
at com.wowza.wms.bootstrap.Bootstrap.main(Unknown Source)
Caused by: java.lang.UnsupportedClassVersionError: Bad version number in .class file
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:676)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:317)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:375)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:164)
at com.wowza.wms.util.ServerUtils.loadServerListener(Unknown Source)
at com.wowza.wms.util.ServerUtils.loadConfigFile(Unknown Source)
at com.wowza.wms.server.Server.loadConfig(Unknown Source)
at com.wowza.wms.server.Server.start(Unknown Source)
... 6 more
logout
[Process completed]
Probably a rookie mistake on my part, but does anyone see where the problem is? Thank you!