Feedback
Did this article resolve your question/issue?

   

Article

How to enable Swagger for PASOE instance

« Go Back

Information

 
TitleHow to enable Swagger for PASOE instance
URL NameHow-to-enable-Swagger-for-PASOE-instance
Article Number000112573
EnvironmentProduct: OpenEdge
Version: 11.7.4 and 12.x
OS: All supported platforms
Other: PASOE, Swagger
Question/Problem Description
Allowing Swagger on PASOE instance
How to enable Swagger for a PASOE instance
How to resolve Web Browser permission errors when accessing the oemanager: http://localhost:8890/oemanager -u tomcat
Steps to Reproduce
Clarifying Information
The OpenEdge Service Pack 11.7.4: New Information has a section regarding Swagger:
Manage and monitor an instance, Use Swagger UI to explore management REST APIs
This document can be found in the Product Alert: 000092839, OpenEdge Service Pack 11.7.4 Is Now Available  
Error MessageWebBrowser error:

403 forbidden
Access Denied.
Defect/Enhancement Number
Cause
For Web Browser permission errors. 
Possible cause:
Missing trailing backslash "/" at the end of the URL: http://<servername>:8890/oemanager/

 
Resolution

To enable Swagger for a PASOE instance:

1. Open a PROENV shell and navigate to the working directory.

2. Create a PASOE instance:
$   pasman create -f -p 8890 -P 8891 -s 8892 -m tomcat:tomcat -N Test <workingdirectory>/Test

Note: If running in a production server the -f will not copy the war files to the instance directory because there are no war files in $CATALINA_HOME.
Use tcman deploy command instead, war files will be copied to the instance directory properly.

3. Start the PASOE instance in order to have the oemanager directory properly created in \<workingdirectory>\<instancenamedirectory>\webapps
 
$   pasman pasoestart restart -I Test

4. Navigate to the PASOE new instance directory: \<workingdirectory>\<instancenamedirectory>\webapps\oemanager\WEB-INF
 
a. Edit the file oemgrSecurity-container.xml,
b. Uncomment the following line (around line 35):
 
<!-- Access to SwaggerUI. Disabled by default, user has to uncomment the below line to enable it -->                       
<intercept-url pattern="/doc/**" method="GET" access="hasAnyRole('ROLE_PSCAdmin','ROLE_PSCOper','ROLE_PSCUser')"/>



5. Navigate back to the working directory and then restart the PASOE instance to apply changes
 
$   pasman pasoestart -restart -I Test
 

6. Open a web browser and type:
 
http://<servername>:8890/oemanager/
  • Ensure the URL has trailing backslash / at the end.
7. User and Password (tomcat/tomcat)

8. Swagger page should be loaded. If not, please verify the steps above and then stop and restart the PASOE instance, with the OpenEdge Explorer Console or tcman stop/start.

For more details about how to access/use Swagger UI please review the following information at Progress Hub:
Progress Information Hub -> Manage Progress Application Server (PAS) for OpenEdge - > Monitor PAS for OpenEdge instances -> Use Swagger UI to explore management REST APIs -> Enable Swagger UI for management REST API access:
https://docs.progress.com/bundle/pas-for-openedge-admin/page/Enable-Swagger-UI-for-management-REST-API-access.html
 
Workaround
Notes
References to Other Documentation:

Progress Information Hub -> Manage Progress Application Server (PAS) for OpenEdge - > Monitor PAS for OpenEdge instances -> Use Swagger UI to explore management REST APIs -> Enable Swagger UI for management REST API access:
https://docs.progress.com/bundle/pas-for-openedge-admin/page/Enable-Swagger-UI-for-management-REST-API-access.html

Progress Article:

000093191, Swagger on PASOE: Does work with any .war REST services  
 
Last Modified Date5/11/2020 7:30 PM
Attachment 
Files
Disclaimer The origins of the information on this site may be internal or external to Progress Software Corporation (“Progress”). Progress Software Corporation makes all reasonable efforts to verify this information. However, the information provided is for your information only. Progress Software Corporation makes no explicit or implied claims to the validity of this information.

Any sample code provided on this site is not supported under any Progress support program or service. The sample code is provided on an "AS IS" basis. Progress makes no warranties, express or implied, and disclaims all implied warranties including, without limitation, the implied warranties of merchantability or of fitness for a particular purpose. The entire risk arising out of the use or performance of the sample code is borne by the user. In no event shall Progress, its employees, or anyone else involved in the creation, production, or delivery of the code be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or other pecuniary loss) arising out of the use of or inability to use the sample code, even if Progress has been advised of the possibility of such damages.