Form Fill is used to simplify the user experience by providing a single sign-on process for a HTML form.  Let's take a typical application, protected by [NAM|Novell Access Manager] that has a login form.  This form allows, or requests, the user to input a user name and password and click the login button.  Without Form Fill, the user must first authenticate to [NAM|Novell Access Manager] (input a username and password) and then authenticate to the application (another user name and password) to gain access.  They must repeat this process everytime they first access this application through [NAM|Novell Access Manager]; With Form Fill, they would only need to enter the application's form requirement once.  After that, [NAM|Novell Access Manager] and the Form Fill process would handle the application's requirements on behalf of the user.  This results in a single sign-on process for the user.

To create a working policy, the administrator must completely understand the form's layout, structure and what information is required by the application.  The best way to gain this knowledge is have a converstation with the developer.  If this is not possible, use browser based add on tools such as HTTPWatch, PageInfo as well as viewing the page's source code.  The [Form Fill Process diagram|^form_fill_process.pdf] outlines the process to use to create a Form Fill policy.  The following insert shows a form in use by A&F (bold text has been highlighted for clarity).
| <FORM action='' method=post *{_}name=loginForm{_}* onsubmit="login();return false;"> \\
<input type="hidden" name="loginType" value="1"> \\
&nbsp;&nbsp; &nbsp;<div class="wrapper"> \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<img src="http://www.anfcorp.com/art/af_header.gif"      alt="Abercrombie & Fitch" width="734" height="95"/><br/> \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<div id="contentcontainer"> \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<div id="leftCol"> \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<img src="http://www.anfcorp.com/art/marketing.jpg"      alt="Abercrombie & Fitch" width="472" height="350"/><br/> \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;</div> \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<div id="rightCol"> \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<div id="loginContainer"> \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;WELCOME TO<br/> \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<\!-CHANGE title of application here-> \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<span class="title">FITCH TRACK</span> \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<div id="dots">\- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - </div> \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<p> \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<\!-CHANGE field names to be what your app needs and add fields (such as Company) if needed by the app-> \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Company \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<*input name="companyName"* size="24" value=""><br/> \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;User Name \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<*input name="userName"* size="24" value=""> <br/> \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;Password \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<*input name="password"* type="password" size="24" maxlength="32"><br/> \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<input type="image" src="/anfxpc/img/anfart/login.gif"      value="Submit"/><br/> \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;</p> \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp; \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<*input type="checkbox" name="remLoginInfo"*&nbsp; > \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<span style="font-weight: 400"><font size="1">Remember me on this computer</font></span> \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<br><br><span style="font-weight: 400"><font size="1">Copyright © 2006 ecVision Inc. All rights reserved.</font></span> \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp; \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;</div> \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;</div> \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<div class="clearer">&nbsp;</div> \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp; \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;</div> \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp; \\
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<img src="http://www.anfcorp.com/art/af_footer.gif"      alt="Abercrombie & Fitch" width="734" height="93" usemap="#footer"/> \\
&nbsp;&nbsp; &nbsp;</div> \\
\\
</FORM> |
Looking at the process, the first thing to do to create the policy is define the form selection.&nbsp; This selection is how WAM identifies the form with the policy.&nbsp; The form shown above has a name, loginForm.&nbsp; If this were a unique name, this would be all that would be required for WAM to match the form to the policy.&nbsp; However, this is a rather generic looking name and probably should not be used as the sole criteria for successfully matching the form.&nbsp; Additional CGI criteria (perhaps some cgi query text string within the page's URL) or Page Matching criteria (some unique text within the page) can be used to create a unique match.


!! More Information
There might be more information for this subject on one of the following:
[{ReferringPagesPlugin before='*' after='\n' }]