不使用javax。*类将DOM节点转换为String

时间:2013-12-20 13:53:58

标签: java javascript xml rhino java-5

当我尝试使用找到的解决方案在javascript中从Node转换为String时,从此行开始

var transformer = javax.xml.transform.TransformerFactory.newInstance().newTransformer();

它说

  

消息:(无法执行所需的评估:JavaScript   错误:内部错误:ReferenceError:未定义“javax”。   (JavaScript错误:内部错误:ReferenceError:“javax”不是   定义。)

但java *包中的类工作正常

这有效:

var writer = new java.io.StringWriter();

是否可以在不使用javax * package的类的情况下将Node转换为String

使用org.w3c。*即可

1 个答案:

答案 0 :(得分:1)

Sonic ESB内部使用Rhino作为其JavaScript引擎。

从JavaScript调用Java时,应使用Packages引用Java类:Packages.javax.xml.transform.TransformerFactory 你可以毫无困难地使用java包的原因是Packages.java在全局变量java中有别名。

执行此操作时,您可以正常使用javax包中的类。实际上,您可以将任何您喜欢的jar添加到类路径中并使用这些类。

https://developer.mozilla.org/en-US/docs/Rhino/Scripting_Java