How to setup Web Service Adapter in the Progress Environment for Exact Financials Enterprise
Conventions
The following conventions will be used:
- <server> server on which the web service adapter and web service are created
- <tomcat> directory in which Apache tomcat was installed
- <appserver> name of AppServer in Progress Explorer
- <wsa> web service adapter name
- <wsm> name of *.wsm file used for deploying web services; can be found in installation folder
- <progress> directory with corresponding Progress version installed - the version used for the deployment of web services should be at least 10.2B
- default listening port for Apache Tomcat is 8080
Apache Tomcat
Install Apache Tomcat in order to run web services deployed using OpenEdge explorer. The version of Apache Tomcat that can be used depends on the minimum Java version supported by Apache Tomcat and the Java version used by Progress OpenEdge - see document 23.687.104 for details. When using Progress OpenEdge 10.2B, Tomcat 6.0 should be used. During install of Apache Tomcat you need to select the path of Java (JRE). Java is also installed with Progress Open Edge and you can select \\Progress\OpenEdge\JRE.
Update file <tomcat>\conf\tomcat-users.xml. Add two <role> tags with values PSCAdmin and PSCOper and update admin tag:
<tomcat-users>
<role rolename="tomcat"/>
<role rolename="PSCAdmin"/>
<role rolename="PSCOper"/>
<user username="admin" password="admin" roles="manager,PSCAdmin,PSCOper"/>
<user username="tomcat" password="s3cret" roles="manager-gui"/>
</tomcat-users>
Web service adapter
Run the CD installation of Exact Financials Enterprise (7.10) again to create the Web service adapter. During the creation of the WSA all WSM's which are copied to the install folder \WSA are updated with the correct <appserver> and <SoapEndPointURL>. If the Web service adapter is not created by the installation wizard you can create it manually. The URL must be: http://<tomcat server>:8080/<wsafolder>/<wsa name>.
After the Web service adapter has been created, ensure the following lines in the <tomcat>\webapps\wsaexact\web-inf\web.xml file are commented out:
<!--
<security-constraint>
<web-resource-collection>
<web-resource-name>wsaexact Admin</web-resource-name>
<url-pattern>/wsaexact/admin/*</url-pattern>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>PSCAdmin</role-name>
<role-name>PSCOper</role-name>
</auth-constraint>
<user-data-constraint>
<transport-guarantee>NONE</transport-guarantee>
</user-data-constraint>
</security-constraint>
-->
Check that the following entries are disabled in the (Progress) ubroker.properties file (f.e. in
\\Progress\OpenEdge\properties)
AdminAuth=0
WebServerAuth=0
Restart your JSE.
Open http://localhost:8080/wsa/<wsa> in your internet browser. If web service adapter was setup correctly positive response will be shown:
WSA Web Services
Status:wsa:OK:111
A state-free AppServer is needed to run the Web Services. You can use the existing AppServer or create a new AppServer:
Create a new state-free AppServer:
- Name: <appserver>.
- In AppServer properties/Broker/General tab check if port number is set to unused one and operation mode is state-free.
- Note: with a state-free appserver, it is not possible to specify Connect parameter on the Agent/Advanced features tab. But all other options should be the same as a ‘normal’ appserver.
Deploying web service
Copy <wsm> file to the <server> and update it (if you ran the installer of Exact Financials Enterprise again, this part is handled by the installer):
- Locate the tag <Service> and replace <appserver>. NOTE: The name is case-sensitive so type it exactly as it appears in the Progress Explorer.
- Locate the tag <SoapEndpointURL> and replace its value with the URL of the web service: http://<server>:8080/wsa/<wsa>.
- Save file.
Verify the wsa instance by checking the status in Progress Explorer (right-click on the WSA instance / status).
Deploy and enable web service (to update existing one you need first to disable it before updating).
There are 3 methods for deploying a web service: Progress Explorer, OpenEdge Explorer and WSAMAN utility. Third option can be used only in case <server> name does not contain numbers. The .wsm files needed for the deployment of a web service can be found in the installation directory of Exact Financials Enterprise. Open the WSA directory to see all available .wsm files.
Method 1 (via OpenEdge Explorer):
- In OpenEdge Explorer select you wsa in Web services folder and select Deploy.
- Select <wsm> file and deploy with default values.
- After deployment is finished enable web service.
Method 2 (via WSAMAN):
Use following commands:
- Deploy: <progress>\bin\wsaman.bat -name <wsa> -wsm <wsm> –deploy.
- Enable: <progress>\bin\wsaman.bat -name <wsa> -appname <appserver> –enable.
- Disable: <progress>\bin\wsaman.bat -name <wsa> -appname <appserver> –disable.
- Update: <progress>\bin\wsaman.bat -name <wsa> -wsm <wsm> –update.
Method 3 (via Progress Explorer):
- In Progress Explorer right mouse click on Web services folder and select Deploy a new web service.
- Select <wsm> file and continue deployment.
- The Deploy: Deployment Information dialog box appears, continue with default values.
- After deployment is finished enable web service.
Check status of wsa. It should contain follow values:
- WSA Administration: Enabled
- Web Services: Enabled
- WSDL Retrieval: Enabled
Now wsdl reference can be used to connect to web service from Excel.
Management of the Web Services
You can manage all deployed web services, and see which URL is used, with the following link:
http://localhost:8080/wsaexact/wsaexact/wsdl?
Installing the Excel add-in
After these steps you can use the Excel Add-in installer, available on the download page, to create the Exact Financials Enterprise option in the Add-ins tab in your Microsoft Excel software.
Notes:
Log files of Tomcat can be found in <Tomcat>\logs directory.
In case several progress versions are installed user –port parameter when deploying/updating web services from WSAMAN.
If web service was deployed successfully and has status Enabled and, but you still cannot connect to web service from Excel add-in, check appServicePort (in Status properties of wsa in Progress Explorer). To change it right-button mouse click on Web Services folder/Set Web Service Defaults/ Select appServicePort and change value.
If you want to use a WSA instance other than default "wsa1" WSA instance, then you need to modify the [WSA] and [WSA.<instance_name>] sections in the <OpenEdge directory>/properties/ubroker.properties file.
If you want to add second instance of Web Services Adapter, see solution with ID P91699 (How to setup a second instance of the Web Services Adapter?) in Progress support (http://progress.atgnow.com/esprogress/jsp/AnswerControls.jsp?directSolutionLink=1&tabs=true&docPropValue=p91699).
References to Written Documentation: OpenEdge Application Server: Administration, "Deploying and Managing Progress 4GL Web Services"
If starting and stopping Tomcat takes a long time then look up the tomcat log file (\\Program Files\ Apache Software Foundation\Tomcat x.0\logs) to search for the error. In most cases you can find a solution using the internet.
Note on security
The default installation of Exact Financials Enterprise contains a standard user called ´Exact´ with a standard password `Support`. This password should be changed since it is known by people outside your organization and can be misused to login to your database. A second remark concerning this standard user must be that a standard user like `Exact` should never have rights on webservice access. (See System: Security, Authorization, Users, Maintenance on tab Password)
Main Category: |
Attachments & notes |
Document Type: |
Support - On-line help |
Category: |
|
Security level: |
All - 0 |
Sub category: |
|
Document ID: |
24.762.489 |
Assortment: |
Exact Financials
|
Date: |
23-10-2020 |
Release: |
|
Attachment: |
|
Disclaimer |