Cloud 我们如何部署Pharo seaside web应用程序?
我知道在EnterprisePharo一书中有一个很好的解释,可以在Linux服务器上进行部署生产。我遵循了教程,并且能够部署相同的项目。然而,该项目只包含一个简单的类“MyFirstWebApp”,不包括Seaside框架。运行脚本如下所示: ZnServer-defaultOn:8080。 ZnServer默认日志到标准输出。 ZnServer默认委托 地图:“图像” 致:MyFirstWebApp new; 映射:“重定向到图像” 至:[:请求| ZnResponse重定向:“图像”]; 地图:'/' 至:“重定向到图像”。 ZnServer默认启动Cloud 我们如何部署Pharo seaside web应用程序?,cloud,smalltalk,pharo,seaside,pharo-5,Cloud,Smalltalk,Pharo,Seaside,Pharo 5,我知道在EnterprisePharo一书中有一个很好的解释,可以在Linux服务器上进行部署生产。我遵循了教程,并且能够部署相同的项目。然而,该项目只包含一个简单的类“MyFirstWebApp”,不包括Seaside框架。运行脚本如下所示: ZnServer-defaultOn:8080。 ZnServer默认日志到标准输出。 ZnServer默认委托 地图:“图像” 致:MyFirstWebApp new; 映射:“重定向到图像” 至:[:请求| ZnResponse重定向:“图像”];
如果您有一个使用Seaside框架的多个类的项目呢?我对我自己的Seaside项目重复了相同的过程,但是当我使用以下命令启动run.st脚本时,我收到一条消息error
WARequestContextNotFound
。有什么想法吗?您正在混合使用纯锌服务器代理和处理Seaside应用程序。锌为Seaside提供了一个“服务器适配器”,可以使用znzincServerAdapter startOn:8080
(或您选择的任何端口)进行设置
如果要运行Seaside web应用程序,必须部署一个安装了Seaside框架的映像,以及您自己的类(MyFirstWebApp
和朋友)
因此,您的run.st
看起来更像:
ZnZincServerAdaptor startOn: 8080.
ZnZincServerAdaptor default server debugMode: true.
ZnServer default logToStandardOutput.
"Here you register the Seaside application _class_"
(WAAdmin register: MyFirstWebApp asApplicationAt: 'image')
preferenceAt: #serverPath put: '/'.
WAAdmin defaultDispatcher defaultName: 'image'.