This should only be used if the server in which to install XWiki has no network access, and no other means to install the user interface is available.

Prerequisites

  • a staging / development server which has access to the internet, to collect the necessary resources from there 
  • a minimal development environment on the staging server including the mvn tool, as if you want to build XWiki from Source
  • a way to copy the resources from the staging to the production server 
  • write access to the xwiki.properties on the server

Download the UI resources

First make sure that you have the right settings.xml on the staging server, which has the XWiki repositories enabled.
You also might want to move away your current $HOME/.m2/repository temporarily to mimimize the amount of files to be transferred to production later.

Create an empty directory and place the following file as pom.xml in it:

 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
 <modelVersion>4.0.0</modelVersion>
 <parent>
   <groupId>org.xwiki.commons</groupId>
   <artifactId>xwiki-commons-pom</artifactId>
   <version>7.4</version>
 </parent>
 <groupId>never-mind</groupId>
 <artifactId>never-mind</artifactId>
 <version>0.0</version>
 <name>dummy download package</name>
 <packaging>pom</packaging>
 <dependencies>
   <dependency>
     <groupId>org.xwiki.enterprise</groupId>
     <artifactId>xwiki-enterprise-ui-mainwiki</artifactId>
     <version>7.4</version>
     <type>xar</type>
   </dependency>
 </dependencies>
</project>

Make sure to update the version numbers (here 7.4) in both the <parent> and the <dependencies>.

Open a command line, change to the directory created in the previous step and issue the command:

mvn clean org.apache.maven.plugins:maven-dependency-plugin:go-offline

This should download all the required resources and dependencies.

Install the resources on the server

As the next step, copy the complete /.m2/repository to a directory on the production server where the user running the XWiki webapp can read it.
(TODO: figure out if only parts of the directory are sufficient, i.e. /.m2/repository/org/xwiki)

Configure in the xwiki.properties the destination directory on the server as the "main xwiki" repository:

extension.repositories=maven-xwiki:maven:file:/path/to/copy/of/the/.m2/repository

Restart the server (if already running), remove/move away the "permanent directory" (wherever the property ${environment.permanentDirectory} points to) - just in case it remembers previous failed install attempt (when upgrading, better only move aside ${environment.permanentDirectory}/jobs )  - and access XWiki via the browser to see if the distribution wizard comes up again.

This time it should find the necessary files from the local repository and install the UI.

Tags:
   

Get Connected