我使用Eclipse创建了一个GWT项目,该项目运行良好(我可以在托管模式和Google App Engine上运行),直到我尝试导入Gears API for Google Web Toolkit。将以下行添加到我的java源文件后:
import com.google.gwt.gears.client.geolocation.Geolocation;
当我尝试编译时出现以下错误:
19-Jun-2009 3:36:09 AM com.google.apphosting.utils.jetty.JettyLogger warn
WARNING: failed com.google.apphosting.utils.jetty.DevAppEngineWebAppContext@1c7d682{/,C:\Documents and Settings\Geoff Denning\workspace\TaskPath\war}
javax.xml.parsers.FactoryConfigurationError: Provider org.apache.xerces.jaxp.SAXParserFactoryImpl not found
我已经将gwt-gears.jar文件添加到我的\ war \ WEB-INF \ lib目录中,我在Eclipse中引用它如下:
我甚至打开了gwt-gears.jar文件并确认org / apache / xerces / jaxp / SAXParserFactoryImpl.class确实存在。任何人都可以给我任何指示,为什么我收到上述错误?
答案 0 :(得分:5)
检查Xerces是否存在于:
$JAVA_HOME/lib/endorsed
听起来像Java 5问题。另请检查Java系统属性:
javax.xml.parsers.SAXParserFactory
应该是:
org.apache.xerces.jaxp.SAXParserFactoryImpl
如果没有那么那就是你的问题,请确保设置系统属性。
答案 1 :(得分:2)
答案 2 :(得分:1)
这发生在我身上。我的工作区中存在冲突的JAR。我删除了一个并繁荣工作。该消息并没有很好地解决错误的根源。
答案 3 :(得分:1)
我的 SAXParserFactoryImpl问题是由我的启动类路径中的gwt-gadgets.jar引起的。从引导类路径中删除此JAR为我解决了问题。基本上,您必须从构建路径(用户库)中删除任何包含SAXParserFactoryImpl类的JAR 。
答案 4 :(得分:0)
删除$ JAVA_HOME / jre / lib / jaxp.properties解决了这个问题。
答案 5 :(得分:0)
看看Trouble with Selenium (XercesImpl) and Google App Engine。 我在GWT / GAE(找不到SAXParserFactoyImpl)方面遇到了类似的问题并解决了它;