4

我在 GWT 编译期间遇到了这个编译错误。我正在使用它来解析 XML 文档。

[ERROR] Line 24: No source code is available for type org.w3c.dom.Node; did you forget to     inherit a required module?
[ERROR] Line 28: No source code is available for type org.w3c.dom.NodeList; did you forget to inherit a required module?
[ERROR] Aborting compile due to errors in some input files

从我对此所做的任何研究来看,它都说类路径可能丢失了,但是因为这将默认包含在 gwt-user.jar 和 JRE7 中,而且我也没有包含任何外部 jar,所以没有重复的情况!而且您不能在客户端代码中包含这些类型的代码,因为它将被转换为 javascript

我有一个在我的共享文件夹(GWT Model View Presenter Project structure)中使用这个节点的类,它基本上是一个模型!

  1. 将代码移动到服务器端是唯一可能的解决方案吗?
  2. 如果 1 为真,我将如何重构访问此模型的客户端演示者,而无需每次都进行 RPC 调用的开销?

  3. 有没有其他方法可以解决这个问题?


我的 GWT 配置文件。

 <module rename-to='xxxxx'>
 <inherits name='com.google.gwt.user.User'/>


 <inherits name='com.google.gwt.user.theme.standard.Standard'/> 
 <inherits name="com.google.gwt.xml.XML" />

  <entry-point class='com.xxxx.xxxxx.gwt.client.ProjectEntry'/>


  <source path='client'/>
  <source path='shared'/>

 </module>

编辑:我现在已经包含了 xml 继承!它的工作

4

1 回答 1

5

在您的代码库中的某个地方,您正在使用 org.w3c.dom.Node 和 org.w3c.dom.NodeList 这些不是白名单。换句话说,你不能使用这些类!看;

https://developers.google.com/web-toolkit/doc/latest/RefJreEmulation

您应该将这些包用于 xml;

import com.google.gwt.xml.client.Document;
import com.google.gwt.xml.client.Element;
import com.google.gwt.xml.client.Node;
import com.google.gwt.xml.client.NodeList;
import com.google.gwt.xml.client.XMLParser;
于 2012-07-12T11:04:53.197 回答