<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://ab.edge-technologies.com/docs/index.php?action=history&amp;feed=atom&amp;title=Appboard%2F2.4%2Fadmin%2Fprovisioning%2Fcustom_jsp</id>
	<title>Appboard/2.4/admin/provisioning/custom jsp - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://ab.edge-technologies.com/docs/index.php?action=history&amp;feed=atom&amp;title=Appboard%2F2.4%2Fadmin%2Fprovisioning%2Fcustom_jsp"/>
	<link rel="alternate" type="text/html" href="http://ab.edge-technologies.com/docs/index.php?title=Appboard/2.4/admin/provisioning/custom_jsp&amp;action=history"/>
	<updated>2026-04-08T12:15:55Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.38.4</generator>
	<entry>
		<id>http://ab.edge-technologies.com/docs/index.php?title=Appboard/2.4/admin/provisioning/custom_jsp&amp;diff=7349&amp;oldid=prev</id>
		<title>imported&gt;Jason.nicholls at 15:22, 16 July 2014</title>
		<link rel="alternate" type="text/html" href="http://ab.edge-technologies.com/docs/index.php?title=Appboard/2.4/admin/provisioning/custom_jsp&amp;diff=7349&amp;oldid=prev"/>
		<updated>2014-07-16T15:22:20Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 15:22, 16 July 2014&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l3&quot;&gt;Line 3:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 3:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Overview ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Overview ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Another way to manage domains, users, roles, and role assignments is through the creation of a custom Java Server Page (JSP) that is run on the AppBoard server and exposes a web &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;interface &lt;/del&gt;for management purposes.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Another way to manage domains, users, roles, and role assignments is through the creation of a custom Java Server Page (JSP) that is run on the AppBoard server and exposes a web &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;service &lt;/ins&gt;for management purposes.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Warning|Creating custom JSPs that interface with AppBoard is not directly supported under the standard product maintenance contract. It is recommended this type of solution be implemented as part of a  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Warning|Creating custom JSPs that interface with AppBoard is not directly supported under the standard product maintenance contract. It is recommended this type of solution be implemented as part of a  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;consulting engagement to ensure that it is configured and implemented correctly.   }}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;consulting engagement to ensure that it is configured and implemented correctly.   }}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>imported&gt;Jason.nicholls</name></author>
	</entry>
	<entry>
		<id>http://ab.edge-technologies.com/docs/index.php?title=Appboard/2.4/admin/provisioning/custom_jsp&amp;diff=7348&amp;oldid=prev</id>
		<title>imported&gt;Jason.nicholls at 15:19, 16 July 2014</title>
		<link rel="alternate" type="text/html" href="http://ab.edge-technologies.com/docs/index.php?title=Appboard/2.4/admin/provisioning/custom_jsp&amp;diff=7348&amp;oldid=prev"/>
		<updated>2014-07-16T15:19:47Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 15:19, 16 July 2014&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l4&quot;&gt;Line 4:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 4:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Another way to manage domains, users, roles, and role assignments is through the creation of a custom Java Server Page (JSP) that is run on the AppBoard server and exposes a web interface for management purposes.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Another way to manage domains, users, roles, and role assignments is through the creation of a custom Java Server Page (JSP) that is run on the AppBoard server and exposes a web interface for management purposes.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Warning|Creating custom JSPs that interface with AppBoard is not directly supported under the standard product maintenance contract. It is recommended this type of solution be implemented as part of a  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Warning|Creating custom JSPs that interface with AppBoard is not directly supported under the standard product maintenance contract. It is recommended this type of solution be implemented as part of a  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;consulting engagement to ensure that it is configured and implemented correctly.   }}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;consulting engagement to ensure that it is configured and implemented correctly.   }}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>imported&gt;Jason.nicholls</name></author>
	</entry>
	<entry>
		<id>http://ab.edge-technologies.com/docs/index.php?title=Appboard/2.4/admin/provisioning/custom_jsp&amp;diff=7347&amp;oldid=prev</id>
		<title>imported&gt;Jason.nicholls at 15:19, 16 July 2014</title>
		<link rel="alternate" type="text/html" href="http://ab.edge-technologies.com/docs/index.php?title=Appboard/2.4/admin/provisioning/custom_jsp&amp;diff=7347&amp;oldid=prev"/>
		<updated>2014-07-16T15:19:35Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;http://ab.edge-technologies.com/docs/index.php?title=Appboard/2.4/admin/provisioning/custom_jsp&amp;amp;diff=7347&amp;amp;oldid=7346&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>imported&gt;Jason.nicholls</name></author>
	</entry>
	<entry>
		<id>http://ab.edge-technologies.com/docs/index.php?title=Appboard/2.4/admin/provisioning/custom_jsp&amp;diff=7346&amp;oldid=prev</id>
		<title>imported&gt;Jason.nicholls at 14:58, 16 July 2014</title>
		<link rel="alternate" type="text/html" href="http://ab.edge-technologies.com/docs/index.php?title=Appboard/2.4/admin/provisioning/custom_jsp&amp;diff=7346&amp;oldid=prev"/>
		<updated>2014-07-16T14:58:54Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 14:58, 16 July 2014&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{DISPLAYTITLE:Custom JSP Provisioning}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{DISPLAYTITLE:Custom JSP Provisioning}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:AppBoard 2.4]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:AppBoard 2.4]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Overview ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Overview ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Another way to manage domains, users, roles, and role assignments is through the creation of a custom Java Server Page (JSP) that is run on the AppBoard server and exposed an web interface for management purposes.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;== Custom JSP Instructions ==&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;document covers an example &lt;/ins&gt;JSP &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;implementation&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;section details the procedures for implementing the Custom &lt;/del&gt;JSP &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;solution for direct provisioning&lt;/del&gt;.&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Note&lt;/del&gt;|&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;This section documents an optional customization to &lt;/del&gt;AppBoard&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/enPortal that &lt;/del&gt;is not &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;part of the core system or &lt;/del&gt;supported under the standard product maintenance contract. &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &lt;/del&gt;It is recommended &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;that &lt;/del&gt;this solution be implemented as part of a consulting engagement to ensure that it is configured and implemented correctly. &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; This solution offers some pieces of provisioning, but does not offer all of the provisioning options that are available in the application&amp;#039;s web administration interface.&lt;/del&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Warning&lt;/ins&gt;|&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Creating custom JSPs that interface with &lt;/ins&gt;AppBoard is not &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;directly &lt;/ins&gt;supported under the standard product maintenance contract. It is recommended this &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;type of &lt;/ins&gt;solution be implemented as part of a  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;consulting engagement to ensure that it is configured and implemented correctly. &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;  &lt;/ins&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l17&quot;&gt;Line 17:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 16:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# Save the code shown in the &amp;quot;JSP Code&amp;quot; section below into a text file with the file name: selfProvisioning.jsp&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# Save the code shown in the &amp;quot;JSP Code&amp;quot; section below into a text file with the file name: selfProvisioning.jsp&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# Modify the code as appropriate to meet the needs of the customer.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# Modify the code as appropriate to meet the needs of the customer.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# Save the file in to &amp;lt;tt&amp;gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;${Application_Home}&lt;/del&gt;/server/webapps/enportal/pkg/system/selfProvisioning.jsp&amp;lt;/tt&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# Save the file in to &amp;lt;tt&amp;gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[INSTALL_HOME]&lt;/ins&gt;/server/webapps/enportal/pkg/system/selfProvisioning.jsp&amp;lt;/tt&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# Invoke the self-provisioning options through the URL.  See details and examples provided below under &amp;lt;i&amp;gt;Applying Provisioning Updates&amp;lt;/i&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# Invoke the self-provisioning options through the URL.  See details and examples provided below under &amp;lt;i&amp;gt;Applying Provisioning Updates&amp;lt;/i&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# After creating the desired Users in the system, delete the &amp;lt;tt&amp;gt;selfProvisioning.jsp&amp;lt;/tt&amp;gt; file from the system, so that users do not access the provisioning capabilities.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# After creating the desired Users in the system, delete the &amp;lt;tt&amp;gt;selfProvisioning.jsp&amp;lt;/tt&amp;gt; file from the system, so that users do not access the provisioning capabilities.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>imported&gt;Jason.nicholls</name></author>
	</entry>
	<entry>
		<id>http://ab.edge-technologies.com/docs/index.php?title=Appboard/2.4/admin/provisioning/custom_jsp&amp;diff=7345&amp;oldid=prev</id>
		<title>imported&gt;Jason.nicholls: Created page with &#039;{{DISPLAYTITLE:Custom JSP Provisioning}} Category:AppBoard 2.4  == Overview ==   == Custom JSP Instructions == This section details the procedures for implementing the Custom…&#039;</title>
		<link rel="alternate" type="text/html" href="http://ab.edge-technologies.com/docs/index.php?title=Appboard/2.4/admin/provisioning/custom_jsp&amp;diff=7345&amp;oldid=prev"/>
		<updated>2014-07-16T14:47:02Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;#039;{{DISPLAYTITLE:Custom JSP Provisioning}} &lt;a href=&quot;/docs/index.php?title=Category:AppBoard_2.4&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Category:AppBoard 2.4 (page does not exist)&quot;&gt;Category:AppBoard 2.4&lt;/a&gt;  == Overview ==   == Custom JSP Instructions == This section details the procedures for implementing the Custom…&amp;#039;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{DISPLAYTITLE:Custom JSP Provisioning}}&lt;br /&gt;
[[Category:AppBoard 2.4]]&lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Custom JSP Instructions ==&lt;br /&gt;
This section details the procedures for implementing the Custom JSP solution for direct provisioning.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note|This section documents an optional customization to AppBoard/enPortal that is not part of the core system or supported under the standard product maintenance contract.  It is recommended that this solution be implemented as part of a consulting engagement to ensure that it is configured and implemented correctly.  This solution offers some pieces of provisioning, but does not offer all of the provisioning options that are available in the application&amp;#039;s web administration interface.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Installation and Configuration ===&lt;br /&gt;
Perform the following steps to install the Custom JSP for direct provisioning:&lt;br /&gt;
&lt;br /&gt;
# Save the code shown in the &amp;quot;JSP Code&amp;quot; section below into a text file with the file name: selfProvisioning.jsp&lt;br /&gt;
# Modify the code as appropriate to meet the needs of the customer.&lt;br /&gt;
# Save the file in to &amp;lt;tt&amp;gt;${Application_Home}/server/webapps/enportal/pkg/system/selfProvisioning.jsp&amp;lt;/tt&amp;gt;&lt;br /&gt;
# Invoke the self-provisioning options through the URL.  See details and examples provided below under &amp;lt;i&amp;gt;Applying Provisioning Updates&amp;lt;/i&amp;gt;&lt;br /&gt;
# After creating the desired Users in the system, delete the &amp;lt;tt&amp;gt;selfProvisioning.jsp&amp;lt;/tt&amp;gt; file from the system, so that users do not access the provisioning capabilities.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Warning|As long as the &amp;lt;tt&amp;gt;selfProvisioning.jsp&amp;lt;/tt&amp;gt; file is placed in the system, the direct provisioning capabilities can be implemented by any User who has knowledge of the commands and access to the server in a browser.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== JSP Code ===&lt;br /&gt;
&amp;lt;code&amp;gt;[xml,N]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!DOCTYPE HTML PUBLIC &amp;quot;-//W3C//DTD HTML 4.0 Transitional//EN&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;%@ page import=&amp;quot;java.util.*&amp;quot;&lt;br /&gt;
import=&amp;quot;com.edgetech.eportal.component.*&amp;quot;&lt;br /&gt;
import=&amp;quot;com.edgetech.eportal.user.*&amp;quot;&lt;br /&gt;
import=&amp;quot;com.edgetech.eportal.session.*&amp;quot;&lt;br /&gt;
import=&amp;quot;com.edgetech.eportal.util.*&amp;quot;&lt;br /&gt;
import=&amp;quot;com.edgetech.eportal.user.impl.*&amp;quot;&lt;br /&gt;
import=&amp;quot;com.edgetech.util.logger.*&amp;quot;&lt;br /&gt;
import=&amp;quot;com.edgetech.eportal.directory.*&amp;quot;&lt;br /&gt;
import=&amp;quot;com.edgetech.eportal.executive.impl.PrivilegedServiceRegistry&amp;quot;&lt;br /&gt;
import=&amp;quot;com.edgetech.eportal.executive.ServiceRegistry&amp;quot;&lt;br /&gt;
import=&amp;quot;com.edgetech.eportal.session.impl.SessionServiceImpl&amp;quot;&lt;br /&gt;
import=&amp;quot;com.edgetech.eportal.web.JSPUtilities&amp;quot;&lt;br /&gt;
import=&amp;quot;com.edgetech.eportal.config.Config&amp;quot; %&amp;gt;&lt;br /&gt;
&amp;lt;jsp:useBean id=&amp;quot;JspConfigBean&amp;quot; scope=&amp;quot;application&amp;quot; class=&amp;quot;com.edgetech.util.config.JspConfig&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;%@ taglib uri=&amp;quot;/PortalTagLibrary&amp;quot; prefix=&amp;quot;portal&amp;quot; %&amp;gt;&lt;br /&gt;
&amp;lt;%&lt;br /&gt;
&lt;br /&gt;
String username = request.getParameter(&amp;quot;uid&amp;quot;);&lt;br /&gt;
String password = &amp;quot;ChangeMe&amp;quot;; // Note: the initial password is set to &amp;quot;ChangeMe&amp;quot;!&lt;br /&gt;
String domainName = request.getParameter(&amp;quot;domain&amp;quot;);&lt;br /&gt;
String rolePath = request.getParameter(&amp;quot;rolePath&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
String errorMessage = &amp;quot;&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
if (username != null &amp;amp;&amp;amp; domainName != null &amp;amp;&amp;amp; rolepath != null) {&lt;br /&gt;
	SessionServiceImpl sessionService  = null;&lt;br /&gt;
	AuthenticationToken systemSession = null;&lt;br /&gt;
	try{&lt;br /&gt;
	    sessionService = (SessionServiceImpl)PrivilegedServiceRegistry.getSessionService();&lt;br /&gt;
&lt;br /&gt;
	    systemSession = sessionService.createSystemSession();&lt;br /&gt;
&lt;br /&gt;
		UserService userService = ServiceRegistry.getUserService(systemSession);&lt;br /&gt;
		Domain domain = UserPackageToolkit.makeDomain(domainName);&lt;br /&gt;
&lt;br /&gt;
		Role role = UserPackageToolkit.makeRoleFromAbsoluteString(rolePath);&lt;br /&gt;
		String[] roleArray = rolePath.substring(1).split(&amp;quot;/&amp;quot;); // Ignore the leading &amp;#039;/&amp;#039;	&lt;br /&gt;
		&lt;br /&gt;
		userService.createRole(roleArray);&lt;br /&gt;
		&lt;br /&gt;
		String[] userArray = username.split(&amp;quot;,&amp;quot;);&lt;br /&gt;
		for (int i=0; i&amp;lt; userArray.length; i++) {&lt;br /&gt;
			User user = UserPackageToolkit.makeUser(domainName, userArray[i].trim());&lt;br /&gt;
			userService.createUser(domain, userArray[i].trim(), password);&lt;br /&gt;
			userService.assignUserToRole(user, role);&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		&lt;br /&gt;
	} catch (Exception exp) {&lt;br /&gt;
		errorMessage = exp.getMessage();&lt;br /&gt;
		exp.printStackTrace();&lt;br /&gt;
	} finally {&lt;br /&gt;
		// Terminate the system session.&lt;br /&gt;
		sessionService.terminateSession(systemSession, SessionService.TERMCODE_LOGOUT);&lt;br /&gt;
	}	&lt;br /&gt;
	if (errorMessage.equals(&amp;quot;&amp;quot;)) {&lt;br /&gt;
%&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;LINK href=&amp;#039;&amp;lt;%=JSPUtilities.out(URLUtil.getPortalContext(), true)%&amp;gt;/framework/styles/editors.css&amp;#039; type=text/css rel=stylesheet&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;#039;&amp;lt;%=JSPUtilities.out(URLUtil.getPortalContext(), true)%&amp;gt;/framework/js/browser.js&amp;#039;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;div align=&amp;#039;center&amp;#039;&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;%&lt;br /&gt;
out.println(&amp;quot;User Creation successful. Please login to Portal.&amp;quot;);&lt;br /&gt;
%&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&amp;lt;button onClick=&amp;quot;return cancel();&amp;quot; class=fixedWidth&amp;gt;Ok&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
&amp;lt;%	&lt;br /&gt;
		return;&lt;br /&gt;
	} else {&lt;br /&gt;
		// re-write errorMessage here.//&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
%&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Self Provisioning Form&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;LINK href=&amp;#039;&amp;lt;%=JSPUtilities.out(URLUtil.getPortalContext(), true)%&amp;gt;/framework/styles/editors.css&amp;#039; type=text/css rel=stylesheet&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;#039;&amp;lt;%=JSPUtilities.out(URLUtil.getPortalContext(), true)%&amp;gt;/framework/js/browser.js&amp;#039;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
var warned=&amp;quot;&amp;quot;;&lt;br /&gt;
function saveChanges(actionType)&lt;br /&gt;
{&lt;br /&gt;
    if (validateInput(document.inputForm))&lt;br /&gt;
    {&lt;br /&gt;
        document.inputForm.actionType.value = actionType;&lt;br /&gt;
        document.inputForm.submit();&lt;br /&gt;
    }&lt;br /&gt;
    return false;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function validateInput(workerForm)&lt;br /&gt;
{&lt;br /&gt;
    if ( ! isValidUsernameFieldType(workerForm.uid, &amp;quot;User Name&amp;quot;, true, false))&lt;br /&gt;
    {&lt;br /&gt;
        workerForm.uid.focus();&lt;br /&gt;
        return false;&lt;br /&gt;
    }&lt;br /&gt;
    else if ( emptyString.test(workerForm.rolePath.value))&lt;br /&gt;
    {&lt;br /&gt;
        alert(&amp;#039;Role cannot be empty.&amp;#039;);&lt;br /&gt;
        workerForm.rolePath.focus();&lt;br /&gt;
        return false;&lt;br /&gt;
    }&lt;br /&gt;
    else if (emptyString.test(workerForm.domain.value))&lt;br /&gt;
    {&lt;br /&gt;
        alert(&amp;#039;domain cannot be empty.&amp;#039;);&lt;br /&gt;
        workerForm.domain.focus();&lt;br /&gt;
        return false;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    return true;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;form name=&amp;quot;inputForm&amp;quot; method=&amp;quot;POST&amp;quot; action=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;input type=&amp;quot;hidden&amp;quot; name=&amp;quot;actionType&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;tabs&amp;quot; class=&amp;quot;tabDiv&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=0 cellspacing=0 cellpadding=0 width=&amp;quot;96%&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr height=5&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr height=20&amp;gt;&amp;lt;td class=&amp;quot;headerText&amp;quot; align=&amp;#039;center&amp;#039;&amp;gt;Self Provisioning&amp;lt;hr&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr height=4&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font class=&amp;quot;propertyValue&amp;quot; color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;%=JSPUtilities.out(errorMessage)%&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;DIV id=&amp;quot;generalDiv&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=0 cellspacing=0 cellpadding=5 width=&amp;quot;96%&amp;quot; class=&amp;quot;box&amp;quot; style=&amp;quot;border-width: 1;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tbody&amp;gt;&amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td class=&amp;quot;property&amp;quot; nowrap=&amp;quot;nowrap&amp;quot;&amp;gt;New User Name&amp;lt;br&amp;gt;&lt;br /&gt;
      &amp;lt;input value=&amp;quot;&amp;quot; name=&amp;quot;uid&amp;quot; size=&amp;quot;200&amp;quot; maxlength=&amp;quot;2000&amp;quot; type=&amp;quot;text&amp;quot;&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;td class=&amp;quot;property&amp;quot; nowrap=&amp;quot;nowrap&amp;quot;&amp;gt;role&amp;lt;br&amp;gt;&lt;br /&gt;
    &amp;lt;input value=&amp;quot;&amp;quot; name=&amp;quot;rolePath&amp;quot; size=&amp;quot;15&amp;quot; type=&amp;quot;text&amp;quot;&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;td class=&amp;quot;property&amp;quot; nowrap=&amp;quot;nowrap&amp;quot;&amp;gt;domain&amp;lt;br&amp;gt;&lt;br /&gt;
    &amp;lt;input value=&amp;quot;&amp;quot; name=&amp;quot;domain&amp;quot; size=&amp;quot;15&amp;quot; type=&amp;quot;text&amp;quot; &amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;  &lt;br /&gt;
&amp;lt;/tbody&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/form&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;div class=&amp;quot;actionButtonDiv&amp;quot;&amp;gt;&amp;lt;button onClick=&amp;quot;return saveChanges(&amp;#039;Ok&amp;#039;);&amp;quot; class=fixedWidth&amp;gt;Continue&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;button onClick=&amp;quot;return cancel();&amp;quot; class=fixedWidth&amp;gt;Cancel&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Usage ===&lt;br /&gt;
# &amp;lt;tt&amp;gt;uid&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;domain&amp;lt;/tt&amp;gt;, and &amp;lt;tt&amp;gt;rolePath&amp;lt;/tt&amp;gt; are required parameters in order for the provisioning code to run.&lt;br /&gt;
# Each new User&amp;#039;s password is defaulted to &amp;quot;ChangeMe&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Applying Provisioning Updates ===&lt;br /&gt;
&lt;br /&gt;
Perform the following steps to apply provisioning updates using the Custom JSP:&lt;br /&gt;
&lt;br /&gt;
# Follow the steps above under &amp;lt;i&amp;gt;Installation and Configuration&amp;lt;/i&amp;gt; to save the JSP code into the system.&lt;br /&gt;
# Enter a URL into the browser to invoke the self-provisioning command.  The URL will have the following format:&lt;br /&gt;
#* &amp;lt;nowiki&amp;gt;http://&amp;lt;serverhost&amp;gt;:&amp;lt;port&amp;gt;/enportal/pkg/system/selfProvisioning.jsp?uid=&amp;lt;userid01&amp;gt;,&amp;lt;userid02&amp;gt;,...,&amp;lt;userid_n&amp;gt;&amp;amp;domain=&amp;lt;DomainName&amp;gt;&amp;amp;rolePath=&amp;lt;RoleName&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
# Each user will be added to the system under the indicated Domain, and will be assigned the indicated Role.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Examples:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;nowiki&amp;gt;http://localhost:8080/enportal/pkg/system/selfProvisioning.jsp?uid=jMurphy ,rJohnson ,bAckerman&amp;amp;domain=SafeCo&amp;amp;rolePath=/NOC&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* &amp;lt;nowiki&amp;gt;http://rimagicor.com:8081/enportal/pkg/system/selfProvisioning.jsp?uid=INM18483 ,INM20170 ,INM05057 ,INM02642 ,INM05166 ,INM02642 ,INM31735 ,INM20170&amp;amp;domain=CustomerA&amp;amp;rolePath=/Users/East/Home&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* &amp;lt;nowiki&amp;gt;http://myservername/enportal/pkg/system/selfProvisioning.jsp?uid=bill.thompson,amy.dobson,yolanda.pence&amp;amp;domain=North&amp;amp;rolePath=/SystemAdmin&amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>imported&gt;Jason.nicholls</name></author>
	</entry>
</feed>