[Seaside] VW cgi interface
Brett Taylor
brett.taylor at healthauditors.com
Wed Mar 3 18:00:25 CET 2004
Has anyone successfully used Seaside or Visualworks 7.2 with Apache and
the CGI i/f (WaveIPRequestBroker)? I'm encountering walkbacks in the
method SeasideServlet>>doGet:response:. Seaside works fine for me using
the WaveHTTPRequestBroker in VW.
Thanks,
Brett Taylor
Stack Trace follows:
Unhandled exception: BlockClosure [] in Object>>doesNotUnderstand:
ISO8859L1String(Object)>>doesNotUnderstand:
Seaside.SeasideServlet>>doGet:response:
Seaside.SeasideServlet(VisualWave.HttpServlet)>>service:response:
VisualWave.ServletHandler>>basicEvaluate
optimized [] in VisualWave.WWHandler>>evaluate
BlockClosure>>on:do:
VisualWave.ServletHandler(VisualWave.WWHandler)>>evaluate
VisualWave.ServletHandler>>sendEntityOver:
VisualWave.ServletHandler(VisualWave.WWHandler)>>sendCGIOver:for:
optimized [] in VisualWave.WebRequest>>answerWith:
BlockClosure>>on:do:
VisualWave.WebRequest>>answerWith:
VisualWave.WebRequestService>>privateDispatchRequest:
VisualWave.WebRequestService>>dispatchRequest:
VisualWave.WebRequestService>>privateServe:
optimized [] in VisualWave.WebRequestService>>serveMarshaller:
BlockClosure>>on:do:
VisualWave.WebRequestService>>serveMarshaller:
VisualWave.WaveMarshaler>>handleIncomingMessageOn:
optimized [] in [] in VisualWave.WaveTransport>>handlingIncomingMessage
BlockClosure>>ensure:
optimized [] in VisualWave.WaveTransport>>handlingIncomingMessage
BlockClosure>>on:do:
VisualWave.WaveTransport>>handlingIncomingMessage
VisualWave.WaveTransport>>serverProcessBody
optimized [] in Transport>>startServerProcess
BlockClosure>>on:do:
optimized [] in Process class>>forBlock:priority:
----------------------------------------------------------------------
ISO8859L1String(Object)>>doesNotUnderstand:
Receiver:
an ISO8859L1String
Arguments:
aMessage = a Message with selector: #path and arguments: #()
Temporaries:
excpt = a MessageNotUnderstood
resumeValue = nil
Context PC = 25
----------------------------------------------------------------------
Seaside.SeasideServlet>>doGet:response:
Receiver:
a Seaside.SeasideServlet
Instance Variables:
servletConfig = a VisualWave.ServletConfig
dispatcherInitialized = true
Arguments:
aRequest = a VisualWave.Request
aResponse = a VisualWave.Response
Temporaries:
waRequest = nil
waResponse = nil
dispatcher = nil
handler = nil
Context PC = 16
----------------------------------------------------------------------
Seaside.SeasideServlet(VisualWave.HttpServlet)>>service:response:
Receiver:
a Seaside.SeasideServlet
Instance Variables:
servletConfig = a VisualWave.ServletConfig
dispatcherInitialized = true
Arguments:
aServletRequest = a VisualWave.Request
aServletResponse = a VisualWave.Response
Temporaries:
method = 'GET'
Context PC = 13
----------------------------------------------------------------------
VisualWave.ServletHandler>>basicEvaluate
Receiver:
a VisualWave.ServletHandler
Instance Variables:
status = nil
reasonString = ''
webRequest = a VisualWave.WebRequest
webSite = WebSite register
server = nil
request = a VisualWave.Request
response = a VisualWave.Response
session = a VisualWave.HttpSession: key=14742032556888673255717667982,
last accessed (March 3, 2004 8:54:02.000)
servletName = 'SeasideServlet'
servletClass = nil
servlet = a Seaside.SeasideServlet
Context PC = 7
----------------------------------------------------------------------
optimized [] in VisualWave.WWHandler>>evaluate
Receiver:
an UndefinedObject
Temporaries:
.self = a VisualWave.ServletHandler
Context PC = 6
----------------------------------------------------------------------
BlockClosure>>on:do:
Receiver:
a BlockClosure
Instance Variables:
method = CompiledBlock [] in VisualWave.WWHandler>>evaluate
outerContext = nil
copiedValues = a VisualWave.ServletHandler
Arguments:
anExceptionSelector = VisualWave.SkipRestOfPageException
handlerBlock = BlockClosure [] in VisualWave.WWHandler>>evaluate
Context PC = 18
----------------------------------------------------------------------
VisualWave.ServletHandler(VisualWave.WWHandler)>>evaluate
Receiver:
a VisualWave.ServletHandler
Instance Variables:
status = nil
reasonString = ''
webRequest = a VisualWave.WebRequest
webSite = WebSite register
server = nil
request = a VisualWave.Request
response = a VisualWave.Response
session = a VisualWave.HttpSession: key=14742032556888673255717667982,
last accessed (March 3, 2004 8:54:02.000)
servletName = 'SeasideServlet'
servletClass = nil
servlet = a Seaside.SeasideServlet
Context PC = 12
----------------------------------------------------------------------
VisualWave.ServletHandler>>sendEntityOver:
Receiver:
a VisualWave.ServletHandler
Instance Variables:
status = nil
reasonString = ''
webRequest = a VisualWave.WebRequest
webSite = WebSite register
server = nil
request = a VisualWave.Request
response = a VisualWave.Response
session = a VisualWave.HttpSession: key=14742032556888673255717667982,
last accessed (March 3, 2004 8:54:02.000)
servletName = 'SeasideServlet'
servletClass = nil
servlet = a Seaside.SeasideServlet
Arguments:
aStream = an ExternalReadAppendStream
Context PC = 4
----------------------------------------------------------------------
VisualWave.ServletHandler(VisualWave.WWHandler)>>sendCGIOver:for:
Receiver:
a VisualWave.ServletHandler
Instance Variables:
status = nil
reasonString = ''
webRequest = a VisualWave.WebRequest
webSite = WebSite register
server = nil
request = a VisualWave.Request
response = a VisualWave.Response
session = a VisualWave.HttpSession: key=14742032556888673255717667982,
last accessed (March 3, 2004 8:54:02.000)
servletName = 'SeasideServlet'
servletClass = nil
servlet = a Seaside.SeasideServlet
Arguments:
aStream = an ExternalReadAppendStream
aWebRequest = a VisualWave.WebRequest
Context PC = 5
----------------------------------------------------------------------
optimized [] in VisualWave.WebRequest>>answerWith:
Receiver:
an UndefinedObject
Temporaries:
.self = a VisualWave.WebRequest
.aResponse = a VisualWave.ServletHandler
Context PC = 26
----------------------------------------------------------------------
BlockClosure>>on:do:
Receiver:
a BlockClosure
Instance Variables:
method = CompiledBlock [] in VisualWave.WebRequest>>answerWith:
outerContext = nil
copiedValues = an Array[2]
Arguments:
anExceptionSelector = an ExceptionSet[1]
handlerBlock = BlockClosure [] in VisualWave.WebRequest>>answerWith:
Context PC = 18
----------------------------------------------------------------------
VisualWave.WebRequest>>answerWith:
Receiver:
a VisualWave.WebRequest
Instance Variables:
httpRequest = nil
serverEnvironment = a Dictionary[34]
queryData = nil
cookieData = a VisualWave.IM_ApplicationWWWFormUrlEncoded
responseStream = an ExternalReadAppendStream
consumedPath = an OrderedCollection[3]
unconsumedPath = an OrderedCollection[3]
initiator = a VisualWave.WebRequestService
entities = nil
webSite = WebSite register
session = a VisualWave.HttpSession: key=14742032556888673255717667982,
last accessed (March 3, 2004 8:54:02.000)
isAnswered = false
Arguments:
aResponse = a VisualWave.ServletHandler
Context PC = 13
----------------------------------------------------------------------
VisualWave.WebRequestService>>privateDispatchRequest:
Receiver:
a VisualWave.WebRequestService
Instance Variables:
resolver = a VisualWave.PathInfoPrefixResolver
server = WaveIPRequestBroker active localhost:2223
trapErrors = false
logChannels = a Dictionary[2]
logChannelsMutex = a Semaphore[0]
loadLogChannel = nil
Arguments:
aWebRequest = a VisualWave.WebRequest
Temporaries:
responder = a VisualWave.WWResponder
answer = a VisualWave.ServletHandler
Context PC = 14
----------------------------------------------------------------------
VisualWave.WebRequestService>>dispatchRequest:
Receiver:
a VisualWave.WebRequestService
Instance Variables:
resolver = a VisualWave.PathInfoPrefixResolver
server = WaveIPRequestBroker active localhost:2223
trapErrors = false
logChannels = a Dictionary[2]
logChannelsMutex = a Semaphore[0]
loadLogChannel = nil
Arguments:
aWebRequest = a VisualWave.WebRequest
Context PC = 5
----------------------------------------------------------------------
VisualWave.WebRequestService>>privateServe:
Receiver:
a VisualWave.WebRequestService
Instance Variables:
resolver = a VisualWave.PathInfoPrefixResolver
server = WaveIPRequestBroker active localhost:2223
trapErrors = false
logChannels = a Dictionary[2]
logChannelsMutex = a Semaphore[0]
loadLogChannel = nil
Arguments:
aStream = an ExternalReadAppendStream
Temporaries:
answer = nil
webHit = a VisualWave.WebHit
request = a VisualWave.WebRequest
Context PC = 49
----------------------------------------------------------------------
optimized [] in VisualWave.WebRequestService>>serveMarshaller:
Receiver:
an UndefinedObject
Temporaries:
.self = a VisualWave.WebRequestService
.stream = an ExternalReadAppendStream
Context PC = 7
----------------------------------------------------------------------
BlockClosure>>on:do:
Receiver:
a BlockClosure
Instance Variables:
method = CompiledBlock [] in
VisualWave.WebRequestService>>serveMarshaller:
outerContext = nil
copiedValues = an Array[2]
Arguments:
anExceptionSelector = an ExceptionSet[2]
handlerBlock = BlockClosure [] in
VisualWave.WebRequestService>>serveMarshaller:
Context PC = 18
----------------------------------------------------------------------
VisualWave.WebRequestService>>serveMarshaller:
Receiver:
a VisualWave.WebRequestService
Instance Variables:
resolver = a VisualWave.PathInfoPrefixResolver
server = WaveIPRequestBroker active localhost:2223
trapErrors = false
logChannels = a Dictionary[2]
logChannelsMutex = a Semaphore[0]
loadLogChannel = nil
Arguments:
aWaveMarshaller = a VisualWave.WaveMarshaler
Temporaries:
stream = an ExternalReadAppendStream
alreadyHandledOnce = true
Context PC = 26
----------------------------------------------------------------------
VisualWave.WaveMarshaler>>handleIncomingMessageOn:
Receiver:
a VisualWave.WaveMarshaler
Instance Variables:
manager = Transport<a VisualWave.WaveTransport
configuration = MarshalerConfiguration wave
service: a VisualWave.WebRequestService
service = a VisualWave.WebRequestService
virtualDirectories = nil
hostname = nil
port = nil
Arguments:
aTransport = Transport<a VisualWave.WaveTransport
Context PC = 4
----------------------------------------------------------------------
optimized [] in [] in VisualWave.WaveTransport>>handlingIncomingMessage
Receiver:
an UndefinedObject
Temporaries:
.self = Transport<a VisualWave.WaveTransport
Context PC = 7
----------------------------------------------------------------------
BlockClosure>>ensure:
Receiver:
a BlockClosure
Instance Variables:
method = CompiledBlock [] in [] in
VisualWave.WaveTransport>>handlingIncomingMessage
outerContext = nil
copiedValues = Transport<a VisualWave.WaveTransport
Arguments:
aBlock = BlockClosure [] in [] in
VisualWave.WaveTransport>>handlingIncomingMessage
Temporaries:
result = nil
Context PC = 4
----------------------------------------------------------------------
optimized [] in VisualWave.WaveTransport>>handlingIncomingMessage
Receiver:
an UndefinedObject
Temporaries:
.self = Transport<a VisualWave.WaveTransport
Context PC = 13
----------------------------------------------------------------------
BlockClosure>>on:do:
Receiver:
a BlockClosure
Instance Variables:
method = CompiledBlock [] in
VisualWave.WaveTransport>>handlingIncomingMessage
outerContext = nil
copiedValues = Transport<a VisualWave.WaveTransport
Arguments:
anExceptionSelector = Error
handlerBlock = BlockClosure [] in
VisualWave.WaveTransport>>handlingIncomingMessage
Context PC = 18
----------------------------------------------------------------------
VisualWave.WaveTransport>>handlingIncomingMessage
Receiver:
a VisualWave.WaveTransport
Instance Variables:
handlers = nil
state = #running
manager = Adaptor<a VisualWave.WaveConnectionAdaptor
serverProcess = a Process in Process>>resume
sendLock = a Semaphore[0]
marshaler = a VisualWave.WaveMarshaler
unmarshaler = a VisualWave.WaveMarshaler
readBuffer = a TransportMessageHeader[1024]
writeBuffer = a TransportMessageHeader[1024]
configuration = TransportConfiguration waveCGI
marshaler: (MarshalerConfiguration wave
service: a VisualWave.WebRequestService)
serverPriority: 65
requestRegistry = an OtWeakValueDictionary
nextRequestId = 0
sessionObjects = a Set[0]
id = IPSocketAddress(port#35550 at:hana)
writeStream = an ExternalReadAppendStream
readStream = an ExternalReadAppendStream
socket = an active SocketAccessor
Context PC = 12
----------------------------------------------------------------------
VisualWave.WaveTransport>>serverProcessBody
Receiver:
a VisualWave.WaveTransport
Instance Variables:
handlers = nil
state = #running
manager = Adaptor<a VisualWave.WaveConnectionAdaptor
serverProcess = a Process in Process>>resume
sendLock = a Semaphore[0]
marshaler = a VisualWave.WaveMarshaler
unmarshaler = a VisualWave.WaveMarshaler
readBuffer = a TransportMessageHeader[1024]
writeBuffer = a TransportMessageHeader[1024]
configuration = TransportConfiguration waveCGI
marshaler: (MarshalerConfiguration wave
service: a VisualWave.WebRequestService)
serverPriority: 65
requestRegistry = an OtWeakValueDictionary
nextRequestId = 0
sessionObjects = a Set[0]
id = IPSocketAddress(port#35550 at:hana)
writeStream = an ExternalReadAppendStream
readStream = an ExternalReadAppendStream
socket = an active SocketAccessor
Context PC = 9
----------------------------------------------------------------------
optimized [] in Transport>>startServerProcess
Receiver:
an UndefinedObject
Temporaries:
.self = Transport<a VisualWave.WaveTransport
Context PC = 6
----------------------------------------------------------------------
BlockClosure>>on:do:
Receiver:
a BlockClosure
Instance Variables:
method = CompiledBlock [] in Transport>>startServerProcess
outerContext = nil
copiedValues = Transport<a VisualWave.WaveTransport
Arguments:
anExceptionSelector = TerminateException
handlerBlock = BlockClosure [] in [] in Process
class>>forBlock:priority:
Context PC = 18
----------------------------------------------------------------------
optimized [] in Process class>>forBlock:priority:
Receiver:
an UndefinedObject
Temporaries:
.aBlock = BlockClosure [] in Transport>>startServerProcess
Context PC = 9
More information about the Seaside
mailing list