Web2Publish on Windows
Introduction
This guide provides step-by-step instructions for installing the Web2Publish application on Windows.
Prerequisites
- PubServer: Version 4.7.0.x
- Knowledge requirements: Basic understanding of configuring PubServer (Autodeploy, deployment packages, Eclipse ISON plugin).
Installation Steps
1. Download the Package from Priint WebFTP
Depending on your PubServer version, download the corresponding Web2Publish package.
For example, for version 4.7.0, the folder is:
https://webftp.priint.com/#/priint_suite_4.7.0/publishing%20server%20add-on%20zips/latest/
Unzip the package — it contains all files required for installation.
2. Install the Web2Publish Application (Spring Boot)
From the unzipped package, locate the JAR file (e.g., Web2Publish.4.7.x.jar).
Steps
-
Install the required Java SDK
For example, version 21 is required for Web2Publish 4.7.0. -
Copy the JAR file to a folder on your Windows server (rename if desired).
Example:
C:\PubServer\Web2Publish\w2p.jar
- Add the Spring Boot configuration file (
application.propertiesorapplication.yml) to the same directory. A sample file (application_sample.properties) is included in the unzipped package.
-
Update the following custom configurations:
Property Description Example pubserver.baseUrlBase URL of the PubServer. The public domain is required here. https://pubserver.com/pubserver.admin.service.baseUrlBase URL of the AdminAPI API. It should be {YOUR_PUBSERVER_DOMAIN}/AdminAPI/api/. In case the Web2Publish and PubServer are hosted in the same server, the internal IP address or domain is allowed.https://pubserver.com/AdminAPI/api/pubserver.w2p.service.baseUrlBase URL of the Web2Publish Service API. In case the web2publish and PubServer are hosted in the same server, the internal IP address or domain is allowed. https://pubserver.com/w2p-service/api/pubserver.w2p.appIdThe app ID configured in the PubServer AuthService for authentication. web2publishapp.pathThe application path (must be /w2p)./w2p -
Review and update the following Spring Boot configurations based on your requirements:
Property Description Example spring.servlet.multipart.max-file-sizeMaximum allowed size for a single uploaded file when handling multipart/form-data requests (used for Media Asset uploads). 20MBspring.servlet.multipart.max-request-sizeMaximum allowed size of the entire multipart HTTP request, including all files and form data. 500MBserver.portTCP port on which the Spring Boot application listens for incoming HTTP requests. 8688management.endpoints.web.exposure.includeSpecifies which Spring Boot Actuator endpoints are exposed over HTTP. Should not be changed, as this is required to display application information in PubServer Admin. health,infomanagement.endpoints.web.base-pathBase URL path under which all Spring Boot Actuator endpoints are exposed. Should not be changed, as this is required to display application information in PubServer Admin. /w2p/management.endpoints.web.path-mapping.healthCustom URL path for the Actuator health endpoint. Should not be changed, as this is required to display application health information in PubServer Admin. healthzmanagement.endpoints.web.path-mapping.infoCustom URL path for the Actuator info endpoint. Should not be changed, as this is required to display application information in PubServer Admin. infozserver.forward-headers-strategyDefines how Spring Boot processes forwarded headers (X-Forwarded-*, Forwarded) when running behind a reverse proxy or load balancer. Should not be changed, as this setting is required by the framework to correctly resolve the original request scheme, host, and port. framework
- Create a Windows Service to run the application
Open PowerShell as Administrator and run the following commands:
# Define paths
$jarPath = "C:\PubServer\Web2Publish\w2p.jar"
$configPath = "C:\PubServer\Web2Publish\application.properties"
$serviceName = "Web2Publish"
# Create a service using NSSM (recommended) or sc.exe
# Using NSSM (https://nssm.cc/)
nssm install $serviceName "C:\Program Files\Java\jdk-21\bin\java.exe" " -jar $jarPath -Dspring.config.location=file:///$configPath"
nssm start $serviceName
# Check status
nssm status $serviceName
Note: You can also use
sc.exeto create a service, but NSSM is preferred for Java applications on Windows.
- Configure SSL
The application must always be configured with SSL to ensure secure communication.
There are two supported deployment approaches:
a. Recommended Approach: Using a Reverse Proxy
Using a reverse proxy is the standard and recommended deployment model.
In this setup:
- SSL is terminated and managed at the reverse proxy layer
- The application runs behind the proxy over internal HTTP
- Certificate management is centralized and simplified
- Security, scalability, and operational control are improved
Follow the next step (Configure Reverse Proxy) to configure SSL with a reverse proxy.
b. Alternative Approach (Not Recommended): Without Reverse Proxy
If you cannot use a reverse proxy due to infrastructure constraints, you may run the application without it.
However, this approach is not recommended for production environments, because:
- SSL must be managed directly in the application
- Certificate handling becomes more complex
- Less flexibility for scaling and routing
If you still need this setup, follow this guide: Setup without Reverse Proxy
- Configure the Reverse Proxy
Refer to this guideline to determine whether a reverse proxy needs to be configured for your environment.
3. Install the Web2Publish Service (PubServer Plugin)
In order for the application to work properly, install the Web2Publish Service.
You can find it in the unzipped package as a WAR file, for example:
Web2Publish-4.7.0.x.war
Because it’s a PubServer plugin:
- Install via the Payara Admin Console, or
- Copy to the PubServer
autodeployfolder.
Note: The context root should be
w2p-service.
Updatepubserver.w2p.service.baseUrlin Spring Boot if changed.
4. Update the PubServer AuthService Configuration
- Locate:
C:\PubServer\Glassfish\payara6\domains\pubserver\config\AuthService\config.xml
- Add a new application entry:
<authService>
<apps>
<app name="priint:w2p" id="web2publish" visible="true">
<uri>[W2P_HOME_PAGE]/auth/callback?sessionId={sessionId}</uri>
<sessionCookieName>web2PublishSessionId</sessionCookieName>
</app>
</apps>
</authService>
Note: Please replace
[DATA-W2P_HOME_PAGE]with your server information, such as:https://priintsuite.com/w2p
- If the file does not exist, follow this guide to create it.
5. Add and Update the ISON Configuration File
All features of the Web2Publish application are configurable through an ISON configuration file, which can be managed in PubServer using the ISON plugin.
Please refer to the sample file and the full explanation of all configuration options here: Sample Configuration
Then, update the configuration according to your specific requirements.
If you encounter any issues during setup, please contact our support team at support@priint.com.