Hello list! In our ServiceMix 4.2.0-fuse-02-00 we deployed multiple Camel bundles which provides web services using Apache Camel. In the first phase we used http for all services. All services used the same port number and different context paths. In phase two, we tried to switch all endpoints to https with the following (general) configuration:
{code} <camel-cxf:cxfEndpoint id="orderEntryEndpoint" address="https://0.0.0.0:8443:/Services/OrderEntry" serviceClass="com.xxx.yyy.interfaces.oe.OrderEntryWebService" endpointName="ssp:OrderEntryPort" serviceName="ssp:OrderEntryService" wsdlURL="META-INF/oe/orderEntry.wsdl" xmlns:ssp="http://www.xxx.com/oe/services/2"> <camel-cxf:properties> <entry key="schema-validation-enabled" value="true" /> </camel-cxf:properties> </camel-cxf:cxfEndpoint> <httpj:engine-factory bus="cxf"> <httpj:engine port="8443"> <httpj:tlsServerParameters> <sec:keyManagers keyPassword="password"> <sec:keyStore type="JKS" password="password" file="keyStore.jks" /> </sec:keyManagers> <sec:cipherSuitesFilter> <sec:include>.*.*</sec:include> </sec:cipherSuitesFilter> <sec:clientAuthentication want="false" required="false" /> </httpj:tlsServerParameters> </httpj:engine> </httpj:engine-factory> {code} But now, we receive the following exception when we deploy the second service (using the same https port): {code} karaf@root> Exception in thread "SpringOsgiExtenderThread-25" org.apache.camel.RuntimeCamelException: org.apache.cxf.intercep tor.Fault: Could not start Jetty server: Address already in use: JVM_Bind at org.apache.camel.util.ObjectHelper.wrapRuntimeCamelException(ObjectHelper.java:1055) at org.apache.camel.spring.SpringCamelContext.onApplicationEvent(SpringCamelContext.java:103) at org.apache.camel.spring.CamelContextFactoryBean.onApplicationEvent(CamelContextFactoryBean.java:593) at org.springframework.context.event.SimpleApplicationEventMulticaster$1.run(SimpleApplicationEventMulticaster.java:7 8) at org.springframework.core.task.SyncTaskExecutor.execute(SyncTaskExecutor.java:49) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticast er.java:76) at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:274) at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:736) at org.springframework.osgi.context.support.AbstractOsgiBundleApplicationContext.finishRefresh(AbstractOsgiBundleAppl icationContext.java:235) at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext$4.run(AbstractDelegatedExecu tionApplicationContext.java:358) at org.springframework.osgi.util.internal.PrivilegedUtils.executeWithCustomTCCL(PrivilegedUtils.java:85) at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.completeRefresh(AbstractDele gatedExecutionApplicationContext.java:320) at org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor$Complet eRefreshTask.run(DependencyWaiterApplicationContextExecutor.java:136) at java.lang.Thread.run(Thread.java:619) Caused by: org.apache.cxf.interceptor.Fault: Could not start Jetty server: Address already in use: JVM_Bind at org.apache.cxf.transport.http_jetty.JettyHTTPServerEngine.addServant(JettyHTTPServerEngine.java:371) at org.apache.cxf.transport.http_jetty.JettyHTTPDestination.activate(JettyHTTPDestination.java:167) at org.apache.cxf.transport.AbstractObservable.setMessageObserver(AbstractObservable.java:48) at org.apache.cxf.binding.AbstractBindingFactory.addListener(AbstractBindingFactory.java:164) at org.apache.cxf.binding.soap.SoapBindingFactory.addListener(SoapBindingFactory.java:807) at org.apache.cxf.endpoint.ServerImpl.start(ServerImpl.java:127) at org.apache.camel.component.cxf.CxfConsumer.doStart(CxfConsumer.java:122) at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:53) at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:49) at org.apache.camel.impl.DefaultCamelContext.start(DefaultCamelContext.java:989) at org.apache.camel.spring.SpringCamelContext.maybeStart(SpringCamelContext.java:197) at org.apache.camel.spring.SpringCamelContext.onApplicationEvent(SpringCamelContext.java:101) ... 12 more Caused by: java.net.BindException: Address already in use: JVM_Bind at java.net.PlainSocketImpl.socketBind(Native Method) at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359) at java.net.ServerSocket.bind(ServerSocket.java:319) at java.net.ServerSocket.<init>(ServerSocket.java:185) at java.net.ServerSocket.<init>(ServerSocket.java:141) at javax.net.ssl.SSLServerSocket.<init>(SSLServerSocket.java:84) at com.sun.net.ssl.internal.ssl.SSLServerSocketImpl.<init>(SSLServerSocketImpl.java:79) at com.sun.net.ssl.internal.ssl.SSLServerSocketFactoryImpl.createServerSocket(SSLServerSocketFactoryImpl.java:65) at org.mortbay.jetty.security.SslSocketConnector.newServerSocket(SslSocketConnector.java:450) at org.apache.cxf.transport.https_jetty.CXFJettySslSocketConnector.newServerSocket(CXFJettySslSocketConnector.java:13 9) at org.mortbay.jetty.bio.SocketConnector.open(SocketConnector.java:73) at org.mortbay.jetty.AbstractConnector.doStart(AbstractConnector.java:283) at org.mortbay.jetty.bio.SocketConnector.doStart(SocketConnector.java:147) at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) at org.mortbay.jetty.Server.doStart(Server.java:235) at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) at org.apache.cxf.transport.http_jetty.JettyHTTPServerEngine.addServant(JettyHTTPServerEngine.java:338) ... 23 more {code} Did we something wrong? Is there another possible configuration which works? Thanks in advance for any help, Christian -- View this message in context: http://camel.465427.n5.nabble.com/Problem-with-multiple-CXF-services-using-the-same-https-port-tp3379301p3379301.html Sent from the Camel - Users mailing list archive at Nabble.com.