What's New in Intershop Studio 4.3.5


1 Introduction

This release is focusses on a huge clean-up "underneath the hood".
In addition, Intershop Studio supports Intershop's new localization concept as well as validation to prevent XSS and a provides new EDL2 code app.

2 User Intervention
Required!

2.1 Reworked Internal Structure and JRE Upgrade Require User Intervention

In Intershop Studio 4.3.5 comes with some major changes in the internal structure:

  • The bundled JRE that is used for code of Intershop Studio itself was upgraded to JRE 8.
  • The feature and plug-ins of Intershop Studio were subject to some comprehensive clean-up.

Although these changes are largely internal, there are some implications for the user due to this:

  1. No online update is available from older versions to 4.3.5 or later.
    Download and unzip a release archive instead. This does not affect the update capability of 4.3.5 to later releases.
  2. Some workspace migration is required.
    When using a previous workspace with 4.3.5 some views and preferences might be missing when opening the workspace for the first time after the update.
    To fix this either:
    • Create a fresh workspace.
      1. Create it, set your preferences and import your projects, or
    • Fix the existing workspace:
      1. Close all views/editors (Cartridges Explorer etc) and re-open them.
      2. Go to preferences and check if anything needs to be set.
      3. Delete and re-import your projects.
  3. All application IDs have changed (the enfinity and emf parts were removed).
    E.g., com.intershop.enfinity.studio.core.BeehiveElementValidator is now com.intershop.studio.core.BeehiveElementValidator.
    Adapt all application calls, if necessary!

3 Localization of
Intershop Software

3.1 Externalize Texts Wizard

Texts that appear in user interfaces must be localizable.

Versions prior to Intershop 7.4 CI supported multiple approaches for ISML template localization.

Due to technical progress - especially the use of Gradle for continiuos integration environments - it is necessary to unify these approaches.

Thus, Intershop strongly recommends to externalize all texts from ISML templates to properties files.

Please see Guide - 7.4.6 Externalize Texts from ISML Templates for more detailed information on how Intershop Studio supports this tasks.

3.2 Hyperlinking for Localization Text

Keys in localization files now provide hyperlinking support.

If the hyperlink is activated, usages of this localization (e.g., in templates of web forms) are provided as link targets.

The image shows the link from test.properties to the using <istext> statement.

Note

 The key attribute in the ISML file provides a link to the properties file as well.

3.3 Activate Hyperlinking for Properties Files

4 Validation Prevents
XSS Vulnerability

4.1 Validation Warns About Possible Cross-Site-Scripting Vulnerability

ISML templates will now be validated in order to detect possible Cross-Site-Scripting vulnerability.

Fixing such errors is easy since Qucik-Fixes are available:

This validation type can be configured in preferences.

5 EDL2
Code Application

5.1 EDL2Code Application

An application is available that generates code from EDL models.

Its ID is com.intershop.studio.edl.generator.EDL2Code.

This allows to create code from EDL models via the commandline or during the cartridge build process.

Invoke the application with -help or no arguments to get parameter help and a brief description:

Generates code for EDL models.
This application accepts following parameters:
----------------------------------------------
-isproperties_location: Required parameter if gradleproperties_location is not used. Specify the location of the intershop.properties file. Typically, this file can be found in the root directory of the Enfinity Suite installation. Allong with other entries it must contain entries specifying the location of the cartridge source directory.
-help: Use this parameter to request help. Actually you don't need this explanation, it seems you already found out.
-cartridge: Required parameter. Specify the cartridge id of the cartridge to be processed. This parameter accepts multiple values.
-enfinity_version: Specify the version of the Enfinity Suite Server. Version identifiers must be integers separated by DOT. If ommited version 7.5 is used as default.
-javaTarget: the java target folder (relative to the cartridge folder). Default is 'javasource'. Regardless of this parameter java files get merged with their existing files in the javasource folder.
-no_project_import: In order to run this application cartridge source projects are needed. If the workspace does not contain the expected cartridge project it gets generated in the workspace. If this parameter is set, no projects get generated.
-gradleproperties_location: Required parameter if isproperties_location is not used. Specify the location of the gradle.properties file. Typically, this file can be found in the gradle directory of the Enfinity Suite installation.
-no_progress: Long running operations notify progress. If this parameter is passed to the application no progress is printed to the console. This parameter does not expect any values.
 
Examples:
---------
EnfinityStudio -application com.intershop.studio.edl.generator.EDL2Code -data generation_workspace -isproperties_location C:/eserver2/intershop.properties -cartridge test_a test_b: Invokes the EDL2Code generator on all EDL models in cartridges 'test_a' and 'test_b'.
EnfinityStudio -application com.intershop.studio.edl.generator.EDL2Code -data generation_workspace -isproperties_location C:/eserver2/intershop.properties -javaTarget src-gen -cartridge test_a: Invokes the EDL2Code generator on all EDL models in cartridges 'test_a'. The generated code will be located in the folder 'src-gen' instead of 'java_source'.

Note

The code generator application com.intershop.studio.mda.generator.BOMGenerator is still available as well.

It also provides the ability to validate the models. But this already covered with the much more powerful application com.intershop.studio.core.BeehiveElementValidator.

 

 

Disclaimer

The information provided in the Knowledge Base may not be applicable to all systems and situations. Intershop Communications will not be liable to any party for any direct or indirect damages resulting from the use of the Customer Support section of the Intershop Corporate Web site, including, without limitation, any lost profits, business interruption, loss of programs or other data on your information handling system.

Customer Support
Knowledge Base
Product Resources
Support Tickets