ibm-information-center/dist/eclipse/plugins/i5OS.ic.rzamy_5.4.0.1/50/webserv/wswsifmg.htm

77 lines
4.2 KiB
HTML

<!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 system management and administration</title>
</head>
<BODY>
<!-- Java sync-link -->
<SCRIPT LANGUAGE="Javascript" SRC="../../../rzahg/synch.js" TYPE="text/javascript"></SCRIPT>
<h4><A NAME="wswsifmg">WSIF system management and administration</A></h4>
<p>WSIF is provided as a standalone JAR file called wsif.jar. The JAR file contains the core WSIF classes, and the Java and SOAP over HTTP providers. Additional providers are packaged as separate JAR files.</p>
<p>When you install WebSphere Application Server - Express, wsif.jar is put on the WebSphere or Java virtual machine class path. </p>
<p>WSIF requires no further configuration. WSIF is a thin abstraction layer between application code and the relevant invocation infrastructure.</p>
<p><strong>Maintaining the WSIF properties file</strong></p>
<p>WSIF properties are stored in a properties file (in wsif.jar) called wsif.properties. This file is kept on the class path, so that WSIF can find it, and the client administrator can use it to configure WSIF.</p>
<p>Here are the initial contents of wsif.properties. All the possible properties are listed and described.</p>
<pre># Two properties are used to override which WSIFProvider is selected when there
# exists multiple providers supporting the same namespace URI. These properties are:
#
# wsif.provider.default.CLASSNAME=N
# wsif.provider.uri.M.CLASSNAME=URI
#
# CLASSNAME is the WSIFProvider class name
# N is the number of following default wsif.provider.uri.M.CLASSNAME properties
# M is a number from 1 to N to uniquely identify each wsif.provider.uri.M.CLASSNAME
# property key.
# For example the following two properties would override the default SOAP provider
# to be the Apache SOAP provider:
#
# wsif.provider.default.org.apache.wsif.providers.soap.apacheaxis.WSIFDynamicProvider_ApacheAxis=1
# wsif.provider.uri.1.org.apache.wsif.providers.soap.apacheaxis.WSIFDynamicProvider_ApacheAxis=\
# http://schemas.xmlsoap.org/wsdl/soap/
#
# maximum number of milliseconds to wait for a response to a synchronous request.
# Default value if not defined is to wait forever.
wsif.syncrequest.timeout=10000
# maximum number of seconds to wait for a response to an async request.
# if not defined on invalid defaults to no timeout
wsif.asyncrequest.timeout=60</pre>
<p><strong>Enabling security for WSIF</strong> </p>
<p>This is how WSIF interacts with a security manager:</p>
<ul><li>WSIF runs in the current J2EE security context without modifying it.</li>
<li>When WSIF is run under a J2EE container, Port implementations can utilize security context to pass on security tokens or credentials as necessary.</li>
<li>WSIF implementations can automatically convert J2EE security context into appropriate context for onward services.</li></ul>
<p>For WSIF to interact effectively with the WebSphere Application Server - Express's security manager, these permissions must be set in the server.policy file:</p>
<ul><li>FilePermission to load the WSDL (this is only required when a WSDL file is referred to using the file:/// protocol)</li>
<li>RuntimePermission &quot;getClassLoader&quot; for the current thread's context class loader.</li>
<li>RuntimePermission &quot;accessDeclaredMembers&quot; (this is required by both portions)</li>
<li>PropertyPermission for system properties (this is required by SOAP and many others; read and write access is required for the SOAP and Java portion)</li>
<li>NetPermission &quot;specifyStreamHandler&quot; (this must be in either the SOAP and Java portion, but it need not be in both).</li>
<li>SocketPermission &quot;<em>host_name</em>&quot;, &quot;resolve&quot; (this is not required by the SOAP and Java portion) </li>
<li>SocketPermission &quot;<em>host_name</em>:<em>port_no</em>&quot;, &quot;connect&quot; (this is required by both portions)</li></ul>
<p>where <em>host_name</em> is your host name (for example localhost), and <em>port_no</em> is your port number (for example 9080).</p>
</body>
</html>