2015-10-30 90 views
0

我有一个本地环境,由Mule体系结构组成,用于将xml有效载荷发送到SAP。拒绝Mule连接:调用Web服务时连接

本地环境是使用Maven和Eclipse创建的(选项2 here)。

我们代理的最近变化,现在试图将有效载荷发送到SAP时,我得到: org.apache.cxf.interceptor.Fault: Connection refused: connect

由于当地的环境有内部Ecliple的骡子独立的服务器,我不知道在哪里的代理设置必须。

回答

0

你能更具体吗?你如何使用SAP服务?

  • 骡子组件内部的Java客户端(cxf)?
  • Mu cone cone?
  • Sap java conector? jco
  • 使用java或mule conectors自定义实现?

骡子这使我们在其连接到桥配置的能力:

https://docs.mulesoft.com/mule-user-guide/v/3.6/http-proxy-pattern

但是,你也可以用纯Java的配置。在Java中使用的代理很简单:

Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("10.20.30.40", 8180)); 
conn = new URL(urlString).openConnection(proxy); 

如果需要认证,使用系统代理,环境性能或更复杂的东西检查:

How do I make HttpURLConnection use a proxy?

告诉我们您正在使用什么帮帮我 。

+0

我不确定它消耗SAP的方式。我之前没有见过骡子,而且我正面对一个非常混乱的开发,大约有2GB的代码文件夹,根本没有任何文档(没有功能,没有在代码中)。 寻找几个maven项目的pom.xml,我可以看到'org.apache.cxf',但也有项目引用jco。 我知道如何在Java中设置代理,但我无法弄清楚在这种情况下。 – gugol

+0

我明白了。这是有压力的T_T。 您的机器是否配有代理?如果是的话,你可以试试这个: -Djava.net.useSystemProxies = true 这将使用系统设置,所以你不需要重复自己。检查此: http://stackoverflow.com/a/18164472/3957754 告诉我们,如果它的工作,否则我们会继续帮助你。 – JRichardsz

+0

我终于找到了问题,代理将我们的本地环境列入白名单,所以真正的问题是在所有xml属性文件中找到正确的属性。遵循正确文件的路径非常棘手,并且很多代码不再有效。目前这是一个试验和错误例程。对WS的调用由JaxWsProxyFactoryBean完成。 – gugol