我目前正在使用Spring Integration流程处理Spring Boot项目。 我有以下Spring Integration xml:
<!-- CHANNELS -->
<int:channel id="channelInput"/>
<int:channel id="channelOutput"/>
<int-http:inbound-gateway id="http-inbound-gateway"
request-channel="channelInput"
reply-channel="channelOutput"
supported-methods="GET"
path="/urlTest"
>
<int-http:request-mapping consumes="application/json"
produces="application/json"/>
</int-http:inbound-gateway>
<int:service-activator input-channel="channelInput"
ref="serviceClassImpl"
method="testMethod"
output-channel="channelOutput">
</int:service-activator>
当我尝试对localhost:8080 / urlTest进行卷曲时,它给了我一个404.
后来我注意到我们有一个Jersey资源配置类,其中我们必须注册用@Path注释定义的所有路径,所以我认为404错误是因为我没有在Jersey注册该路径。但我不确定,因为我之前从未与泽西岛合作过。
@Component
public class ApplicationJerseyConfig extends ResourceConfig {
public ApplicationJerseyConfig() {
property(ServletProperties.FILTER_STATIC_CONTENT_REGEX,"/(info|browser/.*|api/(swagger.json|info)?|.*/api-docs.?|console/.*|configuration/.*|.*.html|.*.jpg|.*.gif|.*.png|.*.map|.*.js|.*.css|.*.ttf)?");
register(TestRest.class);
}
}
如何在Jersey资源配置中注册网关中定义的路径&#34; / urlTest&#34;?
提前谢谢。
答案 0 :(得分:0)
最后工作了,我只需要将路径添加到ResourceConfig的ServletProperties.FILTER_STATIC_CONTENT_REGEX中。