我正在尝试使用Spring Integration int-http:inbound-gateway测试Inbound http gatway:
<int-http:inbound-gateway id="correlateOutgoingMessage"
supported-methods="POST" request-channel="toOutCorrelator"
reply-channel="fromOutCorrelator" view-name="/correlateOutgoingMessage"
path="/correlateOut/{origin}/{msgtype}/{priority}"
reply-timeout="50000">
<int-http:header name="origin" expression="#pathVariables.origin" />
<int-http:header name="msgtype" expression="#pathVariables.msgtype" />
<int-http:header name="priority" expression="#pathVariables.priority" />
</int-http:inbound-gateway>
我的Web.xml:
<servlet>
<servlet-name>correlateOut</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>WEB-INF/intg-schema.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>correlateOut</servlet-name>
<!-- controler/* -->
<url-pattern>/correlateOut/*</url-pattern>
</servlet-mapping>
使用RestTemplate,我试图向网关发出POST请求:
那个
uri = "http://localhost:8080/test/correlateOutgoingMessage/{origin}/{msgtype}/{priority}"
String origin = "xxxx";
Integer msgtype = 2333;
Integer priority = 2;
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.TEXT_PLAIN);
HttpEntity<?> request = null;
ResponseEntity<String> httpResponse = null;
request = new HttpEntity<Object>(messageContent);
httpResponse = template.exchange(uri, HttpMethod.POST, request,
String.class, getUrlParams(origin, msgtype, priority));
我总是得到没有找到404,你能给我一些提示吗?
非常感谢!
首先,您应该显示用于发送HTTP请求的uri
。
从另一端,如果您将servlet映射到/correlateOut/*
,则不得在目标映射
中使用它,因为所有其他endpoint都在该上下文下。
因此,您的< code>path应该是< code > path = " { origin }/{ msgtype }/{ priority } "
我尝试使用以下代码,得到了回应:状态:405方法不允许。这是我的Http请求:http://localhost:8090/services/test?name=test.代码或http请求有什么问题?
我不熟悉Spring集成。我正在尝试使用http入站网关构建一个简单的应用程序。下面是我得到的运行时异常。 下面是代码文件。 波约 服务 } 服务激活器 } 存储库 请帮助我,我正在试图找到异常发生的原因,但无法解决。提前谢谢。 集成文件。
我正在将SpringBoot 2.0与Spring Integr5.0.3一起使用,并且我的HTTP. in边界网关有问题。我的目标是验证发布到网关的JSON,因为请求pojo由强制字段组成。 有没有一种简单的方法来验证pojo中的字段是否已设置?我已经测试过的是使用@NotNull-SpringValidation,但它似乎不受Spring集成的支持。 你好smoothny
下面是配置了标头的出站http网关,但在添加轮询器时不会连续触发。它只会被触发一次,然后停止。
所以我试图用th: href重定向整个网址,但它添加了我不想要的字符。 我现在的网址是这个 我试图回到帖子的一部分,那就是 所以现在这就是我的html的样子 这是我得到的网址 Id是正确的,但我不确定为什么
我正在尝试将spring集成配置为向队列发送消息,然后接收消息,即非常简单的事情: 我认为解耦所必需的是在流程的两端都有一个消息网关。因此,我的第一次尝试(有效)如下所示: 其中MessageReceiverHandler()是扩展AbstractMessageHandler的bean。 所以上面我们有一个用于出站消息的消息网关。我假设我们也应该有一个用于入站消息的网关,允许我们将传入消息处理与应