Thursday, March 17, 2011

Always Use SSL in Jdeveloper to deploy a process

When you install a server by default it is enabled for a ssl port also.

You can verify the same from Admin console of weblogic

Go to the weblogic console and go to the server general page you can see

Listen Port Enabled and SSL Listen Port Enabled both are selected.

If the SSL Listen Port Enabled is not selected for the managed server and you will try to deploy a process from jdeveloper then it will choose the http protocol as shown below.



Now just log in to your admin console and enable the ssl listen port for the managed server as shown



Now you try to deploy the process from your jdeveloper and you will find that it will use the https protocol by default.This was the case till Jdeveloper 11.1.1.3



===============================================================================


But from Jdev 11.1.1.4 even if the server is ssl enabled the jdeveloper will select the http protocol to deploy the process.If you want to deploy to https you need to select Always use SSL in the application server connection properties as shown below.




Now if you will try to deploy it will automatically choose the https option. However if the managed server is not ssl enabled you are supposed to get an error like this in jdev11.1.1.4



However prior to Jdeveloper version 11.1.1.4 this was not the case,Prior to jdeveloper 11.1.1.4 if you will select the Always use SSL option you will not be able to find the server ,you might come up with a screen like this as shown.




You probably will have to follow a different approach in that case.
Because prior to jdeveloper 11.1.1.4 you need to import the certificates to your jdeveloper keystore
To deploy the process using SSL.
This will essentially require you to save the certificate from browser.

Go in your browser and export the certificate for the SSL link as shown below and export it locally to your machine.



Once you exported the certificate ,you can now go to your jdeveloper keystore and import the certificate in your keystore as shown below.



Now go to your Jdeveloper_home/jdev/bin/jdev.conf and add the following values.


AddVMOption -Djavax.net.ssl.keyStore=D:\SOA11g\jdeveloper\jdk160_18\jre\lib\security\cacerts
AddVMOption -Djavax.net.ssl.keyStorePassword=changeit
AddVMOption -Djavax.net.ssl.keyStoreType=JKS

AddVMOption -Djavax.net.ssl.trustStoreType=JKS
AddVMOption -Djavax.net.ssl.trustStore=D:\SOA11g\jdeveloper\jdk160_18\jre\lib\security\cacerts
AddVMOption -Djavax.net.ssl.trustStorePassword=changeit

Now restart the jdeveloper and see if you are able to deploy the process.Let me know if there is any issue.

One thing that you need to take care of is that the version of Jdeveloper and SOA must match otherwise you might face issues in finding the server.

I will recommend to use Jdeveloper 11.1.1.4 with SOA 11.1.1.4 as Jdeveloper 11.1.1.4 comes with lots of new feature which we may see later in some post.

No comments: