将 CSS 文件上传到 Seaside FileLibrary 时出现问题

Problem Uploading CSS File to Seaside FileLibrary

我是 Seaside 的初学者,目前正在使用 Seaside 进行动态 Web 开发 book/tutorial。 我目前在第 17.4 章,我需要将一个 .png 和一个 .css 文件上传到我创建的 FileLibrary。

我尝试通过 Seaside 配置页面上传它们。 .png 已上传并且工作正常。然而,当我尝试 .css 文件时,Seaside 给了我这个:错误:不正确的存储到可索引对象中。

我尝试按照他们演示的方式以编程方式上传文件,一开始似乎可以正常工作,但我注意到它没有显示,源代码也没有在浏览器的标签中显示对它的任何引用。 当我在 Pharo 中调查该文件时,在该方法中,它返回为 nil。

如果有人能提供并解释为什么这不起作用,我将不胜感激。我不知道它是否有帮助,但这是错误的堆栈跟踪:

Stack Trace
thisContext
ByteString(Object)>>error:
self
'...etc...
thisContext
ByteString(Object)>>errorImproperStore
self
'...etc...
thisContext
ByteString>>at:put:
self
'...etc...
thisContext
WriteStream>>nextPut:
self
a WriteStream
thisContext
[ :writeStream | | readStream | readStream := aString readStream. [ readStream atEnd ] whileFalse:...etc...
self
a GRPharoPlatform

您可能遇到了与 this github issue, but similar stack traces have popped up with earlier versions of Seaside in Pharo 7. So, first make sure you are using the latest stable version of Seaside (see load instructions for Seaside in Pharo 中所述相同的问题。不幸的是,如果您从 Pharo 目录加载,您使用的不是最新的稳定版本。

如果您仍然遇到相同的问题:.css 文件应该被检测为文本文件并且问题不一样。请将问题提交给 issue tracker 以便我们重现该问题。

同时,我怀疑问题出在 web 工具中,您可以通过以编程方式上传文件来避免该问题:

YourLibraryClass addFileAt: 'yourfile.css'