Forum Stats

  • 3,824,920 Users
  • 2,260,440 Discussions
  • 7,896,347 Comments

Discussions

How to start Forms with FSAL from a web page hyperlink by using a custom protocol handler?

study-feng
study-feng Member Posts: 86
edited Oct 7, 2019 2:22AM in Forms

Hi,

Could you please give me some advice on how to start Forms FSAL from a web page hyperlink using a custom protocol handler on windows?

Refer to

          https://www.oracle.com/technetwork/developer-tools/forms/documentation/fsal-security-4438382.pdf

         

          ----------<cut>------------

          Starting FSAL from a web page hyperlink should be technically

          possible using a custom protocol handler, ... ...

          ----------<cut>------------

Thank you and regards,

feng

Answers

  • cormaco
    cormaco Member Posts: 1,939 Silver Crown
    edited Oct 7, 2019 2:22AM
    Could you please give me some advice on how to start Forms FSAL from a web page hyperlink using a custom protocol handler on windows?

    Here are the Microsoft docs on custom protocol handlers:

    Registering an Application to a URI Scheme

    User_5R9P7
  • User_5R9P7
    User_5R9P7 Member Posts: 5 Red Ribbon

    I build one of these using C#. Was straight forward but you can also simply create 'static' ones for each environment purely with the registry as outlined in the 1st reply.

  • Michael Ferrante-Oracle
    Michael Ferrante-Oracle Senior Principal Product Manager USMember Posts: 7,194 Employee
    edited Jun 16, 2022 4:46PM

    @study-feng There are a variety of reasons why we do not provide documentation on how to do this. The most important one is that Oracle will not support doing it or provide support for cases where your app does not do what you expect when you launch it this way.

    As stated in the doc you mentioned, it is possible to make it work, but understand that you are on your own to develop, deploy, and support it (referring to the custom handlers). Also, be aware that if you plan to deploy this behavior to all users, you will need to modify the Registry (for Windows users) and possibly the browser in order to make this work. Therefore, the practicality of doing this may not be worth the effort if there are many users.

    Something else to consider is that FSAL does not currently support running from a custom protocol handler like Web Start does. This means that you cannot pass argument values into the call from the page. In other words, the hyperlink will mostly just be a dummy. The actual URL will be part of the registered protocol. This means each unique application or config would need its own unique custom protocol. In a future release, we are are hoping to expose proper custom protocol handling.

    Remember that you are working in the Windows Registry. If you are not familiar with doing so, it is not recommended that you go further without first reading up on what the Windows Registry is, how to create a backup, and the risks involved in making direct alterations in it.

    Here is an example Windows Registry script you would need to create the Registry entries. Remember to change the server:port, other URL parameters you desire, and the path to frmsal.jar in your environment. This would need to be run on each user machine.

    Use the following at your own risk. Oracle will not provide support for its use or any damage that may result from its use.

    Windows Registry Editor Version 5.00
    
    [HKEY_CLASSES_ROOT\salesApp]
    @="URL:fsal Protocol"
    "URL Protocol"=""
    "UseOriginalUrlEncoding"=dword:00000001
    
    [HKEY_CLASSES_ROOT\salesApp\DefaultIcon]
    
    [HKEY_CLASSES_ROOT\salesApp\shell]
    
    [HKEY_CLASSES_ROOT\salesApp\shell\open]
    "CommandId"="IE.Protocol"
    
    [HKEY_CLASSES_ROOT\salesApp\shell\open\command]
    @="\"C:\\<JAVA HOME DIRECTORY>\\bin\\javaw.exe\" -jar \"C:\\<PATH TO FSAL>\\frmsal.jar\" -url \"https://<YOUR SERVER:PORT>/forms/frmservlet?config=standaloneapp\""
    

    To take advantage of this from a web page, the page would need to include a hyperlink that references "salesApp:". For example:

    <p><a href="salesApp:dummy">Click to launch Sales application</a></p>

    Do not use "fsal" or "fsals" as the key name. These protocols likely will be used in a future FSAL release as part of properly supporting custom protocol handling.


    Michael Ferrante

    Senior Principal Product Manager

    Oracle

    Twitter: @OracleFormsPM

  • cormaco
    cormaco Member Posts: 1,939 Silver Crown

    As stated in the doc you mentioned,

    I think you confused me with the OP.

  • Michael Ferrante-Oracle
    Michael Ferrante-Oracle Senior Principal Product Manager USMember Posts: 7,194 Employee

    @cormaco You are correct. Sorry - I've corrected my post. My fingers are moving faster than my brain today. 😉


    Michael Ferrante

    Senior Principal Product Manager

    Oracle

    Twitter: @OracleFormsPM

  • User_5R9P7
    User_5R9P7 Member Posts: 5 Red Ribbon

    I can post some code if anyone interested.