我对加载片段有一些具体的问题。
我们在表单框架中动态加载片段,它仅从表单 bean 定义生成带有 Java 反射的表单。事情是处理加载的片段(不知道为什么),在处理关闭表单标签之后(</form>
)。因为我们只在所选表单的开始标签到结束标签中携带表单上下文(因为同一页面上可能有更多表单),所以会发生异常,而 thymeleaf 会推迟加载片段的处理。
加载片段的代码:
public static List<Node> loadFragment(Arguments arguments, String fragmentName, String fragmentPath) {
IFragmentSpec fragmentSpec = new ElementAndAttributeNameFragmentSpec(null, "th:fragment", fragmentName, true);
FragmentAndTarget fat = new FragmentAndTarget(fragmentPath, fragmentSpec);
return fat.extractFragment(arguments.getConfiguration(), arguments, arguments.getTemplateRepository());
}
此代码在 中调用InitializerElProcessor
,其中整个表单构建为 html。片段已按应有的方式加载,但未由 thymeleaf 处理。如何加载已由百里香处理的片段?或者我们应该如何强制 thymeleaf 立即处理这个节点(加载的结果)?
感谢您的任何想法。