gpt4 book ai didi

java - Apache Camel + Spring-WS + 授权

转载 作者:行者123 更新时间:2023-12-01 11:03:28 25 4
gpt4 key购买 nike

我有一个使用 apache Camel 的项目,我必须使用 WS ..

.setHeader(HttpHeaders.AUTHORIZATION, constant("Basic {base64"))
.to("spring-ws:http://myhost.com.br?soapAction=myAction")

我收到以下错误:org.springframework.ws.client.WebServiceTransportException:未经授权[401]

如果我仅使用soap-ui 和 header 发送,则效果很好。

有什么想法吗?非常感谢。

最佳答案

来自http://people.apache.org/~dkulp/camel/spring-web-services.html

可以像这样引用注册表中的自定义消息发送者或工厂:

from("direct:example")
.to("spring-ws:http://foo.com/bar?messageFactory=#messageFactory&messageSender=#messageSender")

Spring 配置:

<!-- authenticate using HTTP Basic Authentication -->
<bean id="messageSender" class="org.springframework.ws.transport.http.CommonsHttpMessageSender">
<property name="credentials">
<bean class="org.apache.commons.httpclient.UsernamePasswordCredentials">
<constructor-arg index="0" value="admin"/>
<constructor-arg index="1" value="secret"/>
</bean>
</property>
</bean>

<!-- force use of Sun SAAJ implementation, http://static.springsource.org/spring-ws/sites/1.5/faq.html#saaj-jboss -->
<bean id="messageFactory" class="org.springframework.ws.soap.saaj.SaajSoapMessageFactory">
<property name="messageFactory">
<bean class="com.sun.xml.messaging.saaj.soap.ver1_1.SOAPMessageFactory1_1Impl"></bean>
</property>
</bean>

关于java - Apache Camel + Spring-WS + 授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33158266/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com