Mule HTTPS文件上传

时间:2014-12-15 15:06:28

标签: post https mule

我正在尝试使用文件连接器作为入站端点在Mule中创建RESTful服务,当存在文件时,应该将其推送到HTTPS端点。使用下面的问题作为起点我试图遵循这个方法。没有返回异常,文件也没有传输。

How to upload multiple files via REST over HTTP using Mule?

在这个问题中有关于未设置的内容类型的评论,我有同样的问题,但为了我的测试目的,我试图推送文本文件。



    <file:connector name="File" autoDelete="false" streaming="true" validateConnections="true" doc:name="File"/>
    <https:connector name="HTTP_HTTPS" cookieSpec="netscape" validateConnections="true" sendBufferSize="0" receiveBufferSize="0" receiveBacklog="0" clientSoTimeout="10000" serverSoTimeout="10000" socketSoLinger="0" doc:name="HTTP-HTTPS">
        <https:tls-key-store path="keystore.jks" keyPassword="PASS" storePassword="PASS"/>
        <https:tls-server path="nr_up_truststore.ts" storePassword="PASS"/>
    </https:connector>
    <flow name="Flow1" doc:name="Flow1">
        <file:inbound-endpoint path="Path" responseTimeout="10000" doc:name="File" connector-ref="File" disableTransportTransformer="true">
            <file:filename-regex-filter pattern="file(.*).txt" caseSensitive="false"/>
        </file:inbound-endpoint>
        <object-to-byte-array-transformer encoding="ISO-8859-5" doc:name="Object to Byte Array"/>
        <https:outbound-endpoint exchange-pattern="request-response" host="host" port="443"  method="POST"   doc:name="HTTP" connector-ref="HTTP_HTTPS" path="PATH" mimeType="text/plain" password="PASS" user="USER"/>
    </flow>
&#13;
&#13;
&#13;

使用以下异常堆栈

异常堆栈是: 1.找不到可信证书(sun.security.validator.ValidatorException)   sun.security.validator.SimpleValidator:-1(null) 2. sun.security.validator.ValidatorException:找不到可信证书(javax.net.ssl.SSLHandshakeException)   sun.security.ssl.Alerts:-1(http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/net/ssl/SSLHandshakeException.html) 3.无法通过端点路由事件:DefaultOutboundEndpoint {endpointUri = https://:@URL,connector-HttpsConnector

1 个答案:

答案 0 :(得分:0)

您没有在当地钥匙串中设置证书。

命令行工具非常困难,TLS / SSL是一个复杂的问题。我建议你使用像key store explorer这样的图形工具来下载网站的证书,并用它创建一个java密钥库。