![]() ![]() ![]() ![]() ![]() ![]() |
This section contains the following topics:
Each GWWS
server automatically generates a WSDL document for each deployed inbound native WSDF. The WSDL document can be downloaded from any of the HTTP/S listening endpoints via HTTP GET.
Use the following URL to browse the WSDL document:
“http(s)://<host>:<port>/wsdl[? [id=<wsdf_name>] [&mappolicy=<pack|raw|mtom>] [&toolkit=<wls|axis>]]”
Table 3-1 lists all WSDL document download options.
Note: | The WSDL download URL supported by BEA SALT 2.0 is different from BEA SALT 1.1. In BEA SALT 1.1 release, one GWWS server adaptively supports both RPC/encoded and document/literal message style, both SOAP 1.1 and SOAP 1.2 version, from a given configuration file. In BEA SALT 2.0 release, each WSDF file associated with the GWWS server must be pre-combined with a certain SOAP version and a certain SOAP message style. So the following WSDL download options for SALT 1.1 GWWS server are deprecated in this release. |
The GWWS server is a high performance gateway used between external Web Service application and the Tuxedo application. It uses a thread-pool working model to improve performance in a multi-processor server environment. The GWWS server also provides options to control runtime behavior by setting the <WSGateway
> element property values in the BEA SALT configuration file. The following topics list deployment considerations based on different scenarios. For more information, see
Configuring the GWWS Servers.
The default thread pool size is 16, but in some cases this may not be enough to handle high volume loads. It is recommended to conduct a typical usage analysis in order to better estimate the proper size requirement. Usually, if the concurrent client number is large (for example, more than 500), it is suggested that you deploy the GWWS gateway on a server with at least a 4-way processor and set the thread pool size to 64.
BEA SALT provides a network timeout tuning parameter in the configuration file. The default timeout value is 300 seconds.The value can be adjusted to reduce timeout errors.
BEA SALT administrators may want to limit the buffer size sent from a client. SALT supports this by using a property value that can be set for particular GWWS instances. By default there is no limit.
The default backlog socket listen value is 20. On some systems, such as Windows, 20 may not meet heavy load requirements. The client connection is rejected during TCP handshake.
The recommended value for Windows is based on the max concurrent TCP connections you may encounter. For example, if 80 is the peak point, you may configure the max_backlog
property value to 60 in the SALT configuration file.
Note: | The default backlog value is adequate for most systems. You do not need to tune it unless you experience client connection problems during heavy loads. |
WARNING: | A large backlog value may increase syn-blood attack risk. |
A network receive timeout property is provided in the SALT configuration file. Web service applications are also impacted by the Tuxedo BLOCKTIME parameter. Blocktime accounting begins when a message is transformed from XML to a typed buffer and delivered to the Tuxedo framework.
If no reply is received for a particular Web service client within the BLOCKTIME time frame, the GWWS server sends a SOAP fault message to the client and terminates the connection. If the GWWS server receives a delayed reply, it drops this message because the client has been disconnected.
BLOCKTIME is defined in the
UBBCONFIG file *RESOURCE
section.
If one GWWS
instance is bottlenecked due to network congestion, low CPU resources and so on, multiple GWWS
instances can be deployed with the same Web Service binding on distributed Tuxedo nodes.
Note: | Even though multiple GWWS instances can provide the same logic functionality, from a client perspective, they are different Web service endpoints with different HTTP/S listen ports and addresses. |
The GWWS server supports Tuxedo TMTRACE functionality (used to dynamically trace messages). All trace points are logged in the ULOG file. Checking the ULOG file trace information helps to evaluate GWWS server SOAP message problems. GWWS server message tracing behavior is set using the TMTRACE environment variable, or by using the tmadmin chtr sub-command command.
The reserved trace category, msg, is used to trace BEA SALT messages. It can be used together with other general trace categories. For example, if trace category “atmi+msg” is specified, both BEA SALT and Tuxedo ATMI trace messages are logged.
Notes: | Message tracing is recommended for diagnostic treatment only. |
Note: | The following trigger specifications are not recommended for GWWS servers: |
Note: | abort, system, sleep |
Note: | In any of these trigger specifications are used, GWWS servers may be unexpectedly terminated. |
For more tmtrace and trace specification information, see tmtrace(5) in the File Formats, Data Descriptions, MIBs, and System Processes Reference.
TMTRACE specification examples for BEA SALT message tracing are shown below:
Listing 3-1 shows a ULOG file example containing BEA SALT tracing messages.
183632.BOX1!GWWS.4612.4540.0: TRACE:ms:A HTTP message is received, SCO index=1023
183632. BOX1!GWWS.4612.4540.0: TRACE:ms:A SOAP message is received, SCO index=1023
183632. BOX1!GWWS.4612.4540.0: TRACE:ms:Begin data transformation of request message, buffer type = STRING, SCO index=1023
183632. BOX1!GWWS.4612.4540.0: TRACE:ms:End of data transformation of request message, buffer type = STRING, SCO index=1023
183632. BOX1!GWWS.4612.840.0: TRACE:ms:Delivering a message to Tuxedo, service name =TOUPPER, SCO index=1023
183632. BOX1!GWWS.4612.840.0: TRACE:ms:Got a message from Tuxedo, SCO index=1023
183632. BOX1!GWWS.4612.4540.0: TRACE:ms:Begin data transformation of reply message, buffer type = STRING, SCO index=1023
183632. BOX1!GWWS.4612.4540.0: TRACE:ms:End of data transformation of reply message, buffer type = STRING, SCO index=1023
183632. BOX1!GWWS.4612.4540.0: TRACE:ms:Send a http message to net, SCO index=1023
A more complex log is generated by TMTRACE=msg:ulog, used in WS-ReliableMessaging communication. All the application and infrastructure messages are sent to ULOG. Listing 3-2 shows a ULOG file example containing WS-ReliableMessaging TMTRACE messages.
184706.BOX1!GWWS.3640.4772.0: TRACE:ms:A HTTP message is received, SCO index=1023
184706.BOX1!GWWS.3640.4772.0: TRACE:ms:A HTTP Get request is received, SCO index=1023
184706.BOX1!GWWS.3640.4772.0: TRACE:ms:Send a http message to net, SCO index=1023
184710.BOX1!GWWS.3640.4772.0: TRACE:ms:A HTTP message is received, SCO index=1022
184710.BOX1!GWWS.3640.4772.0: TRACE:ms:A SOAP message is received, SCO index=1022
184710.BOX1!GWWS.3640.4772.0: TRACE:ms:Create a new inbound sequence, ID=uuid:4F1FEE40-72CB-118C-FFFFFFC0FFFFFFA8FFFFFFEB010000-1811
184710.BOX1!GWWS.3640.4772.0: TRACE:ms:Create a new outbound sequence, ID=uuid:f7f76200-f612-11da-990d-9f37c3d14ba7
184710.BOX1!GWWS.3640.4772.0: TRACE:ms:Send CreateSequenceResponse message for sequence uuid:4F1FEE40-72CB-118C-FFFFFFC0FFFFFFA8FFFFFFEB010000-1811
184710.BOX1!GWWS.3640.4772.0: TRACE:ms:Send a http message to net, SCO index=1022
184712.BOX1!GWWS.3640.3260.0: TRACE:ms:A HTTP message is received, SCO index=1022
184712.BOX1!GWWS.3640.3260.0: TRACE:ms:A SOAP message is received, SCO index=1022
184712.BOX1!GWWS.3640.3260.0: TRACE:ms:Begin data transformation of request message, buffer type = STRING, SCO index=1022
184712.BOX1!GWWS.3640.3260.0: TRACE:ms:End of data transformation of request message, buffer type = STRING, SCO index=1022
184712.BOX1!GWWS.3640.3260.0: TRACE:ms:Received a request message in sequence uuid:4F1FEE40-72CB-118C-FFFFFFC0FFFFFFA8FFFFFFEB010000-1811
Checking the ULOG tracing information helps to evaluate GWWS server SOAP message problem status.
The GWWS server can be monitored with wsadmin utility, which is a command line tool. This tool can show the running status of GWWS.
An example is shown in Listing 3-3.
$wsadmin
wsadmin - Copyright (c) 2005-2006 BEA Systems, Inc.
Portions * Copyright 1986-1997 RSA Data Security, Inc.
All Rights Reserved.
Distributed under license by BEA Systems, Inc.
SALT is a registered trademark.
> gwstats -i abcd
GWWS Instance : abcd
Inbound Statistics :
---------------------------------
Request Response Succ : 74
Request Response Fail : 32
Oneway Succ : 0
Oneway Fail : 0
Total Succ : 74
Total Fail : 32
Avg. Processing Time : 210.726 (ms)
Outbound Statistics :
---------------------------------
Request Response Succ : 0
Request Response Fail : 0
Oneway Succ : 0
Oneway Fail : 0
Total Succ : 0
Total Fail : 0
Avg. Processing Time : 0.000 (ms)
---------------------------------
Total request Pending : 0
Outbound request Pending : 0
Active Thread Number : 2
> gws -i out -s getTemp
GWWS Instance : out
Service : getTemp
Outboud Statistics :
---------------------------------
Request Response Succ : 333
Request Response Fail : 139
Avg. Processing Time : 143.064 (ms)
>
Command gwstats (abbreviated as gws) can display the statistics data of GWWS server with specific instance ID or of certain service of the GWWS server. The data include the amount of successful and failed request, etc.
Before wsadmin is executed, both TUXCONFIG and SALTCONFIG environment variable must be set. wsadmin supports both active mode and in-active mode, which means wsadmin is able to launch with/without booting the Tuxedo domain.
The following table lists wsadmin sub-commands.
The following sections explain how to troubleshoot a BEA SALT run-time failure:
If the GWWS server fails to start, check the following:
Check the Tuxedo service contract definition is correct in the Tuxedo Service Metadata Repository and the Tuxedo Service Metadata Repository Server - TMMETADATA
- is booted successfully.
The GWWS server requires an extra license from BEA to enable the functionality. Check to make sure it has been installed properly.
Check the GWWS server listen / WS-Addressing endpoints defined in the SALT configuration files. Avoid port conflicts with other applications.
Check the GWWS instance ID to make sure the two names defined in UBBCONFIG
and SALTDEPLOY
file are consistent.
Make sure that MAXWSCLIENTS is defined in the *MACHINE section of UBBCONFIG file on the computer where GWWS server is deployed.
If the GWWS server is set to RESTART=Y in the UBBCONFIG file, REPLYQ=Y also must be defined.
SALTCONFIG
file.
Make sure the binary version SALTCONFIG
file is compiled successfully and the environment variable SALTCONFIG
is set correctly for the GWWS
server.
In some cases, the GWWS server may reject SOAP requests. The most common causes are:
The WSDL document used by SOAP clients is out of date and some services may not be available.
When exporting a Tuxedo service with FML/VIEW buffers to a Web service, make sure the related GWWS environment variables are set with valid values. The GWWS server needs this information for the data mapping conversion.
Check the SOAP client data and make sure Tuxedo Service Metadata Repository restrictions are not violated.
Make sure the Tuxedo service you want exported as a Web service is available.
If the WSDL document is rejected by the Web Service client toolkit, do the following:
document/literal
message style and SOAP 1.1 to define native Tuxedo WSDF file. This is also the default behavior.
![]() ![]() ![]() |