3 回答
TA贡献2080条经验 获得超4个赞
Blaise Doughan是正确的,附加的代码是正确的。
问题出在某个地方。我正在Eclipse IDE中通过应用程序启动器运行所有测试,但没有任何效果。然后我发现Eclipse项目引起了所有人的痛苦。我从命令提示符下运行我的课程,它起作用了。创建了一个新的eclipse项目并将相同的代码粘贴到那里,它也在那里工作。谢谢大家的时间和精力。
TA贡献1803条经验 获得超3个赞
我已经编写了一个简单的NamespaceContext实现(在此处),可能会有所帮助。它以a Map<String, String>作为输入,其中keya是前缀,并且value是名称空间。
它遵循NamespaceContext spesification,您可以在单元测试中看到它的工作方式。
Map<String, String> mappings = new HashMap<>();
mappings.put("foo", "http://foo");
mappings.put("foo2", "http://foo");
mappings.put("bar", "http://bar");
context = new SimpleNamespaceContext(mappings);
context.getNamespaceURI("foo"); // "http://foo"
context.getPrefix("http://foo"); // "foo" or "foo2"
context.getPrefixes("http://foo"); // ["foo", "foo2"]
请注意,它依赖于Google Guava
添加回答
举报