Resource file manager
The resource file manager allows you to add files to your solution. These files can then be programmatically accessed and used by your solution.
To add files, navigate to 'File Resources' from the solution dashboard. While in File Resources, click on the plus icon to create a new file resource. Drag and drop the relevant file to your solution and click 'Save'. If you want to be able to access the file programmatically in your solution, make sure you change the published location path to
/script_lib before you save it. After you have updated the published location, give the file a name and click on 'Save'.
Only files added to /script_lib can be programmatically accessed by your solution. For an example, see How to add and use files.
Files in a solution are not shared by other solutions; they only exist in the solution they were added to. When the solution is published, it includes all the uploaded files.
You can see the properties of a file in the resource file manager. On the table you will see the details like the size, the name, and whom it was last modified by.
To edit the file's name or its folder, choose the file from the list and the field will now become editable. After you modify it, make sure you hit save.
To delete one or more files, select the bin icon to the right of the file name. This becomes visible when you hover over the file. You will get a prompt asking you if you really want to delete the file(s).
You can add any file to a solution, but some of them are treated specially.
Images like .png, .jpg, and .gif are stored in the /images folder by default. Once the solution is published, the images can be retrieved by appending /images/[imagename].[extension] to the engine URL.
You can add groovy classes by storing the class as a .groovy file with the name of the class. When added to Teneo, the files' path should be set to
/script_lib. Once saved, you can call the class from anywhere in the solution. (You don't have to compile the class; it will be compiled when the solution is loaded into memory).
If the scripts in your solution need to use classes that are made available in .jar files, you can add these to the resource file manager as well. Once saved, their classes can be used anywhere in the solution. Jar files are stored in the
/script_lib folder by default.
Java Server Pages are stored in the /views folder by default. These files can be used to format the Teneo engine response. They can be used by using the url parameter viewtype with the name of your jsp without the extension in requests to engine, like so:
Java Server Pages can make use of the Teneo engine scripting API. More details here: API's for use in JSP's.
This is a list of best practices when working with Resource files:
- Do not include any of the libraries exposed to scripts to a solution.
- Especially do not add a Java library dependency that includes Groovy.
- Check if the included Java and Groovy libraries can fulfill your requirements.
- If you really, really need them, we would recommend building your script as static Java classes in your own JAR library, and use the maven shade plugin to relocate them during building to avoid any potential issues.
- Overall, you should really analyze what you need when adding JAR resources.