1 Reply Latest reply: Oct 11, 2012 12:57 PM by 494537 RSS

    Loading SSL stub from JDeveloper to Database

    936940
      Hello,

      I am developing Web service stub that should be loaded in Oracle 10g with java 1.4. Old version comunicated with WS via HTTP. There was added SSL comunication, which needs another libraries. Stub with changes runs correctly in Jdeveloper 10.1.3.4 (it returns correct values from Web Service). When libraries are loaded in the Oracle (with some errors while loading which were present in the old version of stub too), HTTP or HTTPS communication are not functional. Test script throws this error:

      java.rmi.RemoteException: ; nested exception is: HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Message send failed: 2 > 0 at cz.hp.wsclient.sa.proxy.runtime.SaPortTypeEndpointBinding_Stub.activate(SaPortTypeEndpointBinding_Stub.java:526) at z.hp.wsclient.sa.proxy.SaPortTypeEndpointClient.activate(WS_SA_JCLIENT:828) at cz.hp.wsclient.sa.proxy.SaPortTypeEndpointClient.activate(WS_SA_JCLIENT:263) ...

      I guess it could be caused by the wrong configuration of user‘s privileges in Oracle or by the wrong set of libraries that should be loaded with the stub. Currently, I am using these permissions:

      dbms_java.grant_permission( 'SY_CLF_WS', 'SYS:java.net.SocketPermission' , '*' , 'resolve,connect, accept,listen' );
      dbms_java.grant_permission( 'SY_CLF_WS', 'SYS:java.util.PropertyPermission', 'HTTPClient.disableKeepAlives', 'write' );
      dbms_java.grant_permission( 'SY_CLF_WS', 'SYS:java.lang.RuntimePermission', 'getClassLoader', '' ); dbms_java.grant_permission( 'SY_CLF_WS', 'SYS:java.lang.RuntimePermission', 'setFactory', '' ); dbms_java.grant_permission( 'SY_CLF_WS', 'SYS:java.util.PropertyPermission', 'javax.net.ssl.trustStore', 'write' );
      dbms_java.grant_permission( 'SY_CLF_WS', 'SYS:java.util.PropertyPermission', 'javax.net.ssl.trustStorePassword', 'write' );
      dbms_java.grant_permission( 'SY_CLF_WS', 'SYS:java.util.PropertyPermission', 'HTTPClient.socket.idleTimeout', 'write' );
      dbms_java.grant_permission( 'SY_CLF_WS', 'SYS:java.lang.RuntimePermission', 'getClassLoader', '' );
      dbms_java.grant_permission('SY_CLF_WS','SYS:java.lang.RuntimePermission', 'createClassLoader','');
      dbms_java.grant_permission( 'SY_CLF_WS', 'SYS:java.lang.RuntimePermission', 'accessClassInPackage.sun.util.calendar', '' );


      Branko

      Edited by: Bra┼łko Husárik on May 14, 2012 1:07 PM