Hi,
When I create a Persistent shared object:
//set to true to indicate that is a persistent Shared Object
ISharedObject PSO = this.getSharedObject(scope, "messagePSO", true);
and then try and call the setAttribute, addSharedObjectListener or
registerServiceListener methods (Transient objects are fine), I get a
java.lang.StringIndexOutOfBoundsException. Is this a bug or am I doing
something wrong?
[ERROR] 37702 pool-1-thread-3:( org.red5.server.net.rtmp.RTMPHandler.error )
Error connecting
java.lang.StringIndexOutOfBoundsException: String index out of range: 0
at java.lang.String.charAt(String.java:558)
at org.red5.server.persistence.RamPersistence.getObjectId(
RamPersistence.java:111)
at org.red5.server.persistence.RamPersistence.save(
RamPersistence.java:131)
at org.red5.server.persistence.FilePersistence.save(
FilePersistence.java:367)
at org.red5.server.so.SharedObject.notifyModified(SharedObject.java
:342)
at org.red5.server.so.SharedObject.endUpdate(SharedObject.java:598)
at org.red5.server.so.SharedObjectScope.endUpdate(
SharedObjectScope.java:166)
at org.red5.server.so.SharedObjectScope.setAttribute(
SharedObjectScope.java:388)
at org.red5.webapps.red5java.Application.initPSOwithListener(
Application.java:398)
at org.red5.webapps.red5java.Application.appConnect(Application.java
:113)
at org.red5.server.adapter.ApplicationAdapter.connect(
ApplicationAdapter.java:182)
at org.red5.server.Scope.connect(Scope.java:456)
at org.red5.server.BaseConnection.connect(BaseConnection.java:232)
at org.red5.server.net.rtmp.RTMPHandler.onInvoke(RTMPHandler.java
:238)
at org.red5.server.net.rtmp.BaseRTMPHandler.messageReceived(
BaseRTMPHandler.java:120)
at org.red5.server.net.rtmp.RTMPMinaIoHandler.messageReceived(
RTMPMinaIoHandler.java:117)
at
org.apache.mina.common.support.AbstractIoFilterChain$2.messageReceived(
AbstractIoFilterChain.java:189)
at
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived
(AbstractIoFilterChain.java:502)
at org.apache.mina.common.support.AbstractIoFilterChain.access$1000(
AbstractIoFilterChain.java:52)
at
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived
(AbstractIoFilterChain.java:777)
at org.red5.io.filter.ExecutorFilter.processEvent(
ExecutorFilter.java:349)
at org.red5.io.filter.ExecutorFilter$ProcessEventsRunnable.run(
ExecutorFilter.java:411)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(
ThreadPoolExecutor.java:650)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(
ThreadPoolExecutor.java:675)
at java.lang.Thread.run(Thread.java:595)
getObjectId in RamPersistence.java calls getPath on an empty string and
therefore Persistent object methods fail from there.
--
C is forever.
_______________________________________________
Red5 mailing list
[email protected]
http://osflash.org/mailman/listinfo/red5_osflash.org