readme.txt
author Cristian Berner <cristian.berner@openbravo.com>
Fri, 17 Apr 2020 13:43:57 +0200
changeset 129 1c5993cd986c
parent 91 d01694731df9
permissions -rw-r--r--
Related to ISSUE-41898: Add .gitignore matching .hgignore
david@28
     1
This README describes how to install a new smartclient version into the system.
martin@8
     2
david@28
     3
All processes here described can be automatically done using upgrade.sh script.
david@28
     4
Depending on many factors (SO, installed software, ...) it could not work, so use it at your own risk.
martin@8
     5
david@28
     6
david@28
     7
STEP A: Upgrade this module (org.openbravo.userinterface.smartclient.dev)
david@28
     8
david@28
     9
1) Download new sources
david@28
    10
Go here:
david@28
    11
http://www.smartclient.com/builds/SmartClient/
david@28
    12
And then inside the desired version, then inside the LGPL directory and finally the desired nightly build revision
david@28
    13
Download the zip file
david@28
    14
david@28
    15
After downloading unzip/untar the file and you will see 2 subfolders in the created folder:
martin@8
    16
smartclientRuntime
martin@8
    17
smartclientSDK
martin@8
    18
david@28
    19
the first one (smartclientRuntime) will be used to get the runtime javascript from (to build the ISC_Combined.js file).
martin@8
    20
david@28
    21
2) Copy/Move the following files/directories to the org.openbravo.userinterface.smartclient.dev module
david@28
    22
smartclientRuntime/isomorphic --> web/org.openbravo.userinterface.smartclient/isomorphic (note see remove not-needed skins step below)
david@28
    23
smartclientSDK/source/client --> web/org.openbravo.userinterface.smartclient/isomorphic
david@28
    24
smartclientSDK/source/copyright.txt --> web/org.openbravo.userinterface.smartclient/isomorphic
david@28
    25
smartclientSDK/isomorphic/system/reference --> web/org.openbravo.userinterface.smartclient/isomorphic/system/reference
david@9
    26
smartclientSDK/docs --> docs
martin@13
    27
smartclientSDK/tools/selenium --> selenium
martin@8
    28
david@37
    29
3) Remove unneeded skins except:
david@9
    30
-Enterprise
david@9
    31
-Smartclient
david@9
    32
-Standard
david@28
    33
from web/org.openbravo.userinterface.smartclient/isomorphic/skins
martin@8
    34
david@37
    35
4) Prevent build errors:
david@28
    36
The SmartClient reference contains java examples which our build system will try to compile (with errors of course),
david@28
    37
therefore remove not needed java files by removing the following directories
david@28
    38
web/org.openbravo.userinterface.smartclient/isomorphic/system/reference/inlineExamples/serverExamples
david@28
    39
web/org.openbravo.userinterface.smartclient/isomorphic/system/reference/inlineExamples/dataIntegration
martin@16
    40
david@37
    41
5) Prevent 404 error in source mode
david@28
    42
Inside web/org.openbravo.userinterface.smartclient/isomorphic/client/modules/ISC_DataBinding.js
david@28
    43
comment out the lines which load the ds.xml files:
martin@21
    44
//        "schema/DataSource.ds.xml",
martin@21
    45
//        "schema/DataSourceField.ds.xml",
martin@21
    46
//        "schema/Validator.ds.xml",
martin@21
    47
//        "schema/SimpleType.ds.xml",
martin@21
    48
//        "schema/XSComplexType.ds.xml",
martin@21
    49
//        "schema/XSElement.ds.xml",
martin@21
    50
//        "schema/SchemaSet.ds.xml",
martin@21
    51
//        "schema/WSDLMessage.ds.xml",
martin@21
    52
//        "schema/WebService.ds.xml",
martin@21
    53
//        "schema/WebServiceOperation.ds.xml",
martin@21
    54
//        "schema/WSOperationHeader.ds.xml",
martin@21
    55
david@37
    56
6) Remove the .js.gz files of
david@37
    57
web/org.openbravo.userinterface.smartclient/isomorphic/
david@37
    58
david@37
    59
7) Create a combined file with name ISC_Combined.uncompressed.js with these files:
david@37
    60
web/org.openbravo.userinterface.smartclient/isomorphic/client/modules/ISC_Core.js
david@37
    61
web/org.openbravo.userinterface.smartclient/isomorphic/client/modules/ISC_Foundation.js
david@37
    62
web/org.openbravo.userinterface.smartclient/isomorphic/client/modules/ISC_Containers.js
david@37
    63
web/org.openbravo.userinterface.smartclient/isomorphic/client/modules/ISC_Grids.js
david@37
    64
web/org.openbravo.userinterface.smartclient/isomorphic/client/modules/ISC_Forms.js
david@37
    65
web/org.openbravo.userinterface.smartclient/isomorphic/client/modules/ISC_DataBinding.js
david@37
    66
web/org.openbravo.userinterface.smartclient/isomorphic/client/modules/ISC_Calendar.js
david@37
    67
web/org.openbravo.userinterface.smartclient/isomorphic/client/modules/ISC_PluginBridges.js
david@37
    68
web/org.openbravo.userinterface.smartclient/isomorphic/client/modules/ISC_RichTextEditor.js
david@37
    69
You can use the following ant task to generate it: ant combineSource
david@37
    70
david@37
    71
8) Copy ISC_History.js as ISC_History.uncompressed.js to modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/isomorphic
david@37
    72
ISC_History.js can be found in org.openbravo.userinterface.smartclient.dev/web/org.openbravo.userinterface.smartclient/isomorphic/client/modules/
david@37
    73
david@37
    74
9) Move ISC_Combined.uncompressed.js to modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/isomorphic
david@37
    75
david@28
    76
david@28
    77
STEP B: Upgrade Openbravo org.openbravo.userinterface.smartclient module
david@28
    78
david@28
    79
1) Create a combined file with name ISC_Combined.js with these files:
david@28
    80
web/org.openbravo.userinterface.smartclient/isomorphic/system/modules/ISC_Core.js
david@28
    81
web/org.openbravo.userinterface.smartclient/isomorphic/system/modules/ISC_Foundation.js
david@28
    82
web/org.openbravo.userinterface.smartclient/isomorphic/system/modules/ISC_Containers.js
david@28
    83
web/org.openbravo.userinterface.smartclient/isomorphic/system/modules/ISC_Grids.js
david@28
    84
web/org.openbravo.userinterface.smartclient/isomorphic/system/modules/ISC_Forms.js
david@28
    85
web/org.openbravo.userinterface.smartclient/isomorphic/system/modules/ISC_DataBinding.js
david@28
    86
web/org.openbravo.userinterface.smartclient/isomorphic/system/modules/ISC_Calendar.js
david@28
    87
web/org.openbravo.userinterface.smartclient/isomorphic/system/modules/ISC_PluginBridges.js
david@28
    88
web/org.openbravo.userinterface.smartclient/isomorphic/system/modules/ISC_RichTextEditor.js
david@28
    89
You can use the following ant task to generate it: ant combine
david@28
    90
david@28
    91
2) Copy ISC_Combined.js to modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/isomorphic
david@28
    92
ISC_Combined.js can be found in org.openbravo.userinterface.smartclient.dev/
david@28
    93
david@32
    94
3) Copy ISC_History.js to modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/isomorphic
david@32
    95
ISC_History.js can be found in org.openbravo.userinterface.smartclient.dev/web/org.openbravo.userinterface.smartclient/isomorphic/system/modules/
david@32
    96
david@28
    97
Note: If you already have this module (org.openbravo.userinterface.smartclient.dev) inside your Openbravo modules folder
david@28
    98
you can use the following command to generate ISC_Combined.js and copy it and ISC_History.js to its target path: ant
david@28
    99
david@67
   100
4) Copy empty.html to modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/isomorphic/system/helpers
david@67
   101
empty.html can be found in org.openbravo.userinterface.smartclient.dev/web/org.openbravo.userinterface.smartclient/isomorphic/system/helpers/
david@67
   102
david@67
   103
5) Copy the Enterprise skin to our skin directory:
david@28
   104
org.openbravo.userinterface.smartclient.dev/isomorphic/skins/Enterprise --> 
david@28
   105
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/openbravo/skins/Default/smartclient
david@28
   106
david@67
   107
6) Make the following changes to:
david@68
   108
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/openbravo/skins/Default/smartclient/load_skin.js
david@67
   109
6.1) changes in the top (note see that loadStylesheets is commented out):
david@28
   110
   // must be relative to your application file or isomorphicDir
david@28
   111
 //   isc.Page.setSkinDir("[ISOMORPHIC]/skins/Enterprise/")
david@34
   112
  isc.Page.setSkinDir("[ISOMORPHIC]/../openbravo/skins/Default/smartclient/");
david@56
   113
  isc.Browser.useCSS3 = false;
david@91
   114
  isc.Browser.useSpriting = false;
david@28
   115
david@28
   116
david@28
   117
//----------------------------------------
david@28
   118
// Load skin style sheet(s)
david@28
   119
//----------------------------------------
david@28
   120
  //  isc.Page.loadStyleSheet("[SKIN]/skin_styles.css", theWindow)
david@28
   121
david@67
   122
6.2) add a ; at the end to:
david@28
   123
isc.loadSkin();
david@28
   124
david@28
   125
(needs to be reported to isomorphic).
david@28
   126
david@28
   127
martin@13
   128
Now build Openbravo.
david@28
   129
david@28
   130
david@28
   131
Final considerations: If you want to have the Smartclient source code at runtime execute
david@28
   132
the following ant task: ant source
david@28
   133
For more details, please read: http://wiki.openbravo.com/wiki/Client_Side_Development_and_API#Using_non-obfuscated_Smartclient_code