将Restful Web Service与Spring和gdata api集成时出错

问题描述 投票:0回答:2

简短版本:当我包含依赖项时,一个宁静的Spring Web服务崩溃:com.google.gdata:核心:1.47.1

长版:

我正在尝试制作一个Restfull Web服务,该服务使用Google驱动器中电子表格中的某些信息

这是我的步骤顺序:

准备进行连接的类以及从驱动器获取的数据(不是Web,仅包括后端类,单元测试和集成测试):一切正常

使用spring准备一个restfull Web服务,基本上下载一个spring教程( http://spring.io/guides/tutorials/rest/3/ )并执行:一切正常

然后删除教程的业务类,包括我的组件,更改控制器以调用我的组件,以及在文件graddle.build中添加gdata依赖项,尝试执行:休斯顿,我们遇到了问题

奇怪的是,当启动应用程序上下文时,日志打印如下:

C:\Users\Grubhart\Documents\proyectos\error_Rest_Gdata\complete\src\main\java\com\yummynoodlebar\config\WebAppInitializer.java:39: error: can not find symbol 
     servletContext.setInitParameter ("defaultHtmlEscape", "true"); 
                   ^ 
     symbol: method setInitParameter (String, String) 
     location: Variable of type ServletContext ServletContext 

但是当其余的应用程序刚刚下载(退出我的代码,没有gdata依赖关系)时,它起作用了,我唯一要做的就是添加我的代码和google api依赖关系,所以我开始看看是什么导致了错误

删除我所有的代码(但离开gdata jar)并...等待它..相同的错误,

删除gdata依赖项:有效

然后再次添加gdata依赖项并测试:再次出现相同的错误

因此,我认为通过包含gdata jar可以防止启动整个应用程序上下文

我在github上创建了一个仓库来说明该错误:

https://github.com/Grubhart/error_spring_restWS_gdata

master分支具有无需gdata依赖即可工作的服务代码

您可以想象gdata_error分支在gradle.build文件中添加了gdata依赖项(仅依赖项,没有多余的代码):

编译'com.google.gdata:核心:1.47.1'

并提出错误

无需安装任何东西(甚至gradle),只有jdk,下载代码并按照自述文件中的说明运行,以查看错误

我做我的作业,在google中查看,stackoverflow(很棒的网站!),春季论坛,但什么也没找到

如果有人有这个问题的经验,或者知道我在哪里可以找到更多的信息,如果您可以分享经验,或者您知道在哪里寻找有关此错误的更多信息,那将是很好的

java spring rest gradle gdata
2个回答
1
投票

原始帖子不包含:

yummynoodlebar\config\WebAppInitializer.java:39: error: cannot find symbol
    servletContext.setInitParameter("defaultHtmlEscape", "true");

ServletContext需要导入javax.servlet.*; 也许是因为这个错误。


1
投票

由于Web应用程序的Java类中的spring上下文配置可与Servlet 3.0配合使用,因此您可能会覆盖gdata附带的某些依赖关系之间的麻烦,这些依赖关系可能确实使用了依赖关系,而不是您用于部署应用程序的servlet版本或最初使用的servlet版本配置,希望对您有帮助!。

© www.soinside.com 2019 - 2024. All rights reserved.