Repository Web Explorer is a browser interface for JCR compliant in general and ModeShape in particular repositories. Repository Web Explorer provides the bulk of functionality for browsing and managing repositories.
Here are some of the additional features of Repository Web Explorer:
- Browse repository nodes
- Add/Remove/Edit nodes
- Manage node types
- Edit node properties
- View/Download/Upload binary content
- Backup/Restore repositories
- Execute queries
The only requirements is a compliant servlet container. The specific of that depend on what is a container and repository.
Web explorer is a regular Java web application and it allows configuration via context parameters specified in web.xml. The cooperation between browser and repositories is archived through Connector interface. Connector interface exposes repositories and some additional administrative functions. The detailed view of this interface is as follows:
Reference to the concrete implementation can be specified in the web.xml using context-parameter element
Repository explorer ships with two Connectors developed for ModeShape repositories: the first connector allows the Explorer to access repositories bound in JNDI (this connector is used when ModeShape is deployed as subsystem inside the WildFly application server) and second starts & accesses a ModeShape repository from regular JSON configuration file.
To be able access repositories deployed in a container & bound in JNDI, use the following configuration:
To be able to deploy web explorer with a standalone repository specified by a JSON configuration file use the following configuration:
The value of path-to-json-config must be path resolvable by the ClassLoader of the web application in which the org.modeshape.web.server.impl.JsonConfigConnectorImpl class resides.
There are 2 ways in which the Web Explorer web application can be used:
- inside the JBoss Application Server together with the ModeShape subsystem
- standalone by customizing it and adding your own configuration
By default the ModeShape JBoss Application Server kit comes prepackaged with the Repository Explorer web application. This is in turn is configured to use the JNDI Connector (see above) and accesses all the ModeShape repositories defined via the ModeShape subsystem. The only configuration element required to enable the Explorer is:
Once this element is present, you can access the application by default at: http://localhost:8080/modeshape-explorer.
If you're not using the JBoss Application Server kit & configuration, you have the option of embedding the Repository Explorer in your own application. However, this requires some additional configuration steps normally added to your build system (for exemplification, we'll assume this build system is Maven):
- make sure you have a module which produces a WAR artifact
- add a dependency on the org.modeshape:modeshape-web-explorer:jar artifact
- add a src/main/webapp/WEB-INF/web.xml file which contains your own configuration parameters & connectors (see above). For example, if you have an embedded repository configuration, add this configuration to src/main/resources/repo-config.json file and then add the following fragment to the web.xml configuration file:
As an alternative to step 2 from above, you can use the org.modeshape:modeshape-web-explorer-war:war artifact which comes prepackaged with a Demo (empty) embedded repository. You can then use Maven's WAR overlaying feature to add your own custom configuration.
|By default the Repository Web Explorer is configured to use the JNDI connector and expects a ModeShape Engine instance bound in JNDI under java:/jcr. When embedding it in your own application you should always overwrite this behavior and add your own custom web.xml configuration.|
Web Explorer contains five main tabs, each of which provides management page for a aspect of the repository:
- Explore The "Explore" page on controls content of the repository. Using this page user is able to browse content, add, remove or edit node. Change properties of the node, etc;
- Node Types The "Node Types" page on provides web-based management interface for node types management functions;
- Descriptor The "Descriptor" page on shows repository parameters;
- Query "Query" page on allows user execute query;
- Admin "Admin" page on provides access to the administrative functions and metrics.
Explore tab displays repository contents. Using this tab user can browse nodes, add new nodes, rename or delete node. Explore tab includes additional tabs:
- Children tab which displays child nodes of the selected node;
- Properties tab displays node properties
- Access list tabs displays access rights of the selected node.
Node types page displays all registered node types.
Descriptor page display repository parameters
Query page provides interface to the query engine. This page contains query editor and query language select and table which displays result.