ibm-information-center/dist/eclipse/plugins/i5OS.ic.rzatz_5.4.0.1/51/webserv/wswsifrest.htm

95 lines
5.8 KiB
HTML
Raw Normal View History

2024-04-02 14:02:31 +00:00
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=utf-8">
<LINK rel="stylesheet" type="text/css" href="../../../rzahg/ic.css">
<title>WSIF - Known restrictions</title>
</head>
<BODY>
<!-- Java sync-link -->
<SCRIPT LANGUAGE="Javascript" SRC="../../../rzahg/synch.js" TYPE="text/javascript"></SCRIPT>
<h4>WSIF - Known restrictions</h4>
<p>This topic lists the main known restrictions that apply when using WSIF.</p>
<p><strong>Threading</strong>
<br>WSIF is not thread-safe.</p>
<p><strong>External Standards</strong>
<br>WSIF supports:</p>
<ul>
<li>SOAP Version 1.1 (not 1.2 or later).</li>
<li>WSDL Version 1.1 (not 1.2 or later). </li>
</ul>
<blockquote>WSIF does not provide WS-I compliance, and it does not support the Java API for XML-based Remote Procedure Calls (JAX-RPC) Version 1.1 (or later).</blockquote>
<p><strong>Full schema parsing</strong>
<br>WSIF does not support full schema parsing. For example, WSDL references in complex types in the schema are not handled, and attributes are not handled.</p>
<p><strong>SOAP</strong>
<br>WSIF does not support:</p>
<ul>
<li>SOAP headers that are passed as &lt;parts&gt;.</li>
<li>Unreferenced attachments in SOAP responses.</li>
<li>Document Encoded style SOAP messages.</li>
</ul>
<p><strong>Note</strong>: This is not primarily a WSIF restriction. Although you can specify Document Encoded style in WSDL, it is not generally considered to be a valid option and is not supported by the <a href="http://www.ws-i.org" target="_">Web Services Interoperability Organization (WS-I)</a> <img src="www.gif" width="19" height="15" alt="Link outside Information Center"> (http://www.ws-i.org/).</p>
<p><strong>SOAP provider interoperability</strong>
<br>The current WSIF default SOAP provider (the IBM Web Service SOAP provider) does not fully interoperate with services that are running on the former (Apache SOAP) provider. This restriction is due to the fact that the IBM Web Service SOAP provider is designed to interoperate fully with a JAX-RPC compliant Web service, and Apache SOAP cannot provide such a service. For information on how to overcome this restriction, see <a href="wswsifprovspleg.htm">WSIF SOAP provider: working with legacy applications</a></p>
<p><strong>Type mappings</strong>
<br>The current WSIF default SOAP provider (the IBM Web Service SOAP provider) conforms to the JAX-RPC type mapping rules that were finalized after the former (Apache SOAP) provider was created. The majority of types are mapped the same way by both providers. The exceptions are: xsd:date, xsd:dateTime, xsd:hexBinary and xsd:QName. Both client and service need to use the same mapping rules if any of these four types are used. Below is a table detailing the mapping rules for these four types:</p>
<table align="left" width="640">
<tr valign="top" align="left">
<th class="base" valign="top" align="left" >XML Data Type</th>
<th class="base" valign="top" align="left" >Apache SOAP Java Mapping</th>
<th class="base" valign="top" align="left" >JAX-RPC Java Mapping</th>
</tr>
<tr valign="top" align="left">
<td class="base" valign="top" align="left" >xsd:date</td>
<td class="base" valign="top" align="left" >java.util.Date</td>
<td class="base" valign="top" align="left" >Not supported</td>
</tr>
<tr valign="top" align="left">
<td class="base" valign="top" align="left" >xsd:dateTime</td>
<td class="base" valign="top" align="left" >Not supported</td>
<td class="base" valign="top" align="left" >java.util.Calendar</td>
</tr>
<tr valign="top" align="left">
<td class="base" valign="top" align="left" >xsd:hexBinary</td>
<td class="base" valign="top" align="left" >Hexadecimal string</td>
<td class="base" valign="top" align="left" >byte [ ]</td>
</tr>
<tr valign="top" align="left">
<td class="base" valign="top" align="left" >xsd:QName</td>
<td class="base" valign="top" align="left" >org.apache.soap.util.xml.QName</td>
<td class="base" valign="top" align="left" >javax.xml.namespace.QName</td>
</tr>
</table><br clear="all"><br clear="all">
<p><strong>Arrays and complex types</strong>
<br>WSIF does not support general complex types, it only handles complex types that map to Java Beans. To use schema complex types, you must write your own custom serializers. The specific complex type and array support for WSIF outbound invocation of Web services are:</p>
<ul>
<li>WSIF supports Java classes generated by WebSphere Studio Application Developer - Integration Edition (WSAD-IE) message generators (the normal case when WSDL files are downloaded from somewhere else). The WSAD-IE-based generation happens automatically when you use the BPEL editor, or the generation actions available on the Enterprise Services context menu, or the Business Integration toolbar.</li>
<li>WSIF does not support Java beans generated by other tools, including the base WSAD tool.</li>
<li>For WSAD-IE generated Java beans, attributes defined in the WSDL do not work. That is to say that these attributes, although they appear in the Java beans generated to represent the complex type, do not appear in the SOAP request created by WSIF.</li>
<li>WSIF does not support arrays when they are a field of a Java bean. WSIF only supports an array that is passed in as a named &lt;part&gt;. If an array is contained inside a Java bean, the array is not serialized in the same way.</li>
</ul>
<p><strong>Object Serialization</strong>
<br>WSIF does not support serialization of objects across different releases.</p>
<p><strong>Asynchronous invocation</strong>
<br>WSIF only supports asynchronous invocation for the JMS and the SOAP over JMS providers, which are not supported in WebSphere Application Server - Express.</p>
<p><strong>Running outside WebSphere Application Server - Express</strong>
<br>WSIF is not supported for use outside WebSphere Application Server - Express.</p>
</body>
</html>