|
Hi all,
I've defined an http endpoint by this code : this.from("jetty:https://localhost:8193/SSLTest/") .process(new ProcessorLog(this.getClass())); When I install my application in Tomcat 6.0.13 it throws this exception : 2008-03-18 20:05:42.998::WARN: EXCEPTION java.security.UnrecoverableKeyException: Password must not be null at sun.security.provider.JavaKeyStore.engineGetKey(JavaKeyStore.java:107) at sun.security.provider.JavaKeyStore$JKS.engineGetKey(JavaKeyStore.java:38) at java.security.KeyStore.getKey(KeyStore.java:763) at com.sun.net.ssl.internal.ssl.SunX509KeyManagerImpl.<init>(SunX509KeyManagerImpl.java:113) at com.sun.net.ssl.internal.ssl.KeyManagerFactoryImpl$SunX509.engineInit(KeyManagerFactoryImpl.java:48) at javax.net.ssl.KeyManagerFactory.init(KeyManagerFactory.java:239) at org.mortbay.jetty.security.SslSocketConnector.createFactory(SslSocketConnector.java:202) at org.mortbay.jetty.security.SslSocketConnector.newServerSocket(SslSocketConnector.java:407) at org.mortbay.jetty.bio.SocketConnector.open(SocketConnector.java:73) at org.mortbay.jetty.AbstractConnector.doStart(AbstractConnector.java:272) at org.mortbay.jetty.bio.SocketConnector.doStart(SocketConnector.java:147) at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39) at org.apache.camel.component.jetty.JettyHttpComponent.connect(JettyHttpComponent.java:98) at org.apache.camel.component.http.HttpEndpoint.connect(HttpEndpoint.java:80) at org.apache.camel.component.http.HttpConsumer.doStart(HttpConsumer.java:50) at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:51) at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:64) at org.apache.camel.impl.DefaultCamelContext.startRoutes(DefaultCamelContext.java:461) at org.apache.camel.impl.DefaultCamelContext.doStart(DefaultCamelContext.java:435) at org.apache.camel.spring.SpringCamelContext.doStart(SpringCamelContext.java:140) at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:51) at org.apache.camel.spring.SpringCamelContext.onApplicationEvent(SpringCamelContext.java:96) at org.springframework.context.event.SimpleApplicationEventMulticaster$1.run(SimpleApplicationEventMulticaster.java:77) at org.springframework.core.task.SyncTaskExecutor.execute(SyncTaskExecutor.java:49) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:75) at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:246) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:355) at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:91) at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:75) at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:65) at it.unibas.springfreesbee.ContextStartup.contextInitialized(ContextStartup.java:43) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3827) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4334) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:626) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:511) at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1220) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:297) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836) at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761) at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1458) at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:820) at org.apache.catalina.manager.ManagerServlet.doGet(ManagerServlet.java:354) at javax.servlet.http.HttpServlet.service(HttpServlet.java:690) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Thread.java:619) 2008-03-18 20:05:42.012::WARN: failed SslSocketConnector@0.0.0.0:8193 java.io.IOException: Could not create JsseListener: java.security.UnrecoverableKeyException: Password must not be null at org.mortbay.jetty.security.SslSocketConnector.newServerSocket(SslSocketConnector.java:446) at org.mortbay.jetty.bio.SocketConnector.open(SocketConnector.java:73) at org.mortbay.jetty.AbstractConnector.doStart(AbstractConnector.java:272) at org.mortbay.jetty.bio.SocketConnector.doStart(SocketConnector.java:147) at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39) at org.apache.camel.component.jetty.JettyHttpComponent.connect(JettyHttpComponent.java:98) at org.apache.camel.component.http.HttpEndpoint.connect(HttpEndpoint.java:80) at org.apache.camel.component.http.HttpConsumer.doStart(HttpConsumer.java:50) at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:51) at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:64) at org.apache.camel.impl.DefaultCamelContext.startRoutes(DefaultCamelContext.java:461) at org.apache.camel.impl.DefaultCamelContext.doStart(DefaultCamelContext.java:435) at org.apache.camel.spring.SpringCamelContext.doStart(SpringCamelContext.java:140) at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:51) at org.apache.camel.spring.SpringCamelContext.onApplicationEvent(SpringCamelContext.java:96) at org.springframework.context.event.SimpleApplicationEventMulticaster$1.run(SimpleApplicationEventMulticaster.java:77) at org.springframework.core.task.SyncTaskExecutor.execute(SyncTaskExecutor.java:49) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:75) at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:246) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:355) at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:91) at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:75) at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:65) at it.unibas.springfreesbee.ContextStartup.contextInitialized(ContextStartup.java:43) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3827) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4334) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:626) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:511) at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1220) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:297) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836) at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761) at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1458) at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:820) at org.apache.catalina.manager.ManagerServlet.doGet(ManagerServlet.java:354) at javax.servlet.http.HttpServlet.service(HttpServlet.java:690) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Thread.java:619) ERROR [it.unibas.springfreesbee.ContextStartup - contextInitialized] - org.apache.camel.RuntimeCamelException: java.io.IOException: Could not create JsseListener: java.security.UnrecoverableKeyException: Password must not be null I'm sure that password i set in .keystore file. Can anyone help me ? Thanks |
|
just a thought, possibly reviewing the steps outlined in jetty https
configuration may help: http://jetty.mortbay.org/jetty5/faq/faq_s_400-Security_t_ssl.html On 25/03/2008, Micky Santomax <[hidden email]> wrote: > > Hi all, > > I've defined an http endpoint by this code : > this.from("jetty:https://localhost:8193/SSLTest/") > .process(new ProcessorLog(this.getClass())); > > When I install my application in Tomcat 6.0.13 it throws this exception : > > 2008-03-18 20:05:42.998::WARN: EXCEPTION > java.security.UnrecoverableKeyException: Password must not be null > at > sun.security.provider.JavaKeyStore.engineGetKey(JavaKeyStore.java:107) > at > sun.security.provider.JavaKeyStore$JKS.engineGetKey(JavaKeyStore.java:38) > at java.security.KeyStore.getKey(KeyStore.java:763) > at > com.sun.net.ssl.internal.ssl.SunX509KeyManagerImpl.<init>(SunX509KeyManagerImpl.java:113) > at > com.sun.net.ssl.internal.ssl.KeyManagerFactoryImpl$SunX509.engineInit(KeyManagerFactoryImpl.java:48) > at javax.net.ssl.KeyManagerFactory.init(KeyManagerFactory.java:239) > at > org.mortbay.jetty.security.SslSocketConnector.createFactory(SslSocketConnector.java:202) > at > org.mortbay.jetty.security.SslSocketConnector.newServerSocket(SslSocketConnector.java:407) > at > org.mortbay.jetty.bio.SocketConnector.open(SocketConnector.java:73) > at > org.mortbay.jetty.AbstractConnector.doStart(AbstractConnector.java:272) > at > org.mortbay.jetty.bio.SocketConnector.doStart(SocketConnector.java:147) > at > org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39) > at > org.apache.camel.component.jetty.JettyHttpComponent.connect(JettyHttpComponent.java:98) > at > org.apache.camel.component.http.HttpEndpoint.connect(HttpEndpoint.java:80) > at > org.apache.camel.component.http.HttpConsumer.doStart(HttpConsumer.java:50) > at > org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:51) > at > org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:64) > at > org.apache.camel.impl.DefaultCamelContext.startRoutes(DefaultCamelContext.java:461) > at > org.apache.camel.impl.DefaultCamelContext.doStart(DefaultCamelContext.java:435) > at > org.apache.camel.spring.SpringCamelContext.doStart(SpringCamelContext.java:140) > at > org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:51) > at > org.apache.camel.spring.SpringCamelContext.onApplicationEvent(SpringCamelContext.java:96) > at > org.springframework.context.event.SimpleApplicationEventMulticaster$1.run(SimpleApplicationEventMulticaster.java:77) > at > org.springframework.core.task.SyncTaskExecutor.execute(SyncTaskExecutor.java:49) > at > org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:75) > at > org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:246) > at > org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:355) > at > org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:91) > at > org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:75) > at > org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:65) > at > it.unibas.springfreesbee.ContextStartup.contextInitialized(ContextStartup.java:43) > at > org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3827) > at > org.apache.catalina.core.StandardContext.start(StandardContext.java:4334) > at > org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) > at > org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) > at > org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) > at > org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:626) > at > org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:511) > at > org.apache.catalina.startup.HostConfig.check(HostConfig.java:1220) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:297) > at > com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836) > at > com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761) > at > org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1458) > at > org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:820) > at > org.apache.catalina.manager.ManagerServlet.doGet(ManagerServlet.java:354) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:690) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) > at > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261) > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) > at > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581) > at > org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) > at java.lang.Thread.run(Thread.java:619) > 2008-03-18 20:05:42.012::WARN: failed SslSocketConnector@0.0.0.0:8193 > java.io.IOException: Could not create JsseListener: > java.security.UnrecoverableKeyException: Password must not be null > at > org.mortbay.jetty.security.SslSocketConnector.newServerSocket(SslSocketConnector.java:446) > at > org.mortbay.jetty.bio.SocketConnector.open(SocketConnector.java:73) > at > org.mortbay.jetty.AbstractConnector.doStart(AbstractConnector.java:272) > at > org.mortbay.jetty.bio.SocketConnector.doStart(SocketConnector.java:147) > at > org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39) > at > org.apache.camel.component.jetty.JettyHttpComponent.connect(JettyHttpComponent.java:98) > at > org.apache.camel.component.http.HttpEndpoint.connect(HttpEndpoint.java:80) > at > org.apache.camel.component.http.HttpConsumer.doStart(HttpConsumer.java:50) > at > org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:51) > at > org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:64) > at > org.apache.camel.impl.DefaultCamelContext.startRoutes(DefaultCamelContext.java:461) > at > org.apache.camel.impl.DefaultCamelContext.doStart(DefaultCamelContext.java:435) > at > org.apache.camel.spring.SpringCamelContext.doStart(SpringCamelContext.java:140) > at > org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:51) > at > org.apache.camel.spring.SpringCamelContext.onApplicationEvent(SpringCamelContext.java:96) > at > org.springframework.context.event.SimpleApplicationEventMulticaster$1.run(SimpleApplicationEventMulticaster.java:77) > at > org.springframework.core.task.SyncTaskExecutor.execute(SyncTaskExecutor.java:49) > at > org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:75) > at > org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:246) > at > org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:355) > at > org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:91) > at > org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:75) > at > org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:65) > at > it.unibas.springfreesbee.ContextStartup.contextInitialized(ContextStartup.java:43) > at > org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3827) > at > org.apache.catalina.core.StandardContext.start(StandardContext.java:4334) > at > org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) > at > org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) > at > org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) > at > org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:626) > at > org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:511) > at > org.apache.catalina.startup.HostConfig.check(HostConfig.java:1220) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:297) > at > com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836) > at > com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761) > at > org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1458) > at > org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:820) > at > org.apache.catalina.manager.ManagerServlet.doGet(ManagerServlet.java:354) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:690) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) > at > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261) > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) > at > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581) > at > org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) > at java.lang.Thread.run(Thread.java:619) > ERROR [it.unibas.springfreesbee.ContextStartup - contextInitialized] - > org.apache.camel.RuntimeCamelException: java.io.IOException: Could not > create JsseListener: java.security.UnrecoverableKeyException: Password must > not be null > > I'm sure that password i set in .keystore file. > > Can anyone help me ? Thanks > > -- > View this message in context: http://www.nabble.com/Password-error-for-https-endpoint-connection-tp16128569s22882p16128569.html > Sent from the Camel - Users mailing list archive at Nabble.com. > > |
|
In reply to this post by Micky Santomax
I have the same problem
|
|
In reply to this post by Gary Tully
Thanks for reply
I've follow all step of jetty ssl configuration but the problem isn't changed After various test I've see that the problem is in routing because if in RouteBuilder class I set this : JettyHttpEndpoint jettyEndpoint = context.getEndpoint("jetty:https://localhost:8196/SSLTest/", JettyHttpEndpoint.class); this.from(jettyEndpoint); The endpoint was created and when I access to it with browser I receive a request of accept the certificate. If I accept it I receive the following error : 2008-03-26 18:56:14.933::WARN: handle failed java.lang.NullPointerException at org.mortbay.thread.BoundedThreadPool.isLowOnThreads(BoundedThreadPool.java:216) at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:218) at org.mortbay.jetty.security.SslSocketConnector$SslConnection.run(SslSocketConnector.java:620) at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450) Else if I set this : JettyHttpEndpoint jettyEndpoint = context.getEndpoint("jetty:https://localhost:8196/SSLTest/", JettyHttpEndpoint.class); this.from(jettyEndpoint).process(new MyProcessor()).to("jetty:http://localhost:8195/SSLTest2/"); or this.from(jettyEndpoint).to("jetty:http://localhost:8195/SSLTest2/"); I receive the previous error : 2008-03-18 20:05:42.998::WARN: EXCEPTION > java.security.UnrecoverableKeyException: Password must not be null |
|
I think you should open a jira[1] for the password null issue. I think
it is a bug. 2008-03-18 20:05:42.998::WARN: EXCEPTION > > java.security.UnrecoverableKeyException: Password must not be null to create a jetty https endpoint that uses a password to access its keystore I needed to modify the JettyHttpComponent as follows: Index: src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java =================================================================== --- src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java (revision 641579) +++ src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java (working copy) @@ -89,7 +89,10 @@ if (connectorRef == null) { Connector connector; if ("https".equals(endpoint.getProtocol())) { - connector = new SslSocketConnector(); + SslSocketConnector sslConnector = new SslSocketConnector(); + sslConnector.setPassword(""); + sslConnector.setKeyPassword(""); + connector = sslConnector; } else { connector = new SelectChannelConnector(); } This allowed the SslSocketConnector to make use of the jetty system properties for passwords: -Djetty.ssl.password=... and -Djetty.ssl.keypassword=... In the absence of the system properties, there is a prompt to StdIn. I was able to use a browser to access the following route: Processor proc = new Processor() { public void process(Exchange exchange) throws Exception { exchange.getOut(true).setBody("<b>Hello World</b>"); } }; from("jetty:https://localhost:8080/hello").process(proc); [1] http://issues.apache.org/activemq/browse/CAMEL On 26/03/2008, Micky Santomax <[hidden email]> wrote: > > Thanks for reply > > I've follow all step of jetty ssl configuration but the problem isn't > changed > After various test I've see that the problem is in routing because if in > RouteBuilder class I set this : > > JettyHttpEndpoint jettyEndpoint = > context.getEndpoint("jetty:https://localhost:8196/SSLTest/", > JettyHttpEndpoint.class); > > this.from(jettyEndpoint); > > The endpoint was created and when I access to it with browser I receive a > request of accept the certificate. If I accept it I receive the following > error : > > 2008-03-26 18:56:14.933::WARN: handle failed > java.lang.NullPointerException > at > org.mortbay.thread.BoundedThreadPool.isLowOnThreads(BoundedThreadPool.java:216) > at > org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:218) > at > org.mortbay.jetty.security.SslSocketConnector$SslConnection.run(SslSocketConnector.java:620) > at > org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450) > > Else if I set this : > > JettyHttpEndpoint jettyEndpoint = > context.getEndpoint("jetty:https://localhost:8196/SSLTest/", > JettyHttpEndpoint.class); > > this.from(jettyEndpoint).process(new > MyProcessor()).to("jetty:http://localhost:8195/SSLTest2/"); > > or > > this.from(jettyEndpoint).to("jetty:http://localhost:8195/SSLTest2/"); > > I receive the previous error : > > > 2008-03-18 20:05:42.998::WARN: EXCEPTION > > java.security.UnrecoverableKeyException: Password must not be null > > -- > View this message in context: http://www.nabble.com/Password-error-for-https-endpoint-connection-tp16128569s22882p16309438.html > > Sent from the Camel - Users mailing list archive at Nabble.com. > > |
|
Awesome patch, thanks Gary! :)
I've applied your patch to trunk. I made a minor change to use a property on the JettyHttpComponent for the sslPassword and sslKeyPassword so folks can customize then in Java / Spring if they want; but have defaulted them to "". I tried copying the HttpRouteTest to be HttpsRouteTest and changing http:// to https:// and the test just hangs though - I guess something else needs to be done to enable Jetty to support https? (Just wondering how to get a test case for https working). On 27/03/2008, Gary Tully <[hidden email]> wrote: > I think you should open a jira[1] for the password null issue. I think > it is a bug. > > > 2008-03-18 20:05:42.998::WARN: EXCEPTION > > > java.security.UnrecoverableKeyException: Password must not be null > > > to create a jetty https endpoint that uses a password to access its > keystore I needed to modify the JettyHttpComponent as follows: > > Index: src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java > =================================================================== > --- src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java > (revision 641579) > +++ src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java > (working copy) > @@ -89,7 +89,10 @@ > if (connectorRef == null) { > Connector connector; > if ("https".equals(endpoint.getProtocol())) { > - connector = new SslSocketConnector(); > + SslSocketConnector sslConnector = new SslSocketConnector(); > + sslConnector.setPassword(""); > + sslConnector.setKeyPassword(""); > + connector = sslConnector; > } else { > connector = new SelectChannelConnector(); > } > > > This allowed the SslSocketConnector to make use of the jetty system > properties for passwords: -Djetty.ssl.password=... and > -Djetty.ssl.keypassword=... > In the absence of the system properties, there is a prompt to StdIn. > > > I was able to use a browser to access the following route: > > Processor proc = new Processor() { > public void process(Exchange exchange) throws Exception { > exchange.getOut(true).setBody("<b>Hello World</b>"); > } > }; > from("jetty:https://localhost:8080/hello").process(proc); > > > [1] http://issues.apache.org/activemq/browse/CAMEL > > > On 26/03/2008, Micky Santomax <[hidden email]> wrote: > > > > Thanks for reply > > > > I've follow all step of jetty ssl configuration but the problem isn't > > changed > > After various test I've see that the problem is in routing because if in > > RouteBuilder class I set this : > > > > JettyHttpEndpoint jettyEndpoint = > > context.getEndpoint("jetty:https://localhost:8196/SSLTest/", > > JettyHttpEndpoint.class); > > > > this.from(jettyEndpoint); > > > > The endpoint was created and when I access to it with browser I receive a > > request of accept the certificate. If I accept it I receive the following > > error : > > > > 2008-03-26 18:56:14.933::WARN: handle failed > > java.lang.NullPointerException > > at > > org.mortbay.thread.BoundedThreadPool.isLowOnThreads(BoundedThreadPool.java:216) > > at > > org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:218) > > at > > org.mortbay.jetty.security.SslSocketConnector$SslConnection.run(SslSocketConnector.java:620) > > at > > org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450) > > > > Else if I set this : > > > > JettyHttpEndpoint jettyEndpoint = > > context.getEndpoint("jetty:https://localhost:8196/SSLTest/", > > JettyHttpEndpoint.class); > > > > this.from(jettyEndpoint).process(new > > MyProcessor()).to("jetty:http://localhost:8195/SSLTest2/"); > > > > or > > > > this.from(jettyEndpoint).to("jetty:http://localhost:8195/SSLTest2/"); > > > > I receive the previous error : > > > > > > 2008-03-18 20:05:42.998::WARN: EXCEPTION > > > java.security.UnrecoverableKeyException: Password must not be null > > > > -- > > View this message in context: http://www.nabble.com/Password-error-for-https-endpoint-connection-tp16128569s22882p16309438.html > > > > Sent from the Camel - Users mailing list archive at Nabble.com. > > > > > -- James ------- http://macstrac.blogspot.com/ Open Source Integration http://open.iona.com |
|
Thanks for the quick application.
I did the same thing with HttpRouteTest and got it to work a bit. see attachment. (cced u directly as list will probably drop attachment.) I did not see the hang, but that may be the prompt to console asking for a password in your case. It seems as if there is no https component, but jetty:https does work. The crux of a unit test is using default jdk jsse certs or generating them on the fly. Also the jetty component uses commons http client which has its own take on configuration. A round trip requires both HttpClient and Jetty config and for the pure http: invoke, raw jdk jsse config. (it may be possible to have them all use default jsse stuff for the test, don't know for sure.) The attached test case should help a bit though. If there is a jira I can attach it. On 27/03/2008, James Strachan <[hidden email]> wrote: > Awesome patch, thanks Gary! :) > > I've applied your patch to trunk. I made a minor change to use a > property on the JettyHttpComponent for the sslPassword and > sslKeyPassword so folks can customize then in Java / Spring if they > want; but have defaulted them to "". > > I tried copying the HttpRouteTest to be HttpsRouteTest and changing > http:// to https:// and the test just hangs though - I guess something > else needs to be done to enable Jetty to support https? (Just > wondering how to get a test case for https working). > > > > On 27/03/2008, Gary Tully <[hidden email]> wrote: > > I think you should open a jira[1] for the password null issue. I think > > it is a bug. > > > > > > 2008-03-18 20:05:42.998::WARN: EXCEPTION > > > > java.security.UnrecoverableKeyException: Password must not be null > > > > > > to create a jetty https endpoint that uses a password to access its > > keystore I needed to modify the JettyHttpComponent as follows: > > > > Index: src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java > > =================================================================== > > --- src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java > > (revision 641579) > > +++ src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java > > (working copy) > > @@ -89,7 +89,10 @@ > > if (connectorRef == null) { > > Connector connector; > > if ("https".equals(endpoint.getProtocol())) { > > - connector = new SslSocketConnector(); > > + SslSocketConnector sslConnector = new SslSocketConnector(); > > + sslConnector.setPassword(""); > > + sslConnector.setKeyPassword(""); > > + connector = sslConnector; > > } else { > > connector = new SelectChannelConnector(); > > } > > > > > > This allowed the SslSocketConnector to make use of the jetty system > > properties for passwords: -Djetty.ssl.password=... and > > -Djetty.ssl.keypassword=... > > In the absence of the system properties, there is a prompt to StdIn. > > > > > > I was able to use a browser to access the following route: > > > > Processor proc = new Processor() { > > public void process(Exchange exchange) throws Exception { > > exchange.getOut(true).setBody("<b>Hello World</b>"); > > } > > }; > > from("jetty:https://localhost:8080/hello").process(proc); > > > > > > [1] http://issues.apache.org/activemq/browse/CAMEL > > > > > > On 26/03/2008, Micky Santomax <[hidden email]> wrote: > > > > > > Thanks for reply > > > > > > I've follow all step of jetty ssl configuration but the problem isn't > > > changed > > > After various test I've see that the problem is in routing because if in > > > RouteBuilder class I set this : > > > > > > JettyHttpEndpoint jettyEndpoint = > > > context.getEndpoint("jetty:https://localhost:8196/SSLTest/", > > > JettyHttpEndpoint.class); > > > > > > this.from(jettyEndpoint); > > > > > > The endpoint was created and when I access to it with browser I receive a > > > request of accept the certificate. If I accept it I receive the following > > > error : > > > > > > 2008-03-26 18:56:14.933::WARN: handle failed > > > java.lang.NullPointerException > > > at > > > org.mortbay.thread.BoundedThreadPool.isLowOnThreads(BoundedThreadPool.java:216) > > > at > > > org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:218) > > > at > > > org.mortbay.jetty.security.SslSocketConnector$SslConnection.run(SslSocketConnector.java:620) > > > at > > > org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450) > > > > > > Else if I set this : > > > > > > JettyHttpEndpoint jettyEndpoint = > > > context.getEndpoint("jetty:https://localhost:8196/SSLTest/", > > > JettyHttpEndpoint.class); > > > > > > this.from(jettyEndpoint).process(new > > > MyProcessor()).to("jetty:http://localhost:8195/SSLTest2/"); > > > > > > or > > > > > > this.from(jettyEndpoint).to("jetty:http://localhost:8195/SSLTest2/"); > > > > > > I receive the previous error : > > > > > > > > > 2008-03-18 20:05:42.998::WARN: EXCEPTION > > > > java.security.UnrecoverableKeyException: Password must not be null > > > > > > -- > > > View this message in context: http://www.nabble.com/Password-error-for-https-endpoint-connection-tp16128569s22882p16309438.html > > > > > > Sent from the Camel - Users mailing list archive at Nabble.com. > > > > > > > > > > > > -- > James > ------- > http://macstrac.blogspot.com/ > > Open Source Integration > http://open.iona.com > |
|
In reply to this post by Gary Tully
Thanks Gary for your suggestion
What type of container do you use ? I have tomcat and I've test the following route that you suggest, but the error persist : "java.security.UnrecoverableKeyException: Password must not be null" I have no modified the JettyHttpComponent, but set the SSLConnector and endpoint as follow : JettyHttpEndpoint jettyEndpoint = context.getEndpoint("jetty:https://localhost:8196/SSLTest/", JettyHttpEndpoint.class); SslSocketConnector ssl = new SslSocketConnector(); ssl.setPort(8196); ssl.setMaxIdleTime(30000); ssl.setPassword("passwordString"); ssl.setKeyPassword("passwordString"); ssl.setTrustPassword("passwordString"); BoundedThreadPool btp = new BoundedThreadPool(); btp.setMaxThreads(250); btp.setMinThreads(10); btp.setLowThreads(10); btp.start(); JettyHttpComponent componentJetty = (JettyHttpComponent) context.getComponent("jetty"); Server serverJetty = componentJetty.getServer(); serverJetty.addConnector(ssl); serverJetty.setThreadPool(btp); ssl.start(); SSLTest sslTest = new SSLTest(jettyEndpoint); // RouteBuilder context.addRoutes(sslTest); PS How can I open a JIRA ? |
|
Administrator
|
Micky
JIRA: http://activemq.apache.org/camel/support.html Click the Issue Tracker link. You do need to signup to create an account to create a new ticket in JIRA. After you have logged in there is a button "Create new issue" on the red top bar.
Claus Ibsen
----------------- FuseSource Email: cibsen@fusesource.com Web: http://fusesource.com Twitter: davsclaus Blog: http://davsclaus.blogspot.com/ Author of Camel in Action: http://www.manning.com/ibsen/ |
|
In reply to this post by Micky Santomax
Micky,
In terms of container, I am not using any. I was using just the JVM based on one of the jetty unit tests. A https variant of https://svn.apache.org/repos/asf/activemq/camel/trunk/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpRouteTest.java The changes to have a camel-jetty endpoint pick up a key store password are now on trunk but you will need to build trunk your self to pick them up. I need to research how best to manage certs for the tests, before submitting the full test case that shows route round trip with jetty:https On 27/03/2008, Micky Santomax <[hidden email]> wrote: > > Thanks Gary for your suggestion > > What type of container do you use ? I have tomcat and I've test the > following route that you suggest, but the error persist : > "java.security.UnrecoverableKeyException: Password must not be null" > > > > > I was able to use a browser to access the following route: > > > > Processor proc = new Processor() { > > public void process(Exchange exchange) throws > > Exception { > > exchange.getOut(true).setBody("Hello World"); > > } > > }; > > from("jetty:https://localhost:8080/hello").process(proc); > > > > > I have no modified the JettyHttpComponent, but set the SSLConnector and > endpoint as follow : > > JettyHttpEndpoint jettyEndpoint = > context.getEndpoint("jetty:https://localhost:8196/SSLTest/", > JettyHttpEndpoint.class); > > SslSocketConnector ssl = new SslSocketConnector(); > ssl.setPort(8196); > ssl.setMaxIdleTime(30000); > ssl.setPassword("passwordString"); > ssl.setKeyPassword("passwordString"); > ssl.setTrustPassword("passwordString"); > > BoundedThreadPool btp = new BoundedThreadPool(); > btp.setMaxThreads(250); > btp.setMinThreads(10); > btp.setLowThreads(10); > btp.start(); > > JettyHttpComponent componentJetty = (JettyHttpComponent) > context.getComponent("jetty"); > Server serverJetty = componentJetty.getServer(); > > serverJetty.addConnector(ssl); > serverJetty.setThreadPool(btp); > > ssl.start(); > > SSLTest sslTest = new SSLTest(jettyEndpoint); // RouteBuilder > context.addRoutes(sslTest); > > > > > to create a jetty https endpoint that uses a password to access its > > keystore I needed to modify the JettyHttpComponent as follows: > > > > Index: > > src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java > > =================================================================== > > --- src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java > > (revision 641579) > > +++ src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java > > (working copy) > > @@ -89,7 +89,10 @@ > > if (connectorRef == null) { > > Connector connector; > > if ("https".equals(endpoint.getProtocol())) { > > - connector = new SslSocketConnector(); > > + SslSocketConnector sslConnector = new > > SslSocketConnector(); > > + sslConnector.setPassword(""); > > + sslConnector.setKeyPassword(""); > > + connector = sslConnector; > > } else { > > connector = new SelectChannelConnector(); > > } > > > > > > This allowed the SslSocketConnector to make use of the jetty system > > properties for passwords: -Djetty.ssl.password=... and > > -Djetty.ssl.keypassword=... > > In the absence of the system properties, there is a prompt to StdIn. > > > > > PS How can I open a JIRA ? > -- > View this message in context: http://www.nabble.com/Password-error-for-https-endpoint-connection-tp16128569s22882p16332255.html > Sent from the Camel - Users mailing list archive at Nabble.com. > > |
|
In reply to this post by davsclaus
I have opened JIRA at this URL https://issues.apache.org/activemq/browse/CAMEL-407
|
|
In reply to this post by Gary Tully
Sorry Gary, I have run the HttpRouteTest with https protocol but the error is the same : [junit] ------------- Standard Error ----------------- [junit] 2008-03-28 16:21:32.264::INFO: Logging to STDERR via org.mortbay.log.StdErrLog [junit] 2008-03-28 16:21:32.264::INFO: jetty-6.1.8 [junit] 2008-03-28 16:21:32.571::INFO: Started SslSocketConnector@0.0.0.0:55631 [junit] 2008-03-28 16:21:32.657::WARN: EXCEPTION [junit] java.security.UnrecoverableKeyException: Password must not be null ... Why when you were able to use a browser to access the route, password exception wasn't thrown ? Have you run this jetty test with https protocol ? |
|
Hi Micky,
> Why when you were able to use a browser to access the route, password > exception wasn't thrown ? are you using the latest trunk? can you verify that the changes identified @ http://fisheye6.cenqua.com/browse/activemq/camel/trunk/components/camel-jetty/src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java?r1=614080&r2=641800 are in your checkout. With these you should be able to configure a password for the endpoint via a system property or on the command line when prompted. > Have you run this jetty test with https protocol ? yes :-( Early next week I will work on submitting the test case with a key store etc. On 28/03/2008, Micky Santomax <[hidden email]> wrote: > > > Gary Tully wrote: > > > > I was able to use a browser to access the following route: > > > > Processor proc = new Processor() { > > public void process(Exchange exchange) throws > > Exception { > > > exchange.getOut(true).setBody("Hello World"); > > > } > > }; > > from("jetty:https://localhost:8080/hello").process(proc); > > > > > Sorry Gary, I have run the HttpRouteTest with https protocol but the error > is the same : > > [junit] ------------- Standard Error ----------------- > [junit] 2008-03-28 16:21:32.264::INFO: Logging to STDERR via > org.mortbay.log.StdErrLog > [junit] 2008-03-28 16:21:32.264::INFO: jetty-6.1.8 > [junit] 2008-03-28 16:21:32.571::INFO: Started > SslSocketConnector@0.0.0.0:55631 > [junit] 2008-03-28 16:21:32.657::WARN: EXCEPTION > [junit] java.security.UnrecoverableKeyException: Password must not be > null > ... > > Why when you were able to use a browser to access the route, password > exception wasn't thrown ? > Have you run this jetty test with https protocol ? > > -- > View this message in context: http://www.nabble.com/Password-error-for-https-endpoint-connection-tp16128569s22882p16354776.html > > Sent from the Camel - Users mailing list archive at Nabble.com. > > |
|
Thanks for patch Gary
> are you using the latest trunk? > can you verify that the changes identified @ > http://fisheye6.cenqua.com/browse/activemq/camel/trunk/components/camel-jetty/src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java?r1=614080&r2=641800 > are in your checkout. I'm using last trunk. In installation phase there aren't problems, but when I send a soap message to the endpoint, the following exception is thrown : 2008-04-01 13:41:26.010::WARN: handle failed java.lang.NullPointerException at org.mortbay.thread.BoundedThreadPool.isLowOnThreads(BoundedThreadPool.java:216) at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:218) at org.mortbay.jetty.security.SslSocketConnector$SslConnection.run(SslSocketConnector.java:620) at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450) |
|
Hi Micky,
It looks like jetty is not properly configured or there are two instances of jetty. Can you try to exercise your camel route outside of tomcat first, in a standalone jvm. Also, it may be good to attach a testcase and/or your tomcat config to the jira you raised. One thing that seems strange to me is the use of jetty (a servlet engine) inside tomcat (another servlet engine). Am I missing something? At the moment, the camel-jetty component requires jetty but it would make sense that it could be configured to deploy its servlet to tomcat. Gary. On 01/04/2008, Micky Santomax <[hidden email]> wrote: > > Thanks for patch Gary > > > > are you using the latest trunk? > > can you verify that the changes identified @ > > http://fisheye6.cenqua.com/browse/activemq/camel/trunk/components/camel-jetty/src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java?r1=614080&r2=641800 > > are in your checkout. > > > I'm using last trunk. In installation phase there aren't problems, but when > I send a soap message to the endpoint, the following exception is thrown : > > 2008-04-01 13:41:26.010::WARN: handle failed > > java.lang.NullPointerException > at > org.mortbay.thread.BoundedThreadPool.isLowOnThreads(BoundedThreadPool.java:216) > at > org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:218) > at > org.mortbay.jetty.security.SslSocketConnector$SslConnection.run(SslSocketConnector.java:620) > at > org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450) > > -- > View this message in context: http://www.nabble.com/Password-error-for-https-endpoint-connection-tp16128569s22882p16418451.html > > Sent from the Camel - Users mailing list archive at Nabble.com. > > |
How can I verify this ? I run my personalized HttpRouteTest with https protocol. It is attached in Jira : https://issues.apache.org/activemq/browse/CAMEL-407 Tomcat is in default configuration I prefer to use Tomcat as external container for Apache Camel instead of Apache Servicemix, because I want to distribute my application for all standard container as Tomcat, JBoss, GlassFish or whatever. |
|
On 02/04/2008, Micky Santomax <[hidden email]> wrote:
> > > Gary Tully wrote: > > > > Hi Micky, > > It looks like jetty is not properly configured or there are two > > instances of jetty. > > > > How can I verify this ? > org.mortbay.jetty.Server constructors or enable full logging for org.mortbay.jetty.Server class. It logs in the doStart method. Logging for jetty? see: http://jetty.mortbay.org/jetty5/tut/logging.html > > Gary Tully wrote: > > > > Can you try to exercise your camel route outside of tomcat first, in a > > standalone jvm. > > > > I run my personalized HttpRouteTest with https protocol. It is attached in > Jira : > https://issues.apache.org/activemq/browse/CAMEL-407 > https://issues.apache.org/activemq/browse/CAMEL-407?focusedCommentId=41965#action_41965 > > > Gary Tully wrote: > > > > Also, it may be good to attach a testcase and/or your tomcat config to > > the jira you raised. > > > > Tomcat is in default configuration ok. > > > > Gary Tully wrote: > > > > One thing that seems strange to me is the use of jetty (a servlet > > engine) inside tomcat (another servlet engine). > > Am I missing something? > > > > At the moment, the camel-jetty component requires jetty but it would > > make sense that it could be configured to deploy its servlet to > > tomcat. > > > > I prefer to use Tomcat as external container for Apache Camel instead of > Apache Servicemix, because I want to distribute my application for all > standard container as Tomcat, JBoss, GlassFish or whatever. > -- > View this message in context: http://www.nabble.com/Password-error-for-https-endpoint-connection-tp16128569s22882p16446680.html > Sent from the Camel - Users mailing list archive at Nabble.com. > > |
|
In reply to this post by Micky Santomax
Resolved, there was another piece of code developed by my friend that set a BoundedThreadPool. Removed it and all works fine !
:-) Many thanks Gary for help For James, I think is a good solution to set getter and setter methods for SslSocketConnector in JettyHttpComponent with which one can set (for example) the keystore path or anything else. File with this patch is in JettyHttpComponent.java posted on JIRA : https://issues.apache.org/activemq/browse/CAMEL-407 Note : there are errors also with cxf https endpoint. The discussion is on : http://www.nabble.com/ServiceConstructionException-error-for-https-CXF-endpoint-td16448076s22882.html |
|
In reply to this post by Gary Tully
Sorry Gary,
I have experienced that if I send an http message to https endpoint, on server side is thrown exception, but on client side is returned status 200 How can I return the exception to the client ? |
| Powered by Nabble | Edit this page |
