JIRA

  • Log In Access more options
    • Online Help
    • GreenHopper Help
    • Agile Answers
    • Use Agile By Default
    • Keyboard Shortcuts
    • About JIRA
    • JIRA Credits
    • What’s New
  • Dashboards Access more options (Alt+d)
  • Projects Access more options (Alt+p)
  • Issues Access more options (Alt+i)
  • Agile Access more options (Alt+g)
  • Create Issue
  • Mule
  • MULE-5189

CXF and SSL (https)

  • Agile Board
  • More Actions
  • Views
    • XML
    • Word
    • Printable

Details

  • Type: Bug Bug
  • Status: Closed Closed
  • Priority: Blocker Blocker
  • Resolution: Duplicate
  • Affects Version/s: 3.0.0
  • Fix Version/s: 3.1.1
  • Component/s: Modules: CXF
  • Labels:
    None
  • Environment:

    JDK 1.6

  • User impact:
    High
  • Configuration:
    Hide

    <flow name="kivwsService">
    <inbound-endpoint address="https://localhost:443/services" exchange-pattern="request-response" />
    <cxf:simple-service serviceClass="com.mycompany.Test" />
    <component class="com.mycompany.Test" />
    </flow>

    Show
    <flow name="kivwsService"> <inbound-endpoint address="https://localhost:443/services" exchange-pattern="request-response" /> <cxf:simple-service serviceClass="com.mycompany.Test" /> <component class="com.mycompany.Test" /> </flow>
  • Log Output:
    Hide
    INFO 2010-11-08 10:29:10,170 WrapperListener_start_runner org.mule.lifecycle.AbstractLifecycleManager: Starting model: _muleSystemModel
    INFO 2010-11-08 10:29:10,170 WrapperListener_start_runner org.mule.lifecycle.AbstractLifecycleManager: Starting model: Services
    INFO 2010-11-08 10:29:10,170 WrapperListener_start_runner org.mule.construct.FlowConstructLifecycleManager: Starting flow: kivwsService
    INFO 2010-11-08 10:29:10,170 WrapperListener_start_runner org.mule.component.DefaultJavaComponent: Starting: org.mule.component.DefaultJavaComponent component for: SimpleFlowConstruct{kivwsService}
    INFO 2010-11-08 10:29:10,186 WrapperListener_start_runner org.mule.transport.http.HttpsConnector: Registering listener: kivwsService on endpointUri: https://localhost:443/services
    org.mule.module.launcher.DeploymentStartException: kiv-ws
    at org.mule.module.launcher.DefaultMuleApplication.start(DefaultMuleApplication.java:130)
    at org.mule.module.launcher.ApplicationWrapper.start(ApplicationWrapper.java:123)
    at org.mule.module.launcher.DefaultMuleDeployer.deploy(DefaultMuleDeployer.java:37)
    at org.mule.module.launcher.DeploymentService.start(DeploymentService.java:108)
    at org.mule.module.launcher.MuleContainer.start(MuleContainer.java:130)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.mule.module.reboot.MuleContainerWrapper.start(MuleContainerWrapper.java:64)
    at org.tanukisoftware.wrapper.WrapperManager$12.run(WrapperManager.java:2788)
    Caused by: org.mule.api.lifecycle.LifecycleException: Failed to start inbound endpoint "httpsEndpoint"
    at org.mule.endpoint.DefaultInboundEndpoint.start(DefaultInboundEndpoint.java:104)
    at org.mule.construct.AbstractFlowConstruct.startIfStartable(AbstractFlowConstruct.java:341)
    at org.mule.construct.AbstractFlowConstruct.access$200(AbstractFlowConstruct.java:64)
    at org.mule.construct.AbstractFlowConstruct$2.onTransition(AbstractFlowConstruct.java:137)
    at org.mule.construct.AbstractFlowConstruct$2.onTransition(AbstractFlowConstruct.java:133)
    at org.mule.lifecycle.AbstractLifecycleManager.invokePhase(AbstractLifecycleManager.java:138)
    at org.mule.construct.FlowConstructLifecycleManager.fireStartPhase(FlowConstructLifecycleManager.java:85)
    at org.mule.construct.AbstractFlowConstruct.start(AbstractFlowConstruct.java:132)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.mule.lifecycle.phases.DefaultLifecyclePhase.applyLifecycle(DefaultLifecyclePhase.java:225)
    at org.mule.lifecycle.RegistryLifecycleManager$RegistryLifecycleCallback.onTransition(RegistryLifecycleManager.java:260)
    at org.mule.lifecycle.RegistryLifecycleManager.invokePhase(RegistryLifecycleManager.java:139)
    at org.mule.lifecycle.RegistryLifecycleManager.fireLifecycle(RegistryLifecycleManager.java:110)
    at org.mule.registry.AbstractRegistry.fireLifecycle(AbstractRegistry.java:143)
    at org.mule.registry.AbstractRegistryBroker.fireLifecycle(AbstractRegistryBroker.java:59)
    at org.mule.registry.MuleRegistryHelper.fireLifecycle(MuleRegistryHelper.java:118)
    at org.mule.lifecycle.MuleContextLifecycleManager$MuleContextLifecycleCallback.onTransition(MuleContextLifecycleManager.java:94)
    at org.mule.lifecycle.MuleContextLifecycleManager$MuleContextLifecycleCallback.onTransition(MuleContextLifecycleManager.java:90)
    at org.mule.lifecycle.MuleContextLifecycleManager.invokePhase(MuleContextLifecycleManager.java:72)
    at org.mule.lifecycle.MuleContextLifecycleManager.fireLifecycle(MuleContextLifecycleManager.java:64)
    at org.mule.DefaultMuleContext.start(DefaultMuleContext.java:204)
    at org.mule.module.launcher.DefaultMuleApplication.start(DefaultMuleApplication.java:122)
    ... 10 more
    Caused by: org.mule.transport.service.TransportServiceException: Failed to create "Message Receiver" with "https"
    at org.mule.transport.service.DefaultTransportServiceDescriptor.createMessageReceiver(DefaultTransportServiceDescriptor.java:251)
    at org.mule.transport.service.DefaultTransportServiceDescriptor.createMessageReceiver(DefaultTransportServiceDescriptor.java:197)
    at org.mule.transport.AbstractConnector.createReceiver(AbstractConnector.java:2309)
    at org.mule.transport.AbstractConnector.registerListener(AbstractConnector.java:1277)
    at org.mule.transport.http.HttpConnector.registerListener(HttpConnector.java:211)
    at org.mule.endpoint.DefaultInboundEndpoint.start(DefaultInboundEndpoint.java:100)
    ... 34 more
    Caused by: java.lang.NoSuchMethodException: could not find constructor on class: class org.mule.transport.http.HttpsMessageReceiver, with matching arg params: org.mule.transport.http.HttpsConnector, org.mule.construct.SimpleFlowConstruct, org.mule.endpoint.DefaultInboundEndpoint,
    at org.mule.util.ClassUtils.instanciateClass(ClassUtils.java:390)
    at org.mule.util.ClassUtils.instanciateClass(ClassUtils.java:429)
    at org.mule.transport.service.DefaultTransportServiceDescriptor.createMessageReceiver(DefaultTransportServiceDescriptor.java:246)
    ... 39 more
    INFO 2010-11-08 10:29:10,233 WrapperListener_start_runner org.mule.module.launcher.DeploymentService: Application directory check interval: 5000
    Show
    INFO 2010-11-08 10:29:10,170 WrapperListener_start_runner org.mule.lifecycle.AbstractLifecycleManager: Starting model: _muleSystemModel INFO 2010-11-08 10:29:10,170 WrapperListener_start_runner org.mule.lifecycle.AbstractLifecycleManager: Starting model: Services INFO 2010-11-08 10:29:10,170 WrapperListener_start_runner org.mule.construct.FlowConstructLifecycleManager: Starting flow: kivwsService INFO 2010-11-08 10:29:10,170 WrapperListener_start_runner org.mule.component.DefaultJavaComponent: Starting: org.mule.component.DefaultJavaComponent component for: SimpleFlowConstruct{kivwsService} INFO 2010-11-08 10:29:10,186 WrapperListener_start_runner org.mule.transport.http.HttpsConnector: Registering listener: kivwsService on endpointUri: https://localhost:443/services org.mule.module.launcher.DeploymentStartException: kiv-ws at org.mule.module.launcher.DefaultMuleApplication.start(DefaultMuleApplication.java:130) at org.mule.module.launcher.ApplicationWrapper.start(ApplicationWrapper.java:123) at org.mule.module.launcher.DefaultMuleDeployer.deploy(DefaultMuleDeployer.java:37) at org.mule.module.launcher.DeploymentService.start(DeploymentService.java:108) at org.mule.module.launcher.MuleContainer.start(MuleContainer.java:130) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.mule.module.reboot.MuleContainerWrapper.start(MuleContainerWrapper.java:64) at org.tanukisoftware.wrapper.WrapperManager$12.run(WrapperManager.java:2788) Caused by: org.mule.api.lifecycle.LifecycleException: Failed to start inbound endpoint "httpsEndpoint" at org.mule.endpoint.DefaultInboundEndpoint.start(DefaultInboundEndpoint.java:104) at org.mule.construct.AbstractFlowConstruct.startIfStartable(AbstractFlowConstruct.java:341) at org.mule.construct.AbstractFlowConstruct.access$200(AbstractFlowConstruct.java:64) at org.mule.construct.AbstractFlowConstruct$2.onTransition(AbstractFlowConstruct.java:137) at org.mule.construct.AbstractFlowConstruct$2.onTransition(AbstractFlowConstruct.java:133) at org.mule.lifecycle.AbstractLifecycleManager.invokePhase(AbstractLifecycleManager.java:138) at org.mule.construct.FlowConstructLifecycleManager.fireStartPhase(FlowConstructLifecycleManager.java:85) at org.mule.construct.AbstractFlowConstruct.start(AbstractFlowConstruct.java:132) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.mule.lifecycle.phases.DefaultLifecyclePhase.applyLifecycle(DefaultLifecyclePhase.java:225) at org.mule.lifecycle.RegistryLifecycleManager$RegistryLifecycleCallback.onTransition(RegistryLifecycleManager.java:260) at org.mule.lifecycle.RegistryLifecycleManager.invokePhase(RegistryLifecycleManager.java:139) at org.mule.lifecycle.RegistryLifecycleManager.fireLifecycle(RegistryLifecycleManager.java:110) at org.mule.registry.AbstractRegistry.fireLifecycle(AbstractRegistry.java:143) at org.mule.registry.AbstractRegistryBroker.fireLifecycle(AbstractRegistryBroker.java:59) at org.mule.registry.MuleRegistryHelper.fireLifecycle(MuleRegistryHelper.java:118) at org.mule.lifecycle.MuleContextLifecycleManager$MuleContextLifecycleCallback.onTransition(MuleContextLifecycleManager.java:94) at org.mule.lifecycle.MuleContextLifecycleManager$MuleContextLifecycleCallback.onTransition(MuleContextLifecycleManager.java:90) at org.mule.lifecycle.MuleContextLifecycleManager.invokePhase(MuleContextLifecycleManager.java:72) at org.mule.lifecycle.MuleContextLifecycleManager.fireLifecycle(MuleContextLifecycleManager.java:64) at org.mule.DefaultMuleContext.start(DefaultMuleContext.java:204) at org.mule.module.launcher.DefaultMuleApplication.start(DefaultMuleApplication.java:122) ... 10 more Caused by: org.mule.transport.service.TransportServiceException: Failed to create "Message Receiver" with "https" at org.mule.transport.service.DefaultTransportServiceDescriptor.createMessageReceiver(DefaultTransportServiceDescriptor.java:251) at org.mule.transport.service.DefaultTransportServiceDescriptor.createMessageReceiver(DefaultTransportServiceDescriptor.java:197) at org.mule.transport.AbstractConnector.createReceiver(AbstractConnector.java:2309) at org.mule.transport.AbstractConnector.registerListener(AbstractConnector.java:1277) at org.mule.transport.http.HttpConnector.registerListener(HttpConnector.java:211) at org.mule.endpoint.DefaultInboundEndpoint.start(DefaultInboundEndpoint.java:100) ... 34 more Caused by: java.lang.NoSuchMethodException: could not find constructor on class: class org.mule.transport.http.HttpsMessageReceiver, with matching arg params: org.mule.transport.http.HttpsConnector, org.mule.construct.SimpleFlowConstruct, org.mule.endpoint.DefaultInboundEndpoint, at org.mule.util.ClassUtils.instanciateClass(ClassUtils.java:390) at org.mule.util.ClassUtils.instanciateClass(ClassUtils.java:429) at org.mule.transport.service.DefaultTransportServiceDescriptor.createMessageReceiver(DefaultTransportServiceDescriptor.java:246) ... 39 more INFO 2010-11-08 10:29:10,233 WrapperListener_start_runner org.mule.module.launcher.DeploymentService: Application directory check interval: 5000
  • Similar Issues:
    None

Description

CXF module doesn't work in a flow when specifying https as inbound. The same config runs when specifying plain http.

Issue Links

duplicates

Bug - A problem which impairs or prevents the functions of the product. MULE-5206 HTTPS inbound-endpoints do not work in a flow

  • Blocker - Blocks development and/or testing work, production could not run.
  • Closed - The issue is considered finished, the resolution is correct. Issues which are not closed can be reopened.

Activity

  • All
  • Comments
  • Work Log
  • History
  • Activity
  • Transitions
  • Commits
  • Source
  • Builds
Hide
Permalink
Tomas Blohm added a comment - 09/Nov/10 08:22 AM

After some digging I found out that it has nothing to do with CXF at all, it's a common problem using https in a flow.
A workaround for those who have the same problem is to use "old style" services, like:

A global endpoint:

<endpoint name="test" address="https://localhost:443/services"
exchange-pattern="request-response" >
<spring-security:http-security-filter realm="mule-realm" />
<cxf:simple-service serviceClass="com.mycompany.Test" >
<cxf:inInterceptors>
<spring:bean class="com.mycompany.MyInterceptor" />
</cxf:inInterceptors>
</cxf:simple-service>
</endpoint>

and a service:

<service name="testService">
<inbound>
<inbound-endpoint ref="test"/>
</inbound>
<component>
<singleton-object class="com.mycompany.Test"/>
</component>
</service>

It would be nice to be able to use https in a flow though...

/Tomas Blohm

Show
Tomas Blohm added a comment - 09/Nov/10 08:22 AM After some digging I found out that it has nothing to do with CXF at all, it's a common problem using https in a flow. A workaround for those who have the same problem is to use "old style" services, like: A global endpoint: <endpoint name="test" address="https://localhost:443/services" exchange-pattern="request-response" > <spring-security:http-security-filter realm="mule-realm" /> <cxf:simple-service serviceClass="com.mycompany.Test" > <cxf:inInterceptors> <spring:bean class="com.mycompany.MyInterceptor" /> </cxf:inInterceptors> </cxf:simple-service> </endpoint> and a service: <service name="testService"> <inbound> <inbound-endpoint ref="test"/> </inbound> <component> <singleton-object class="com.mycompany.Test"/> </component> </service> It would be nice to be able to use https in a flow though... /Tomas Blohm

People

  • Assignee:
    Daniel Feist
    Reporter:
    Tomas Blohm
Vote (0)
Watch (1)

Dates

  • Created:
    09/Nov/10 01:32 AM
    Updated:
    21/Jan/11 02:29 PM
    Resolved:
    21/Jan/11 02:28 PM

Agile

  • View on Board
  • Atlassian JIRA (v5.0.7#734-sha1:8ad78a6)
  • Report a problem
  • Powered by a free Atlassian JIRA open source license for MuleForge. Try JIRA - bug tracking software for your team.