Consumir Web Services HTTPS desde JDeveloper 10g
Hola,
estoy intentando consumir un Web Service de CRM On Demand desde JDeveloper 10g (concretamente la versión es 10.1.3), pero me encuentro con el siguiente error:
HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Message send failed: javax.net.ssl.SSLException: SSL handshake failed: X509CertChainIncompleteErr
A la hora de loguearme no tengo problema, pero sí a la hora de intentar efectuar una operación (por ejemplo, inserción).
Probé de efectuar la operación primero sin indicarle el certificado y a continuación indicándole, pero el error es el mismo.
Los pasos seguidos para importar el certificado han sido:
1) Desde CRM On Demand después de loguearme (y tener ya acceso a CRM On Demand) me descargo el certificado.
2) %JDEVELOPER/jdk/bin > keytool (-trustcacerts) (-->he probado añadiendo y no esta opción) -import -file DIRECTORIO_CERTIFICADO -keystore %JDEVELOPER/jdk/jre/lib/security/cacerts -storepass changeit (-alias miNombre) (-->tb he probado añadiendo y no esta opción)
3) al final del fichero de configuración de JDeveloper (jdev.conf) he añadido:
AddVMOption -Djavax.net.ssl.trustStore=C:\Documents and Settings\Usuari\Escritorio\jdevstudio1013\jdk\jre\lib\security\cacerts
AddVMOption -Djavax.net.ssl.trustStorePassword=changeit
4) Desde el cliente he añadido (las sentencias entre paréntesis, he probado de añadirlas y NO añadirlas):
(Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());)
System.setProperty("javax.net.ssl.trustStore", System.getProperty("java.home")+ "/lib/security/cacerts".replace('/', File.separatorChar)); System.setProperty("javax.net.ssl.trustStorePassword",constantes.PASSWORD_STORE
_CERT);
(System.setProperty("javax.net.ssl.Keystore", System.getProperty("java.home")+ "/lib/security/cacerts".replace('/', File.separatorChar));)
(System.setProperty("javax.net.ssl.KeyStorePassword",constantes.PASSWORD_STORE_
CERT);
System.setProperty("com.sun.net.ssl.dhKeyExchangeFix", "true"); )
Estas operaciones las efectúo antes de loguearme.
Por otro lado, desde el stub tb he añadido el usuario y el password que se conectará al servicio, todo y que en principio no debería ser necesario:
_setProperty(USERNAME_PROPERTY,miUSER);
_setProperty(PASSWORD_PROPERTY,miPASSWORD);
¿Alguien se ha encontrado con un problema similar? ¿O se le ocurre alguna idea para poder solucionar el error? Si es así agradecería cualquier ayuda o sugerimiento, pq estoy bastante encallada.
Gracias de antemano y saludos.
Status:
Open nov. 16, 2009 - 03:09
problema, java, error, web, 4, 3, web service, webservice, jdeveloper 10, jdeveloper, https, crm, crm on demand, programación
Añadir Nuevo Comentario