Hi all,
I have one doubt regarding "https" implementation. I am using
servicemix-http component in my consumer layer.
1 . We have created the keystores and certificate (add those certificate in
cacerts also).
We are generating keystore and certificate by using below
commands
keytool -genkey -alias myalias -keyalg RSA -keystore
ksfile.keystore -keypass changeit -storepass changeit -dname "cn=myalias"
keytool -export -alias myalias -storepass changeit -file
mycertificate.cer -keystore ksfile.keystore
keytool -import -trustcacerts -alias myalias -file
mycertificate.cer -keystore "D:\Java\jdk1.6.0_07\jre\lib\security\cacerts"
2 . Mapping the same keystore (not the certificate) in server.xml in Jboss
and also Enabled the https port in 8443.
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
address="${jboss.bind.address}"
maxThreads="100" strategy="ms"
maxHttpHeaderSize="8192"
emptySessionPath="true" scheme="https"
secure="true" clientAuth="true"
sslProtocol = "TLS"
keystoreFile="D:/keystore/lasttry/ksfile.keystore"
keystorePass="changeit"></Connector>
3 . Configured those details in xbean.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:http="http://servicemix.apache.org/http/1.0">
<http:endpoint service="tns:MyService"
endpoint="MySer"
role="consumer"
targetService="tns:MyService"
locationURI="https://localhost:18569/MyService/"
defaultMep="http://www.w3.org/2004/08/wsdl/in-out"
synchronous="false">
<http:ssl>
<http:sslParameters keyStore="D:\keystore\lasttry\ksfile.keystore"
keyStorePassword="changeit" keyPassword="changeit" />
</http:ssl>
</http:endpoint>
</beans>
1 . I am getting exception :
javax.net.ssl.SSLHandshakeException: Received fatal alert:
certificate_unknown
at
com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:174)
at
com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:136)
at
com.sun.net.ssl.internal.ssl.SSLSocketImpl.recvAlert(SSLSocketImpl.java:1657)
at
com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:932)
at
com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1096)
at
com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1123)
at
com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1107)
at
org.mortbay.jetty.security.SslSocketConnector$SslConnection.run(SslSocketConnector.java:675)
at
org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
Kindly help me.............
-----
Thanks&Regards,
Ramesh Babu.P
--
View this message in context:
http://servicemix.396122.n5.nabble.com/problem-in-https-implementation-in-servicemix-tp4917151p4917151.html
Sent from the ServiceMix - Dev mailing list archive at Nabble.com.