在Mule ESB中创建HTTPS服务

在Mule ESB中创建HTTPS服务,https,mule,Https,Mule,我正在尝试创建一个使用HTTPS入站端点的流 到目前为止,我设法做到了以下几点: ERROR 2013-04-23 12:08:55,451 [[integrador-catalogogit].connector.http.mule.default.receiver.02] org.mule.exception.DefaultSystemExceptionStrategy: Caught exception in Exception Strategy: Http Request line is

我正在尝试创建一个使用HTTPS入站端点的流

到目前为止,我设法做到了以下几点:

ERROR 2013-04-23 12:08:55,451 [[integrador-catalogogit].connector.http.mule.default.receiver.02] org.mule.exception.DefaultSystemExceptionStrategy: Caught exception in Exception Strategy: Http Request line is malformed: "�?��?Qv??e]?.�t#?G??*?p?V*????stS��H?"
org.apache.commons.httpclient.ProtocolException: Http Request line is malformed: "�?��?Qv??e]?.�t#?G??*?p?V*????stS��H?"
at org.mule.transport.http.RequestLine.parseLine(RequestLine.java:52)
at org.mule.transport.http.HttpServerConnection.readRequest(HttpServerConnection.java:190)
at org.mule.transport.http.HttpMessageReceiver$HttpWorker.run(HttpMessageReceiver.java:155)
at org.mule.work.WorkerContext.run(WorkerContext.java:311)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:680)
ERROR 2013-04-23 12:08:55,467 [[integrador-catalogogit].connector.http.mule.default.receiver.03] org.mule.exception.DefaultSystemExceptionStrategy: Caught exception in Exception Strategy: Http Request line is malformed: "�?��?Qv???P?*?~c?q?6?]??W?[??��H?"
org.apache.commons.httpclient.ProtocolException: Http Request line is malformed: "�?��?Qv???P?*?~c?q?6?]??W?[??��H?"
at org.mule.transport.http.RequestLine.parseLine(RequestLine.java:52)
at org.mule.transport.http.HttpServerConnection.readRequest(HttpServerConnection.java:190)
at org.mule.transport.http.HttpMessageReceiver$HttpWorker.run(HttpMessageReceiver.java:155)
at org.mule.work.WorkerContext.run(WorkerContext.java:311)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:680)
ERROR 2013-04-23 12:08:55,469 [[integrador-catalogogit].connector.http.mule.default.receiver.03] org.mule.exception.DefaultSystemExceptionStrategy: Caught exception in Exception Strategy: Http Request line is malformed: "��U��Q�Qv?cN????;]<???-???^S???G[?��*�?�?�?�9�8�?�5�E�D�f�3�2�?�A���/��??�"
org.apache.commons.httpclient.ProtocolException: Http Request line is malformed: "��U��Q�Qv?cN????;]<???-???^S???G[?��*�?�?�?�9�8�?�5�E�D�f�3�2�?�A���/��??�"
at org.mule.transport.http.RequestLine.parseLine(RequestLine.java:52)
at org.mule.transport.http.HttpServerConnection.readRequest(HttpServerConnection.java:190)
at org.mule.transport.http.HttpMessageReceiver$HttpWorker.run(HttpMessageReceiver.java:155)
at org.mule.work.WorkerContext.run(WorkerContext.java:311)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:680)
  • 使用以下命令按终端创建密钥库文件:

    keytool-genkey-alias mule-keyalg RSA-keystore keystore.jks

  • 将keystore.jks放在我的mule app src/main/resources目录中

  • 已创建具有以下设置的全局HTTPS连接器:

  • 在我的HTTP入站端点中,选中“启用HTTPS”复选框,并选择我的新全局HTTPS连接器作为连接器引用

我的问题出现在访问中的端点时
https://localhost:8082/getProducts

浏览器会抛出此消息

SSL connection error
Unable to make a secure connection to the server. This may be a problem with the server,     or it may be requiring a client authentication certificate that you don't have.
Error 107 (net::ERR_SSL_PROTOCOL_ERROR): SSL protocol error.
在我的骡子日志中,我有以下内容:

ERROR 2013-04-23 12:08:55,451 [[integrador-catalogogit].connector.http.mule.default.receiver.02] org.mule.exception.DefaultSystemExceptionStrategy: Caught exception in Exception Strategy: Http Request line is malformed: "�?��?Qv??e]?.�t#?G??*?p?V*????stS��H?"
org.apache.commons.httpclient.ProtocolException: Http Request line is malformed: "�?��?Qv??e]?.�t#?G??*?p?V*????stS��H?"
at org.mule.transport.http.RequestLine.parseLine(RequestLine.java:52)
at org.mule.transport.http.HttpServerConnection.readRequest(HttpServerConnection.java:190)
at org.mule.transport.http.HttpMessageReceiver$HttpWorker.run(HttpMessageReceiver.java:155)
at org.mule.work.WorkerContext.run(WorkerContext.java:311)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:680)
ERROR 2013-04-23 12:08:55,467 [[integrador-catalogogit].connector.http.mule.default.receiver.03] org.mule.exception.DefaultSystemExceptionStrategy: Caught exception in Exception Strategy: Http Request line is malformed: "�?��?Qv???P?*?~c?q?6?]??W?[??��H?"
org.apache.commons.httpclient.ProtocolException: Http Request line is malformed: "�?��?Qv???P?*?~c?q?6?]??W?[??��H?"
at org.mule.transport.http.RequestLine.parseLine(RequestLine.java:52)
at org.mule.transport.http.HttpServerConnection.readRequest(HttpServerConnection.java:190)
at org.mule.transport.http.HttpMessageReceiver$HttpWorker.run(HttpMessageReceiver.java:155)
at org.mule.work.WorkerContext.run(WorkerContext.java:311)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:680)
ERROR 2013-04-23 12:08:55,469 [[integrador-catalogogit].connector.http.mule.default.receiver.03] org.mule.exception.DefaultSystemExceptionStrategy: Caught exception in Exception Strategy: Http Request line is malformed: "��U��Q�Qv?cN????;]<???-???^S???G[?��*�?�?�?�9�8�?�5�E�D�f�3�2�?�A���/��??�"
org.apache.commons.httpclient.ProtocolException: Http Request line is malformed: "��U��Q�Qv?cN????;]<???-???^S???G[?��*�?�?�?�9�8�?�5�E�D�f�3�2�?�A���/��??�"
at org.mule.transport.http.RequestLine.parseLine(RequestLine.java:52)
at org.mule.transport.http.HttpServerConnection.readRequest(HttpServerConnection.java:190)
at org.mule.transport.http.HttpMessageReceiver$HttpWorker.run(HttpMessageReceiver.java:155)
at org.mule.work.WorkerContext.run(WorkerContext.java:311)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:680)
错误2013-04-23 12:08:55451[[integrador catalogit].connector.http.mule.default.receiver.02]org.mule.exception.DefaultSystemExceptionStrategy:异常策略中捕获的异常:http请求行格式不正确:�?��?Qv??e]?。�t#?G*?p?V*?stS��H?”
org.apache.commons.httpclient.ProtocolException:Http请求行格式不正确:�?��?Qv??e]?。�t#?G*?p?V*?stS��H?”
位于org.mule.transport.http.RequestLine.parseLine(RequestLine.java:52)
位于org.mule.transport.http.HttpServerConnection.readRequest(HttpServerConnection.java:190)
位于org.mule.transport.http.HttpMessageReceiver$HttpWorker.run(HttpMessageReceiver.java:155)
位于org.mule.work.WorkerContext.run(WorkerContext.java:311)
位于java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
位于java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
运行(Thread.java:680)
错误2013-04-23 12:08:55467[[integrador catalogogit].connector.http.mule.default.receiver.03]org.mule.exception.DefaultSystemExceptionStrategy:异常策略中捕获的异常:http请求行格式不正确:�?��?Qv???P*?~c?q?6?]?W?[??��H?”
org.apache.commons.httpclient.ProtocolException:Http请求行格式不正确:�?��?Qv???P*?~c?q?6?]?W?[??��H?”
位于org.mule.transport.http.RequestLine.parseLine(RequestLine.java:52)
位于org.mule.transport.http.HttpServerConnection.readRequest(HttpServerConnection.java:190)
位于org.mule.transport.http.HttpMessageReceiver$HttpWorker.run(HttpMessageReceiver.java:155)
位于org.mule.work.WorkerContext.run(WorkerContext.java:311)
位于java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
位于java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
运行(Thread.java:680)

错误2013-04-23 12:08:55469[[Integrator catalogogit].connector.http.mule.default.receiver.03]org.mule.exception.DefaultSystemExceptionStrategy:异常策略中捕获的异常:http请求行格式不正确:��U��Q�Qv?cN???;]我已经用您问题中的命令创建了一个密钥库(密码
123456
1234
太短),并在Mule 3.4上部署了您的配置(除了我删除了
json:json-to-object-transformer
组件,因为我没有该类),它工作得很好

我可以
curl-khttps://localhost:8082/getProducts
并获得回复。因此,一定有其他您没有展示的东西会引起麻烦。

我有一个例外: org.mule.exception.DefaultSystemExceptionStrategy:异常策略中捕获的异常:Http请求行格式错误:(疯狂字符集字符)


我一直滚动,直到我意识到我的http服务与https服务位于同一端口。更改端口并重试,它对我有效。

显示您的XML配置,否则我们无法帮助您。IDE屏幕截图是不够的。完成后,请参阅编辑的帖子。“我的问题出现在访问所述端点时。”“最初是通过发布到它,但在浏览器上粘贴URL并将其“卷曲”到时会出现错误。我已使用问题中的命令创建了密钥库(密码123456,1234太短)并部署了配置(除了我删除了
json:json到对象转换器
组件
,因为我没有这个类)在Mule3.4上,它工作得非常好。我可以
curl-khttps://localhost:8082/getProducts
并获得回复。因此,一定还有一些您没有展示的东西会引起麻烦。为什么您要提到Tomcat?您是否在运行嵌入Tomcat的Mule?我在这里试图了解全局:)很抱歉,我不能真正帮助您:我只能告诉您,您的方法是正确的,并且您的配置在3.4.0上运行良好:'(我非常感谢您的回答,尽管我会将您的答案标记为正确,因为您已经测试了它,并且它可以正常工作,我会继续寻找任何可能避免此问题的细节,甚至可能尝试使用3.4。感谢洛蒂最终解决了这个问题,我在Mule启动时注意到这个错误:“地址已在使用”.出于某种奇怪的原因,这只发生在8082端口上(我仍然不确定该端口周围是什么),任何其他端口都像charm=D一样工作。感谢您的支持。