由于某些原因,我尝试单独重建脚手架面插件,但发现了一个非常烦人的错误,我无法解决。
java.lang.NoSuchMethodException: class org.metawidget.inspector.impl.BaseObjectInspectorConfig.setPropertyStyle(ForgePropertyStyle). Did you mean setPropertyStyle(PropertyStyle)?
at org.metawidget.config.impl.BaseConfigReader$ConfigHandler.classGetMethod(BaseConfigReader.java:1633)
尝试了一些技巧后,查看了 metawidget 配置代码,没有找到解决问题的方法。
scaffold setup --scaffoldType customfaces
工作正常,但
scaffold from-entity com.domain.entity.* --scaffoldType customfaces
失败。
有人有同样的问题吗?我可以搞砸什么吗?
更新#1:
只有在 Forge 控制台中运行时,资源加载才会失败。JUnit 测试工作正常。我假设,metawidget 插件资源加载器尝试不是从新插件而是从原始脚手架 api 的上下文加载 metawidget-*.xml。
更新#2:
问题在于元小部件和伪造关系的深处。我发现如果我直接使用SimpleResourceResolver.openResource()
,结果是有效的。但如果我添加StaticHtmlWidget.setConfig()
,结果是Unable to locate com/domain/customfaces/metawidget-entity.xml on CLASSPATH
第一次write()
调用。我不知道如何解决这种行为。