MyEclipse Logo
 

MyEclipse WebSphere Application Server 6.0 Tutorial

Outline

download the latest MyEclipse version

help and support
 

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: 

  1. 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.
  1. 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.