<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="../../../../wtp.xsl"?>
<html>
	<head>
		<meta name="root" content="../../../../.." />
		<title>
			test plan: Importing an EAR module containing an Web module
			and running it on Jonas.
		</title>
	</head>

	<body>
		<h1>jst j2ee</h1>
		<h2>Intoduction</h2>
		<p>
			This test case walkthroughs the steps required to import,
			deploy and run an ear module in the Web Tools Project.
		</p>
		<BR />
		<h2>Steps</h2>
		<p>
			<ol>
				<li>
					First set up JONAS Runtime from the
					Windows->Preferences->Server->Installed Runtime.
					<br />
					<br />
					<img border="0"
						src="images/SettingJonas_runtime.jpg" />
					<br />
					<br />
					<i>
						Figure 1: Setup the JONAS Runtime from
						Windows->Preferences->Server->Installed Runtime.
					</i>

				</li>
				<br />
				<br />
				<li>
					Open J2EE perspective, in the Navigator, right click
					and choose "Import" and then choose "EAR File"
					<table cellspacing="10" cellpadding="10">
						<tr>
							<td>
								<img
									src="images/howto_open_perspective_view.jpg" />
							</td>

							<td>
								<img src="images/perspective_view.jpg" />
							</td>
						</tr>
						<tr>
							<td colspan="2">
								<p>
									<i>
										Figure 2: Open the J2EE
										Perspective.
									</i>
								</p>
							</td>
						</tr>
					</table>
					<table cellspacing="10" cellpadding="10">
						<tr>
							<td>
								<p>
									<img
										src="images/Ear_import_ire1.jpg" />
								</p>
							</td>
						</tr>
						<tr>
							<td>
								<p>
									<i>
										Figure 3: Download the following
										ear <A href="resource/TestWebProjectEAR.ear" target="_blank">TestWebProject.ear</A>. Navigate via the browse
										button and select this ear from
										disk. Keep the default Project
										Name, select your Target
										runtime, and click finish.
									</i>
								</p>
							</td>
						</tr>
					</table>
				</li>
				<br />
				<br />
				<li>
					Go to the project in the Project Explorer, expand
					both the TestWebProjectEAR and TestWebProject are
					visable. Expand these to verify all files imported
					correctly.
					<table cellspacing="10" cellpadding="10">
						<tr>
							<td>
								<p>
									<img
										src="images/project_explorer_ire3.jpg" />
								</p>
							</td>
						</tr>
						<tr>
							<td>
								<p>
									<i>Figure 7: Project explorer view</i>
								</p>
							</td>
						</tr>
					</table>
				</li>
				<br />
				<li>
					Go to the project in the Project Explorer, select
					the web project, right click and select "Run As",
					you will see Jonas selected, create runtime
					configuration for the web project by selecting "New"
					button.
					<table cellspacing="10" cellpadding="10">
						<tr>
							<td>
								<p>
									<img
										src="images/Run_on_server_ere2.jpg" />
								</p>
							</td>
						</tr>
						<tr>
							<td>
								<p>
									<i>
										Figure 8: By default, the
										available module groupings are
										presented to the user.
									</i>
								</p>
							</td>
						</tr>
					</table>
				</li>
				<br />
				<li>
					Now Run the server from the Servers view, and view
					the servlet.
				</li>

			</ol>
		</p>
	</body>
</html>
