当前位置: 首页 > 知识库问答 >
问题:

带通量的Thymeleaf StringTemplateResolver不工作

有骏祥
2023-03-14

我的配置在这里

@Configuration
class TemplateConfiguration {

    @Bean
    fun templateResolver(): StringTemplateResolver? {
        val templateResolver = StringTemplateResolver()
        templateResolver.templateMode = TemplateMode.TEXT

        return templateResolver
    }

    @Bean
    @Primary
    fun templateEngine(): SpringWebFluxTemplateEngine {
        var engine = SpringWebFluxTemplateEngine()
        engine.setTemplateResolver(templateResolver())
        return engine
    }
}

var books = Flux.fromArray(arrayOf(Book( ....), Book(....))
var context = Context()

var streamData = ReactiveDataDriverContextVariable(books, 10)
context.setVariable("books", streamData)

// then something like below
engine.process(template, context)

错误消息是:org.thymeleaf.templateparser.text.TextParseException:评估SpringEL表达式的异常:"book.price"(模板:"[#th: each="book:${book}"] - [(${ book.price})][/]"......原因:org.springframework.expression.spel.SpelEvalue Exception:EL1008E:无法在类型为'org.thymeleaf.spring5.context.webflux.ReactiveDataDriverContextVariable'的对象上找到属性或字段'价格'-可能不公开或无效?......

我认为这是一个问题,通量流没有正确交付。我如何解决这个问题?

请帮助我,我为我的英语水平低下提前道歉。

共有1个答案

通博实
2023-03-14

我不确定这是不是一个解决方案(可能是一个变通方法??)

我使用CollectList(). map而不是ReactiveDataDriverContextVariable然后它工作了

var books = Flux.fromArray(arrayOf(Book( ....), Book(....))
var context = Context()

books.collectList()
     .map { list ->

            context.setVariable("books", list)
            engine.process(template, context)
      }

这是一种独白;;;

 类似资料:
  • 我正在用FCM和SNS测试推送通知。(社交网络- 然后,我测试了连接到firebase的iOS版本,并添加了证书等。并且可以在firebase测试页面中触发向iOS设备推送通知,而不会出现任何问题。 问题是,我无法使用iOS版本触发AWS SNS到FCM的通知(android版本没有问题)。我希望它能像android一样工作。当触发来自SNS的通知时,是否有任何自定义参数需要添加到有效负载中才能使

  • 我想在我的sql-server数据库中插入。txt文件数据。我在.txt文件中使用和不使用PK-Variable时都出现了错误。我的疑问: 使用 从“C:\user\test.txt”大容量插入db.schema.table(FIELDTERMINATOR=';')去吧 null null

  • 我试图使用SpringMVC制作一个简单的JavaWeb应用程序。我试图在我的资源文件夹中添加CSS和JS文件,该文件夹分别位于。因此,我需要在我的l并在该文件中包含spring webmvc。我的如下所示: 下面给出了我的POM. xml: 一旦我使用Maven构建项目,并尝试使用Eclipse IDE上添加的Tomcat在服务器上运行它,我就会得到以下错误: 配置问题:找不到元素[resour

  • 我对spring boot和创建我的第一个应用程序非常陌生。创建数据源时,我使用了带有前缀的@ConfigurationProperties和要从Application.Property中读取的属性。 但是,这个设置似乎对我不起作用,我的程序没有运行。 我的pom.xml文件包含: 我的存储库类: 我的主要类: 请让我知道如果我需要提供任何其他信息以及。

  • 我知道这是一个常见的问题,因为我在决定发帖之前一直在寻找答案,但我似乎无法找到一个解决方案。 问题:我有一个分页脚本(PHP)用于我的搜索结果。显然常见的是,第一页的结果显示良好,然后在移动到第2、3页等时失败。 当点击页面2、3等时,我在搜索中使用的每个变量都有一个“未知索引”错误。 因此,I$_从表单中获得以下变量: 谢谢

  • 我在like中使用方括号来表示一系列通配符。奇怪的是,在语句中直接使用表达式可以正确工作,从而获取预期的行。但是从变量中使用相同的表达式不会产生任何结果。为什么它不能从变量开始工作? 作品: 不起作用: 我还尝试与连接,但仍然得到零结果(如“%”@var“%”) 当我在变量中只使用一个范围时,同样的表达式也起作用,但是我真的需要使用两个范围