繁体   English   中英

带有http资源的Apache Camel XSLT端点选项

[英]Apache Camel XSLT endpoint options with http resource

骆驼的XSLT组件具有许多可配置的选项。 根据文档,这些选项以以下形式添加到URI:

?option=value&option=value&...

但是,如果资源通过HTTP传输,则所有选项都将用作HTTP请求的查询字符串,然后将其删除。 从XsltComponent.java:

// if its a http uri, then append additional parameters as they are part of the uri
if (ResourceHelper.isHttpUri(resourceUri)) {
    resourceUri = ResourceHelper.appendParameters(resourceUri, parameters);
}

和ResourceHelper.appendParameters():

if (!parameters.isEmpty()) {
    String query = URISupport.createQueryString(parameters);
    URI u = new URI(uri);
    u = URISupport.createURIWithQuery(u, query);
    parameters.clear();
    return u.toString();
}

XsltComponent中的注释使我认为这可以按设计运行,但似乎应该是很常见的情况。 有没有人找到解决方法? 我不想在本地复制资源,因为它们可能会更改。

作为参考,我在Spring Boot应用程序中使用Java DSL。

不是所有的选项,也不是xslt组件上不是选项的所有其他选项,例如,如果您有....?foo=bar则因为foo不是xslt组件上的选项,所以它在http url中使用,因为您可能需要在此处提供一些选项才能访问资源。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM