GWT错误!没有源代码可用于org.w3c.dom.Node类型

Nap*_*ter 4 java xml gwt rpc

我在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
Run Code Online (Sandbox Code Playgroud)

根据我对此所做的任何研究,它表示类路径可能会丢失,但由于这将默认包含在gwt-user.jar和JRE7中,并且我还没有包含任何外部jar,所以不存在重复的情况!并且您不能在客户端代码中使用这些类型的代码,因为它将转换为javascript

我有一个类在我的共享文件夹(GWT模型视图Presenter项目结构)中使用此Node,这基本上是一个模型!

  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>
Run Code Online (Sandbox Code Playgroud)

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

Mar*_*ker 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;
Run Code Online (Sandbox Code Playgroud)

  • gwt可能是一个挑战 (3认同)
  • 通过添加gwt.xml modul <inherits name ="com.google.gwt.xml.XML"/>解决了问题 (2认同)