https サービスにリクエストを送信するミュール フローを作成する方法の小さな例を教えてもらえますか? 実行しようとしましたが、次のエラーが表示されます。
INFO 2012-09-21 21:40:40,980 [[myapp_kareo].connector.http.mule.default.receiver.02] org.mule.transport.http.transformers.ObjectToHttpClientMethodRequest: Content-Type not set on outgoing request, defaulting to: text/plain
WARN 2012-09-21 21:40:41,081 [[myapp_kareo].connector.http.mule.default.receiver.02] org.mule.transformer.simple.ObjectToString: Could not close stream
java.io.IOException: Stream closed
at java.io.BufferedInputStream.getBufIfOpen(BufferedInputStream.java:145)
at java.io.BufferedInputStream.read(BufferedInputStream.java:308) at org.apache.commons.httpclient.ContentLengthInputStream.read(ContentLengthInputStream.java:170)
等...
少なくとも 2 つの奇妙な点が見られます。
org.mule.transport.http.transformers.ObjectToHttpClientMethodRequest
: 発信要求に Content-Type が設定されていません。デフォルトは text/plain - どこから取得したかわかりません。コンテンツ タイプはすべてのエンドポイントで text/xml に設定されています。org.mule.transformer.simple.ObjectToString
: ストリームを閉じることができませんでした - これがどこから来たのか説明できません...
私のxml構成:
<?xml version="1.0" encoding="UTF-8"?>
<https:connector name="HTTP_HTTPS" cookieSpec="netscape" validateConnections="true" sendBufferSize="0" receiveBufferSize="0" receiveBacklog="0" clientSoTimeout="10000" serverSoTimeout="10000" socketSoLinger="0" proxyHostname="localhost" proxyPort="80" doc:name="HTTP\HTTPS">
<https:tls-key-store path="/src/main/app/keystore/javakeystore.jks" storePassword="somepassword"/>
</https:connector>
<flow name="KareoFlow1" doc:name="KareoFlow1">
<http:inbound-endpoint exchange-pattern="request-response" host="localhost" port="8081" path="kareo" contentType="text/xml" doc:name="SomeApp"/>
<https:outbound-endpoint exchange-pattern="request-response" host="webservice.kareo.com/" port="443" path="services/soap/2.1/KareoServices.svc" connector-ref="HTTP_HTTPS" contentType="text/xml" doc:name="Kareo"/>
<echo-component doc:name="Echo"/>
</flow>
どうもありがとうございました!