|
|
1.
Preface
This document was written using
MyEclipse. All screenshots are based upon the default
user interface settings for MyEclipse and Windows XP.
If you experience difficulty with the instruction of this
document, please see the
User Feedback section for how to
provide feedback to the MyEclipse documentation team.
|
|
2.
Introduction
MyEclipse Enterprise Workbench provides developers the ability to
seamlessly deploy, execute, and test their MyEclipse J2EE
applications to any of over 20 different application
servers. However, configuration of WebSphere 6.0 for
proper operation in MyEclipse requires more work than many of the
other servers. This document will walk you through setting
up a new WebSphere 6 profile for use within MyEclipse.
MyEclipse interacts with a local application server instance
through an application server connector. Each connector is
configured through the MyEclipse preferences and provides
integrated controls that allow you to:
-
Start an application server in Run or Debug mode
-
Monitor application server operation via stdout log messages
which is redirected to the MyEclipse console
-
Test deployed applications through your custom test client or
web browser
-
Perform hot-swap Java debugging of deployed application code
-
Perform JSP source-level debugging on JSR-045 compliant
application servers such as WebSphere 6.0
-
Stop the application server
|
3.
Requirements
The requirements for MyEclipse application server support
are:
-
MyEclipse application server connectors require direct
access to application server installation. Therefore
the application server must be installed on the file
system of the machine that MyEclipse will operate.
Note: MyEclipse does not currently support
application deployment to remote application servers.
-
You must be running WebSphere 6.0 with the JDK that IBM
provided with it, located in <was-install-dir>/java.
Only MyEclipse Enterprise J2EE projects may be deployed with the
MyEclipse Deployment Service to WebSphere 6. MyEclipse does not
support the deployment of plain Java projects, although they may
be used as library projects for use by your MyEclipse Web or EJB
projects within the Enterprise project. Please see the
Web Project Tutorial for
more information on the use of basic Java projects in conjunction
with MyEclipse Web Projects and their deployment.
|
4.
Creating a New WebSphere Profile
The first thing we must do to get WebSphere setup and configured
properly is to create a profile. The WebSphere profile will
contain all the configuration informatio for our installation of
WebSphere. Navigate to your
Profile creation wizard
start menu item as shown below:
Ater launching the profile creation wizard you are prompted to
give your new profile a name. Since this profile will be used
primarily for development under MyEclipse, we suggest a helpful
name such as
MyEclipse, or something
else that is easy for you to remember:
After clicking next, you will be prompted to enter the location
where the profile will be created. Selecting the default
location will work well.
Next, you will be prompted to enter the Node and Host names for
this profile. The Node name can be anything you
like. However, the Host name should not be changed since it
is detected by the wizard based on the network name of the
computer and will be used by MyEclipse to launch the
profile.
After hitting next, you will be prompted to provide runtime
ports for every service that WebSphere provides. There are
quite a few and the wizard will automatically try to detect
unused ports close to its defaults. However, for development it
is advisable to reset all the port values back to their defaults
since those are the ports referenced in all documentation.
Next, the wizard will askwe&nb if sp; WebSphere should
be installed as a Windows service. You
do not want this because
it will interfere with MyEclipse's management of the WebSphere
server. Uncheck the selection and click next.
After reviewing the profile summary, you can click next and allow
the wizard to take a few minutes creating your new profile
(usually around 200mb). After the profile has been created, you
will see the window below. Here you need to make sure to check
the
Launch the First steps
console in order to validate that the install was successful and
refine the setup of the server for use with MyEclipse.
|
5.
Configuring Your WebSphere Profile
This section describes how to reconfigure the newly created
development profile for optimum use with MyEclipse. When the
First Steps console launches, please select
Start the server.
A log window like the one shown below will popup and show you the
status of your server, wait for the server to finish starting up
and show you the last message
"Server server1 open
for e-business...", when you see this message you are ready
to continue.
Now that the server is running, return to the First steps
main window, and click the
Administrative console
link to bring up some configuration options:
Here you are prompted for you user login to get into the
administrative console. Security is not enabled an actual
user name is not required. In the example,"
admin" is used for
illustrative purposes. Enter a name and select the login
button.
Next you need to drill down to the
server1 settings. To do
that, expand the
Servers group in the left
hand panel and then click on the
Application servers
option. You will see your right panel change and now display a
list of servers. Since you need to change the settings for
server1, so please click
that now as shown in the picture below:
Now what we need to adjust is the logging setup for
server1 to ensure that
the output logged to the standard out and standard error file
descriptors can be shown to you in the MyEclipse Console view. To
reconfigure for console logging, scroll your right panel all the
way to the bottom of the page and select the
Logging and Tracing link:
Now click the
JVM Logs link:
You now need to adjust where the output for System.out and
System.err are directed. By default, the server logs messages to
files that are handled by WebSphere. For proper use with
MyEclipse, you need to direct messages to the
console. In order to do
that edit both
File name fields as shown
below to contain the value "
console". After you
have done that, scroll to the bottom and click
OK.
After clicking
OK you will be prompted
if you wish to save these changes to the master configuration. To
make the modification permanent, click the
Save link as shown in the
image below:
... and now click the
Save button again:
Now that WebSphere is configured, you can logout of the
administrative console by clicking the
Logout link as shown
below:
Since you've completed the initial configuration, you can now
bring the First steps console back up and click the
Stop the serverwhen you
see this message you can close the console, the First steps
window as well as the browser window that had popped up when you
logged into the Administrative console.shown below. If you watch
the WebSphere console it will show the progress of stopping the
server. The last message you see should say "
Server server1 stop
completed." When you see this message you can close the
console, the First steps window, andthe browser window that had
popped up when you logged into the Administrative console.
|
6.
Configuring the WebSphere
Connector
Now that your WebSphere profile is successfully installed
and configured appropriately for MyEclipse, it's time to
configure theMyEclipse WebSphere 6 server connector.
MyEclipseTo begin, you
need to determine the execution cell name that WebSphere created
for your profile. You can do this by navigating to the
directory containing your MyEclipse profile. When you find this
directory expand the
config/cells
directories. You should have a single directory that
consists of your host name, some number and the word cell as
shown below. Either keep this window open for reference, or write
down the full name of the cell directory, which is in the example
is
Genuitec-1111Node03Cell.
At this point, you need to launch MyEclipse and navigate to your
WebSphere 6 connector settings at:
Window > Preferences
> MyEclipse > Application Servers > WebSphere 6
Once you have navigated to the WebSphere 6 preference window,
first be sure to
Enable the application
server, then fill in the WebSphere installation location.
Most of the remaining fields will be defaulted for you. All
of the fields should be straight forward, the only two that might
be a little tricky are the
Node Name and
Server Name fields that
are shown below. The
Node Name field is the
value you used during the Profile creation wizard, in our example
it was
MyEclispeNode and the
Cell Name is the
directory name you had to lookup in the step above. When you are
done, click the
JDK node under the
WebSphere 6 node on the left. Here we will configure the
IBM JDK that MyEclipse will use to launch WebSphere.
After you have selected the JDK preferences page, select the
Add... button. You can
give this new JDK any name you wish, we use
WebSphere 6 JDK to make
it easier to recognize the use for this IBM JDK. Be sure to the
set the
JRE home directory to the
/java folder under your
WebSphere 6 install. You
should not
try and configure any JDK here, WebSphere is known to run on a
heavily modified IBM JDK and running it with Sun's JDK, JRockit,
GCJ or other JDKs simply will not work.
After you are done setting up the new JDK, select the
OK button. Then click the
dropdown box and be sure to select our new
WebSphere 6 JDK that we
just configured and click the
OK button one more time
to close the preferences window.
The WebSphere 6 connector is now ready for use.
|
7.
Enterprise Project Deployment
This section will demonstrate how to deploy an Enterprise project
to WebSphere 6. An Enterprise project has been chosen
instead of a Web project because WebSphere will not load a web
archive (WAR) that is not contained in an enterprise archive
(EAR). Although you could have WebSphere automatically
generate a default EAR for you, during loading, this will
interfere with MyEclipse's deployment and debugging
features. So, you will need to create the enclosing EAR
yourself, by specifying an enterprise project in MyEclipse, that
references your Web and/or EJB project(s). This
example will use one Enterprise project and one Web project, as
shown below.
First, the
MyEclipse Deployment
Manager must be launched by clicking the button on your toolbar
as shown in the screenshot below.
To deploy the project to WebSphere 6, select your project from
the
Project dropdown and then
click the
Add button which will
launch the deployment creation dialog. Next, select WebSphere 6
from the
Server dropdown After
selecting the server, be sure to select
Packaged Archive and then
click the
Finish button.
You can now see the deployment that was created in the
deployments window. To close the Deployment Manager, click
OK.
At this point, you need to start WebSphere 6 up by clicking
the application server button in the toolbar, selecting WebSphere
6 and then
Start.
You will see the WebSphere 6 startup messages in your console as
shown below. Before continuing, be sure to wait for the
Server server1 open for
e-business message as before.
|
8.
Enterprise Project Installation
Now this is a step many people get confused about, the deployment
of your application
into WebSphere. The
confusion stems from the fact that we just walked you through the
Deployment step, so why
are we doing it again? The reason for this is that MyEclipse's
deployment is a process of building a deployable EAR and moving
it out to the server. After that, it depends on the server
if the application is done being
deployed or not.
WebSphere requires that an application be installed using the
Administation Console.
Begin by opening a MyEclipse Web Browser view to navigate to your
WebSphere administrative console. You can do by clicking the Web
Browser button in your toolbar as shown below. After the Web
Browser view is up, type the following URL into the address bar:
http://localhost:9060/ibm/console/secure/logon.do,
the page shown below should display.
NOTE: if you have a
problem with the page displaying or get a page not found, make
sure that 1) the server is running from our previous step and 2)
when you originally ran the Profile creation wizard, you changed
all the ports back to their default settings and didn't leave
them as the autodetected ones. If you left them alone and didn't
change them back, you need to enter in the port here instead of
9060.
After you have logged into the administrative console, expand the
Applications group on the
left and click the
Install New Application
link. You'll notice the panel on the right will change to allow
selection of a new application to deploy.
Be sure
Local file system is
selected and click the
Browse... button.
Navigate to the location that MyEclipse deployed your EAR, which
will be the directory named 'installableApps' under your
WebSphere profile. If you forget, you can also open the
deployment dialog in MyEclipse and select the deployment in
question to see the Location.
Once you have selected the EAR that MyEclipse deployed, click the
OK button.
Now that you have the EAR ready to deploy, click the
Next button...
WebSphere is going to ask you many questions about how you want
this application deployed, because we are using this install of
WebSphere for development, we want to make sure to select the
Enable class reloading
feature, this will allow WebSphere to detect changes in the files
and reload them as we work in MyEclipse real-time so there
will be no need to stop/restart the server every time you make a
change.
When you are ready, click the
Next button...
Next, you need to map your application to your server. Be sure to
check the modules of your deployment and select
Next...
It's basically the same for the virtual host to module mapping;
check the box next to your application again, then select
Next...
Next, you need to wait while WebSphere deploys the
application into server1. As the message below shows, if
there are EJBs involved in this deployment the deployment process
itself can take serveral minutes. Please do not continue or click
anything until the deployment is done.
When the deployment is done, you should see a message similar to
the one marked below: "
Application <YOUR
APP> installed successfully" where
<YOUR APP> is the
name of the application you deployed. In the example case,
the application is
WSTest. After the
deployment is done you need to save this new configuration change
to the master configuration which can be done by
clicking the
Save to Master
Configuration link as shown in the image below.
You are then prompted to confirm the save, please do by clicking
the
Save button...
To determine if the application was installed correctly, expand
the
Applications list and
note that your application is now listed. Also notice that it has
a red X next to it (as shown in the image) indicating that it is
not running. The next step is to start your application by
selecting the checkbox to its left and pressing the
Start button.
You should get a status message above the application listing
that says that your application has started up successfully. If
you have errors and it is unable to startup, check the server log
files as well as the MyEclipse console to see if the server
provided a diagnostic message.
|
9.
Enterprise Project Debugging
Now that you have a successfully deployed a project, you can now
start debugging your application using MyEclipse. The way this is
handled in MyEclipse is totally transparent so there is no need
to try and attach a debugger to the running WebSphere application
server. When an application server is started by a MyEclipse
connector in debug mode, the debugger is automatically hooked
into the running application server, so all the you need to do is
start setting breakpoints and then excercising your application
functionality.
The screenshot below shows the debug perspective and how it would
look if you had set a breakpoint in the JSP editor, and then
browsed to the page in order to hit the breakpoint. In the bottom
right corner is the JSP editor with the breakpoint on line 3 hit
and highlighted in light blue, in the bottom left corner is our
Web Browser view that we navigated to the page with in order to
hit the break point. In the upper left window is the stack trace
at this breakpoint and in the upper right window are the
variables view visible from the current execution stack.
|
10.
Optional: Enterprise Sync-on-Demand
Development
This section covers one of the biggest advantages of developing
with MyEclipse, that is Sync-on-Demand deployment, or
hot-deployment. Whenever you use an
Exploded deployment type,
MyEclipse synchronizes every file change in your project to all
of its deployments, instantly. ; if the server is
configured to reload changed files (remember we did this above
with WebSphere?) then it will reload the changed file and you
don't need to start and stop the server constantly every time a
change is made. Earlier we used a
Packaged deployment with
WebSphere because EAR archives are the only deployment type that
WebSphere can install. So, in order to be able to install
to WebSphere (and other application servers that require
installation of EARs) and still gain the benefit of
Exploded deployment, we
need to do a little trick to "overlay" an exploded
deployment ontop of an existing installed application.
The first step is to stop the application server using the
toolbar button that you used to start it. Then, open the
deployments dialog and be sure to select your project from the
Project dropdown and
choose the packaged deployment that you added earlier,
then select it and hit the
Remove button. While this
will delete the EAR that was exported into the installableApps
directory in your profile, it will have no effect on the
application that has now been copied and installed in the server.
After removing our deployment, click the
Add button...
Setup a new deployment almost identical to the previous one
except this time select
Exploded Archive, you
will notice the warning below about an existing deployment on the
server, here you can select to
Delete remote resource
before deployment in order to replace the contents on the server
with our new exploded deployment. Be sure to click
Finish when you are done.
NOTE: In MyEclipse we
provide the ability to simply overwrite all conflicting
resources during a deployment so you do not have to delete
them. This is also a setting that would work fine for this
dialog.
Now we see our new deployment setup, go ahead and click
OK.
Now the rest of your development will follow as was outlined in
the sections above. You need to start WebSphere back up and you
can get back to work. The difference you will notice now is when
you make changes to files (and have
Project > Build
Automatically checked) they will immediately be copied out to the
server. For example, load up a JSP page, and then flip back to
your editor and make a change and save it. Now flip back to your
browser and hit refresh, you'll notice the change is already
reflected on the server. The same applies for Java files as well,
although you may need to wait (and watch the console messages) for
the application server to reload them before you try and execute
them. The class reload detection typically has a delay
of a few seconds.
|
11.
User Feedback
If you have comments or suggestions regarding
this document please submit them to the
MyEclipse
Documentation Forum.
|
|