| SUMMARY: |
Webpb consists of different components, web server, client browser and application server and it can be difficult to pinpoint the source of an error. The following are tips and suggestions for troubleshooting your Webpb application. |
| Document ID: |
47780 |
Last Revised: |
04/09/98 |
| Topic: |
Internet, Troubleshooting |
Document Type: |
Tip |
| Product: |
PowerBuilder |
Version: |
6.0; 5 |
| Platform: |
PC |
Operating System: |
MacOS, UNIX, Windows 95, Windows NT |
Document:
Troubleshooting A WebPB Application
Webpb consists of different components, web server, client browser and application server and it can be difficult to pinpoint the
source of an error. The following are tips and suggestions for troubleshooting your Webpb application.
Use the Trace Option
The trace option is useful because it will show the following:
1. If the application server is listening
2. A call from a client processed successfully or unsuccessfully
3. Provides information that is helpful for infobase searches
The syntax for the console trace is:
Mytransport.Trace="Level=1"
To output the trace to a file use:
ytransport.Trace="Log='c:\mytrace.txt',all=1"
Use a Thread-Safe Database Driver:
he smi 40 and smi 209 errors which appear in the trace point to thread-safe errors. Sybase Open Client 11.1 is a thread-safe driver. Remember to open one database connection before the transport listen. Other thread-safe drivers are SQL Anywhere using ODBC, Informix 7.2 and Oracle 7.3. Use the dbparm threadsafe=yes with Oracle.
Take Webpb out of the picture:
all the Remote Object function from a Powerbuilder client application or add a command button to the application server. You can display the output to a messsagebox or multi-line edit. The advantage is you bypass the web server and server protocol and are testing just the code of the Remote Object.
Stress Test Your Application:
Use the meta tag to call the url and reload the page. Its particularly helpful when using several browsers.
The syntax looks like:
<META HTTP-EQUIV=REFRESH CONTENT="1:URL=/cgi-shl/pbcgi60.exe/PBDemo/uo_demo/f_test">
Server Connection Errors
Here is a checklist to help you avoid getting a server error:
1. Bypass the host and services file by hardcoding the ip address and port number for the location and application properties in the .pbweb.ini and application server. The hosts or services file could be corrupted. The services file should have at least two carriage returns after the last entry in the file.
2. Compare the transport object properties of your application server to the server section in the pbweb.ini. The application and driver properties should match. The application name should match to the entry in the services file.
3. If you are using the Options=RawData=1 as a property in the application server, this option should also be set in the pbweb.ini file.
4. Review the url that is calling Webpb. You will need the same server section name in the pbweb.ini that is in the url. Also9
7
3
1
2
4
8
:
verify that the remote object and function listed in the url are the same names and exist in the application server.
For example:
URL:
//cgi-shl/pbcgi60.exe/pbdemo/uo_demo/f_test
PBWeb.ini
[pbdemo]
application="MYAPP"
location="localhost"
driver="Winsock"
Services File:
MYAPP 12050/tcp
Host File:
127.0.0.1 localhost
PB Application
Mytransport.application="MYAPP"
Mytransport.location="."
Mytransport.driver="Winsock"
5. Create pbd's or dll's when creating an executable.
6. Verify that the pbweb.ini file is in the c:\windows or c:\winnt directory on the web server machine. This is how Webpb finds the application server.
Related Faxlines:
1. 47751 - Using Environmental Variables With WebPB
2. 44565 - Developing a simple WebPB application
9
7
3
1
2
4
8
: