How's the stream created ? DecodedStream is sort of an inverse of EncodedStream in that it produces/cosumes bytes (when in binary mode) and expects to read/write characters to/from the underlying stream. In text mode it just passes the characters through.
There seems to be something wrong with how the stream is applied here. HTH, Martin "Andrés Garagiola"<[hidden email]> wrote: > In the following method, implemented on DecodedStream class: > > on: aStream encodedBy: aStreamEncoder > > super on: aStream encodedBy: aStreamEncoder. > binary := true. > cache := ReadWriteStream on: (ByteArray new: 10). > crPreceeding := false. > > asume that aStreamEncoder is a binary encoder. > I´m trying upload a text file in a Seaside FileLibrary and occurs this error > "Strings only store Characters" becouse this metods answer a binary stream > when is expected a text stream. > > Any body know if this is a bug? > > Thanks > Andrés > > Strings only store Characters > ByteString(Object)>>error: > ByteString>>at:put: > WriteStream(InternalStream)>>pastEndPut: > WriteStream>>nextPut: > optimized [] in Grease.GRVisualWorksPlatform>>convertToSmalltalkNewlines: > String class(SequenceableCollection class)>>streamContents: > Grease.GRVisualWorksPlatform>>convertToSmalltalkNewlines: > IpsGSG.ApplicationLibrary(Seaside.WAFileLibrary)>>addFile: > Grease.GRUnboundDelayedSend>>valueWithArguments: > Grease.GRUnboundDelayedSend>>valueWithPossibleArguments: > Seaside.WAUploadCallback(Seaside.WAValueCallback)>>evaluateWithArgument: > Seaside.WAUploadCallback(Seaside.WACallback)>>evaluateWithField: > optimized [] in Seaside.WACallbackRegistry>>handle: > SortedCollection(OrderedCollection)>>do: > Seaside.WACallbackRegistry>>handle: > optimized [] in [] in Seaside.WAActionPhaseContinuation>>runCallbacks > BlockClosure>>on:do: > Seaside.WAFlowActionPhaseContinuation(Seaside.WARenderLoopContinuation)>>withNotificationHandlerDo: > optimized [] in Seaside.WAActionPhaseContinuation>>runCallbacks > BlockClosure>>ensure: > Seaside.WAFlowActionPhaseContinuation(Seaside.WAActionPhaseContinuation)>>runCallbacks > Seaside.WAFlowActionPhaseContinuation>>runCallbacks > Seaside.WAFlowActionPhaseContinuation(Seaside.WAActionPhaseContinuation)>>handleRequest > optimized [] in Seaside.WASessionContinuation>>basicValue > BlockClosure>>on:do: > Seaside.WAFlowActionPhaseContinuation(Seaside.WASessionContinuation)>>withUnregisteredHandlerDo: > Seaside.WAFlowActionPhaseContinuation(Seaside.WASessionContinuation)>>basicValue > Seaside.WAFlowActionPhaseContinuation(Seaside.WASessionContinuation)>>value > Seaside.WASession>>handleFiltered: > Seaside.WAMutualExclusionFilter(Seaside.WARequestFilter)>>handleFiltered: > optimized [] in Seaside.WAMutualExclusionFilter>>handleFiltered: > BlockClosure>>ensure: > optimized [] in Seaside.WAMutex>>critical: > BlockClosure>>ensure: > Semaphore>>critical: > Seaside.WAMutex>>critical: > Seaside.WAMutualExclusionFilter>>handleFiltered: > optimized [] in Seaside.WARequestHandler>>handle: > BlockClosure>>on:do: > Seaside.WACurrentRequestContext class(Seaside.WADynamicVariable > class)>>use:during: > optimized [] in Seaside.WARequestContext>>push:while: > BlockClosure>>ensure: > Seaside.WARequestContext>>push:while: > Seaside.WASession(Seaside.WARequestHandler)>>handle: > Seaside.WAApplication(Seaside.WARegistry)>>dispatch:to: > Seaside.WAApplication(Seaside.WARegistry)>>handleKeyed:with: > Seaside.WAApplication(Seaside.WARegistry)>>handleFiltered: > Seaside.WAApplication>>handleFiltered: > Seaside.WAExceptionFilter(Seaside.WARequestFilter)>>handleFiltered: > optimized [] in Seaside.WAExceptionFilter>>handleFiltered: > BlockClosure>>on:do: > Seaside.WAWalkbackErrorHandler(Seaside.WAExceptionHandler)>>handleExceptionsDuring: > Seaside.WAWalkbackErrorHandler class(Seaside.WAExceptionHandler > class)>>handleExceptionsDuring:context: > Seaside.WAExceptionFilter>>handleFiltered: > optimized [] in Seaside.WARequestHandler>>handle: > BlockClosure>>on:do: > Seaside.WACurrentRequestContext class(Seaside.WADynamicVariable > class)>>use:during: > optimized [] in Seaside.WARequestContext>>push:while: > BlockClosure>>ensure: > Seaside.WARequestContext>>push:while: > Seaside.WAApplication(Seaside.WARequestHandler)>>handle: > Seaside.WADispatcher>>handleFiltered:named: > Seaside.WADispatcher>>handleFiltered: > optimized [] in Seaside.WARequestHandler>>handle: > BlockClosure>>on:do: > Seaside.WACurrentRequestContext class(Seaside.WADynamicVariable > class)>>use:during: > optimized [] in Seaside.WARequestContext>>push:while: > BlockClosure>>ensure: > Seaside.WARequestContext>>push:while: > Seaside.WADispatcher(Seaside.WARequestHandler)>>handle: > optimized [] in Opentalk.SeasideRequest>>doTheWorkFor: > BlockClosure>>on:do: > Opentalk.SeasideRequest>>doTheWorkFor: > Opentalk.SeasideRequest(Opentalk.RemoteRequest)>>evaluateFor: > Opentalk.SeasideRequest(Opentalk.RemoteRequestWithEnvironment)>>evaluateFor: > optimized [] in Opentalk.RemoteMessage>>dispatchFor: > BlockClosure>>on:do: > Opentalk.SeasideRequest(Opentalk.RemoteMessage)>>dispatchFor: > optimized [] in Opentalk.RemoteRequest>>dispatchFor: > BlockClosure>>on:do: > optimized [] in Process class>>forBlock:priority: > > ---------------------------------------------------------------------- > ByteString(Object)>>error: > Receiver: > a ByteString > Arguments: > aStringOrMessage = an UserMessage('Strings only store Characters', > #errStoreCharacters, #dialogs) > Context PC = 6 > > ---------------------------------------------------------------------- > ByteString>>at:put: > Receiver: > a ByteString > Arguments: > index = 1 > aCharacter = 104 > Temporaries: > two = nil > Context PC = 65 > > ---------------------------------------------------------------------- > WriteStream(InternalStream)>>pastEndPut: > Receiver: > a WriteStream > Instance Variables: > collection = ' > > _______________________________________________ > vwnc mailing list > [hidden email] > http://lists.cs.uiuc.edu/mailman/listinfo/vwnc > _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
Free forum by Nabble | Edit this page |