Overview
In real-world integration projects, developers often face the challenge of not having direct access to the webMethods Integration Server’s file system. This limitation can slow down development and troubleshooting, especially when working with configuration files or UI-related assets.
To bridge this gap, we have built Backend File Editor in webMethods—a web-based utility designed to view, edit, and upload files in pub and config directory of webMethods packages. This tool empowers developers to modify properties files, update configurations, and manage UI resources without needing backend server access.
Key Features:
- Web-Based File Management – Access and modify files directly from the browser.
- Integrated Code Editor – Provides an IDE-like experience for seamless editing.
- Backup Mechanism – Every file update creates a backup to ensure safe recovery if needed.
- Supports UI Development – Helps developers manage front-end assets for utilities built in webMethods.
Tech Stack Used:
- Backend: webMethods Flow Service, Java
- Frontend: DSP Pages, HTML, CSS, JavaScript
Configuration required :
To use this utility, a few configurations need to be completed.
- Install Required Packages
The utility relies on two key packages:- HG_Utilities – Contains Java services for loading configurations and retrieving config values using keys.
- HG_DeveloperUtilities – Provides the core functionality of the utility.
You can find the GitHub links for both packages at the end of this article.
- Set Up Remote Server Connections
If you want to manage files across multiple webMethods Integration Servers from a single instance, you need to configure remote server connections.- Navigate to Integration Server Administrator → External Servers → Remote Servers
- Add remote connection aliases for each target server.
Note: The utility must be installed on all target servers where remote access is required, if you want to use in one instance then make sure your local remote server alias is working.
- Update Configuration for Remote Connections
Once the remote connections are set up, update the configuration in HG_DeveloperUtilities:- Open the HG_DeveloperUtilities.properties properties file, located in the
config
directory of HG_DeveloperUtilities package. - Update HG_DeveloperUtilities.common.servers config values with the remote connection aliases separated by comma.
- Open the HG_DeveloperUtilities.properties properties file, located in the
- Reload the Package
After updating the configuration file, reload the HG_DeveloperUtilities package to apply the changes. This ensures that the new settings are loaded into memory.
With these configurations in place, the backend file editor will be fully functional and ready to use.
Introduction to utility UI :
Top header :
- The first section of the top header includes a logo and a close window button, which allows users to close the current tab. Next to it, there is a license button that provides information about the licensing terms for using this utility.
- The second section of the header includes a server selection dropdown on the right side of the screen, allowing users to choose the server where they want to view, edit, or upload files for webMethods packages.
On the left side of the screen, there is a package selector dropdown. When a server is selected, the available packages on that server are dynamically loaded into this dropdown.
Next to the package selector, there is a “View Files” button. Clicking this button retrieves files from the
pub
andconfig
directories on the selected server and displays them in the UI.
File Management and Editing Features
The third section of the screen provides two views that display the file structures of both the pub and config directories. These directories can be navigated using the plus (+) icon to expand the hierarchy.
Directory Management :
- Each view includes a New Directory button, allowing users to create a directory within any selected parent location.
- After creating a new directory, click the View Files button to refresh and display the updated directory structure on the screen.
File Upload :
- Below the directory views, there is a File Upload functionality that enables users to upload files to any directory by selecting a parent location.
- Once a file is uploaded, clicking the View Files button will refresh the UI to display the newly uploaded files.
File Editing with Integrated Editor :
- To update a file, simply click on the file name, and it will open in an integrated editor with an IDE-like experience.
- The editor allows users to view and modify the file contents.
- Clicking the Edit button enables content modification, and users can save changes directly to the backend file system.
These features provide a seamless way to manage, upload, and edit files within the pub and config directories, ensuring efficient development and configuration updates without requiring backend system access.
Nice article. Thanks for sharing.