问题标签 [spring-web]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3083 浏览

java - 如何在 WebApplicationInitializer 中为 Servlet 过滤器指定 url 模式?

我正在web.xml使用 Spring-web 将文件转换为基于 Java 的配置WebApplicationInitializer。以下是定义的示例过滤器

现在 WebApplicationInitializer 类看起来像这样

但正如您所看到的,过滤器适用于所有资源,而我只想将过滤器映射为/sampleUrl. 我们如何做到这一点?

0 投票
1 回答
1204 浏览

spring-web - 使用 MultiValuedMap 作为 ResponseBody 给出 {"empty" : false} 作为响应

我正在尝试使用 MultiValuedMap 作为休息服务的 ResponseBody,但我在浏览器中得到的响应是:

{“空”:假}

使用 MultiValueMap 作为 ResponseBody 可以正常工作,但是在升级 org.apache.commons 库后,不推荐使用 MultiValueMap 并使用 MultiValuedMap 的说明来代替。

这是我的代码的相关部分:

我也试过:

任何帮助,将不胜感激。

0 投票
1 回答
1986 浏览

java - Maven + Spring Web 项目未命中控制器

[在此处输入图像描述][1][在此处输入图像描述][1]我正在尝试创建 Maven + Spring Web 演示项目。为此,我创建了一个 index.jsp,我试图用值作为我的名字来点击控制器。但是在运行应用程序之后,即使我得到了索引页面,如果我点击超链接来点击我的控制器,我会立即得到请求的资源不可用。我是 Maven 和 Spring 的新手。请帮助解决这个问题。

我的 POM.xml 是,

我的 applicationContext 是,

我的 index.jsp 是,

我的 helloworld.jsp 是,

我的调度程序 servlet 是,

我的控制器类是,

我无法理解不击中控制器的具体原因。请帮助解决这个问题。我正在使用 JDK 1.7、Spring 3.2.8.Release 和动态 Web 模块 2.5

我的 web.xml 是,

我的项目文件夹结构是,[TestMaven 项目文件夹结构][1]:http: //i.stack.imgur.com/QV0pC.jpg

0 投票
2 回答
4623 浏览

java - Spring Web MVC:HTTP DELETE 不再有请求正文

我对 Spring Web MVC 的开发人员有一个问题。

简而言之:以前可以在 HTTP DELETE 消息中发送请求正文,但现在不可能了。为什么?

详细地:

我们正在使用spring-webmvc-4.2.4.RELEASE.

我们发送

并获得异常

似乎请求正文已被删除。

如果我们到处使用 HTTP POST 而不是 HTTP DELETE,它就可以正常工作。

以前它工作得很好(很抱歉我之前无法指定,因为我们的依赖关系非常复杂。如果它对你有帮助,我可以发布一个旧的build.gradle)。

为什么现在不可能了?

0 投票
1 回答
3020 浏览

java - Spring Rest Controller:如何选择性地关闭验证

在我的控制器中,我有一种创建实体的方法

我想添加一个控制器方法

但在这种方法中,它应该允许为field1空或空,即行

RequestDTO应该被忽略。

我怎样才能做到这一点?我是否必须编写一个看起来完全一样RequestDTO但没有注释的类?还是通过继承以某种方式可能?

0 投票
10 回答
92628 浏览

java - 在集成测试中覆盖 bean

对于我的 Spring-Boot 应用程序,我通过 @Configuration 文件提供了一个 RestTemplate,以便我可以添加合理的默认值(例如超时)。对于我的集成测试,我想模拟 RestTemplate,因为我不想连接到外部服务 - 我知道期望什么响应。我尝试在集成测试包中提供不同的实现,希望后者覆盖真正的实现,但检查日志却是另一种方式:真正的实现会覆盖测试。

如何确保 TestConfig 中的那个是使用的那个?

这是我的配置文件:

集成测试:

测试配置类:

最后是 MockRestTemplateConfiguration

0 投票
1 回答
472 浏览

java - Swagger 与 @RepositoryRestController 一起使用

我需要你的帮助来解决一个有趣的问题:我想使用 swagger 来编写简单的 API 文档,并且我有两个类:versionController 和 PersonController。版本控制器有 2 个注解:

虽然人员控制器顶部有一个注释:

并且在 create Person 方法上有如下注解:

我的问题是这个。为什么 versionController 在 swagger 中可见而 PersonController 不可见?我的意思是,personcontroller 有正确的映射,所以 swagger 可以“看到”它吗?源文档没有任何信息,所以我希望你们能帮助我。提前致谢!

问候,弗雷德里克

0 投票
2 回答
61 浏览

spring - Spring-web 尝试查找以通知路径变量命名的资源

使用spring-web,我正在映射一种方法来接收包含点“。”的请求。在路径上:

例如,/download/file.xls应该是一个有效的地址。但是当我尝试访问该地址时,Spring 会返回Could not find acceptable representation,就好像它正在尝试查找名为file.xls.

Spring不应该执行download方法而不是尝试查找名为路径变量的资源?

Obs.:我的应用程序是一个弹簧启动应用程序。

0 投票
1 回答
588 浏览

angularjs - Angular:无法下载服务器端生成的电子表格

我正在尝试下载服务器生成的电子表格。

我的应用程序在前端使用 Angular,在后端使用 Java。

下面是后端接收请求生成并返回文件的方法:

在前端,当用户点击下载按钮时,会执行以下函数:

返回的电子表格包含不可读的字符。

如果我直接访问http://127.0.0.1:8000/api/excel/download,则下载的电子表格没有 .xls 扩展名(根本没有扩展名)。如果我重命名文件并添加 .xls 扩展名,然后打开它,我可以看到文件内容。所以我认为问题在于 Angular 对后端的调用,而不是在 Java 上生成文件。

有没有人经历过这种情况或有一些例子可以分享?我究竟做错了什么?

0 投票
1 回答
1782 浏览

spring - 如何解决“类路径资源的循环加载”?

我有两个独立的项目。一个是maven,spring webservices(假设这是项目A),另一个是maven批处理项目(我们称之为B)。我正在尝试将 B 中的一个类(比如说“batch.java”类)注入 A 的一个类(我们称之为“api.java”)中。一个主要的问题陈述是 B 依赖于 A(在不同的A类,不在api.java上)。我相信这会导致启动时出现循环加载错误。

我将在此处粘贴我的代码,并请求提供解决方案:file:B.xml

文件:A.xml

代码编译得很好,但是当我尝试启动我的 wsdl 时,我收到以下错误:org.springframework.beans.factory.parsing.BeanDefinitionParsingException:配置问题:无法从 URL 位置导入 bean 定义 [classpath:B.xml] 违规资源:类路径资源[A.xml];嵌套异常是 org.springframework.beans.factory.parsing.BeanDefinitionParsingException:配置问题:无法从 URL 位置导入 bean 定义 [classpath:A.xml] 违规资源:类路径资源 [B.xml];嵌套异常是 org.springframework.beans.factory.BeanDefinitionStoreException:检测到类路径资源 [A.xml] 的循环加载 - 检查您的导入定义!org.springframework.beans.factory.parsing.FailFastProblemReporter.error(FailFastProblemReporter.java:68)