[Seaside] VW cgi interface
David Pennell
dpennell at quallaby.com
Sat Mar 20 22:44:12 CET 2004
Brett Taylor wrote:
>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.
>
>
Brett - did you ever get an answer to this? I'm currently the VW port
maintainer, but I haven't been following this list as closely as I
should. I haven't tried the combination you describe.
>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
>
>
>_______________________________________________
>Seaside mailing list
>Seaside at lists.squeakfoundation.org
>http://lists.squeakfoundation.org/listinfo/seaside
>
>
More information about the Seaside
mailing list