Tutorials


Table of Contents

Tutorial 1: Deploying your PowerServer project to remote servers
Overview
Task 1: Preparing the environment
Setting up the client machine
Setting up the database server
Setting up the development PC
Setting up the auth server
Setting up the web server
Task 2: Deploying the PowerServer project to remote servers
Creating a server profile for remote deployment
Modifying the PowerServer project
Deploying the project
(Optional) Hosting the client app separately
(Optional) Hosting the Web APIs separately
Tutorial 2: Connecting to the Database
Overview
Accessing the Database Configuration dialog
About the database driver
Connecting with the DB2 database
Installing DB2 driver
Creating a cache
Mapping the transaction object
Connecting with the Informix database
Installing Informix driver
Creating a cache
Mapping the transaction object
Connecting with the MySQL database
Installing MySQL driver
Creating a cache
Mapping the transaction object
Connecting with the Oracle database
Installing Oracle driver
Creating a cache
Connection types in Oracle
Mapping the transaction object
Connecting with the PostgreSQL database
Creating a cache
Mapping the transaction object
Connecting with the SQL Anywhere database
Starting the SQL Anywhere database
Configuring ODBC for SQL Anywhere
Creating a cache
Mapping the transaction object
Connecting with the SQL Server database
Selecting a proper authentication mode when configuring SQL Server connection
Configuring the SQL Server database server
Creating a cache
Connecting to Azure SQL
Mapping the transaction object
Connecting with the Adaptive Server Enterprise database
Configuring ODBC for ASE
Creating a cache
Mapping the transaction object
Troubleshooting
Unable to connect to remote SQL Server database over Named Pipes even though local database can be connected
Using the PostgreSQL CA certificate for SSL connection, the verification fails
Communication error when connecting with the Informix database
Tutorial 3: Hosting Web APIs in Kestrel
About PowerServer Web APIs and Kestrel
Hosting environment: Development
Hosting environment: Production
Running Web APIs with Kestrel
(Optional) Configuring a reverse proxy server
Tutorial 4: Hosting Web APIs in IIS (in-process hosting)
In-process hosting vs. out-of-process hosting
Preparations
Installing IIS
Creating an IIS website
Configuring IIS
Configuring SSL on IIS
Installing Web Deploy
Troubleshooting tips for Web Deploy
Installing ASP.NET Core Hosting Bundle
Deploying Web APIs to IIS
Automatic deploy
Manual deploy
Verifying the Web APIs
Tutorial 5: Hosting Web APIs in Docker Containers
Overview
Task 1: Setting up Docker
Setting up a docker host (Docker Engine)
Setting up a docker registry
Task 2: Setting up the database server
Preparations
Starting the database
Task 3: Publishing to Docker
Preparing the development PC
Modifying and re-deploying the PowerServer project
Publishing Web APIs to Docker
Specifying the Web API URL
Tutorial 6: Deploying installable cloud apps to Kubernetes
Overview
Before you begin
Configuring Azure Kubernetes Service
Creating a Kubernetes cluster in AKS
Connecting to the Kubernetes cluster
Installing ingress controller
Logging into Azure container registry
Creating a database
Containerizing the installable cloud app
Preparing the application
Creating the container images
Pushing images to Azure container registry
Deploying the application to the Kubernetes cluster
Creating the YAML manifest files
Deploying the application
Configuring the domain name
Testing the application
Tutorial 7: Publishing PowerServer Projects to Azure App Service
Prerequisites
Deployment Architecture
Steps Summary
Cloud Database
Creating the Database Resource
Configuring the Database
Dumping the Database
Restoring the Database
Web APIs
Creating the App Service
Configuring the PowerServer project
Manual Deployment
Direct Deployment (Visual Studio)
Cloud App
With Static Web App
With Azure Storage
Troubleshooting
no pg_hba.conf entry for host
Workflow deployment fails with "Failed to find a default file in the app artifacts folder (/). Valid default files: index.html,Index.html." error
Tutorial 8: Publishing PowerServer Projects to Azure Container Instances
Prerequisites
Overview
Deployment Architecture
Creating an Azure Container Registry
Preparing the PowerServer Project
Containerizing and Deploying Web API
Pushing the container to the Azure Container Repository
Creating the Container Instance
Updating the Web API URL on the PowerServer project
Publishing the Cloud App Installer
Using Nginx Container
Using IIS Container
Creating a home page
Tagging and pushing the image
Creating the container instance
Appendix
Customizing the Containers' URLs
Troubleshooting
Cannot push image to Azure Container Registry
Tutorial 9: Hosting the client app in a file server
Overview
Hosting the client app in IIS
Preparations
Installing Web Server (IIS)
Configuring SSL on IIS
Packaging and copying the client app
Hosting the client app in Apache on Windows
Preparations
Installing Apache HTTP Server
Configuring SSL on Apache
Packaging and copying the client app
Hosting the client app in Apache on Linux
Preparations
Installing Apache HTTP Server
Configuring SSL on Apache
Configuring Apache to be case-insensitive
Packaging and copying the client app
Hosting the client app in Nginx on Windows
Preparations
Installing Nginx
Configuring SSL on Nginx
Packaging and copying the client app
Hosting the client app in Nginx on Linux
Preparations
Installing Nginx
Configuring SSL on Nginx
Configuring Nginx to be case-insensitive
Packaging and copying the client app
Tutorial 10: Load-balancing PowerServer Web APIs
Overview
Configuring Nginx as a load balancer
Using Nginx Sticky Module
Using Nginx Plus
Using IP hash load-balancing
Configuring IIS as a load balancer
Configuring Apache as a load balancer
Tutorial 11: Authenticating your apps
Overview
Using JWT
Preparations
Modifying the PowerBuilder client app
Appendix
Using Amazon Cognito
Preparations
Creating the Amazon Cognito user pool
Modifying the PowerBuilder client app
Modifying the authentication template
(Optional) Testing the Cognito server
Using Azure Active Directory service
Azure Active Directory (AD)
Azure Active Directory (AD) B2C
Using other authentication servers
Using Okta OIDC (OpenID Connect)
Using Visual Guard
Tutorial 12: Building your PowerServer project with commands
Task 1: Exporting the build file
Preparing the environment
Creating a launcher package
Exporting the build file
Modifying the build file
Task 2: Building with commands
Preparing the environment
Running the command-line tool
Integrating with Jenkins
Tutorial 13: Packaging & Distributing Installable Cloud Apps (for ISVs)
Verifying system requirements
(Optional) Configuring database connections
(Optional) Customizing app launcher and app entry page
Packaging the installable cloud app
Installing the installable cloud app
Configuring the app on server
Configuring the Web API URL
Changing the INI file etc.
Verifying the app
Configuring the Web APIs on server
Configuring the database connection
Importing the PowerServer license
Configuring the email settings
(Optional) Hosting the client app separately
Running the installable cloud app
Running the installable cloud app
Uninstalling the client app
Tutorial 14: Load testing installable cloud apps
Load testing installable cloud apps with LoadRunner
Dynamic Values in the Recorded Script
Enclosing parameters in angle brackets “<>”
Running the application in test mode before recording the script
Changing the compression method to Gzip
Recording
Correlating the Session ID
Correlating the Transaction ID
Parameterizing static values in SQLs
Replaying
Load testing installable cloud apps with JMeter
Overview
Preparing the installable cloud application
Parameterization and correlation
Recording JMeter scripts
Tutorial 15: Applying a production license to an existing PowerServer project
Accessing the production license code (Order Owner only)
Importing the production license into the project
After compilation
Before compilation
Activating the license
Tutorial 16: Setting up an FTP server
Preparations
Enabling the FTP service
Creating an FTP site
Configuring SSL on FTP server
Uploading the application via FTP client