Skip to Content

SAP’s decision to use Eclipse as their RCP for the NetWeaver Developer Studio (NWDS) has been a great decision for us developers. Eclipse has been developed by IBM and was released as open source in 2001 and got a lot of attention in the developer community. One of the main reasons may have been that Eclipse was designed as a Rich Client Platform (RCP). A RCP is an application skeleton providing a plug-in framework that is used for building extensions. That said and by providing its own plug-in SDK out of the box, it becomes natural that Eclipse has always been a playground for developers. A lot of plug-ins have been build by the open source community using Eclipse itself. This gives you the ability to configure Eclipse to your special needs so that you don’t have to leave your favourite IDE for most of your development tasks. In addition Eclipse has a build in Software Update Service that guides you for the tasks of downloading and installing plug-ins and keeping them up to date with the latest versions.

Only a few weeks back the latest Eclipse IDE version 3.2 was released. Unfortunatly NWDS for NetWeaver 2004 and 04s are based on Eclipse 2.x wich was released back in 2004. Because of a major change in the plug-in SDK from version 2.x to 3.0 all of the new plug-ins for 3.x won’t work on the older releases. It’s of course the 3.x release where most of the plug-in current development happens but you will still find older plug-ins for the 2.x release on the net and a handfull of them are still maintained for both releases.

In this series of articles I want to show you how to extend NWDS in a clean and easy way using free or even open source third party plug-ins that I have found on the net. The version I’m using here is NWDS 6.40 (2.0.14) but it works the same way in the latest NWDS 7.0 for NetWeaver 2004s! Unfortunately SAP has disabled the build in Software Update Service so that we have to manual install our plug-ins.

But before we start to add our first plug-in to the NWDS we have to do some preparations that help us in our task.

Log output to console and debug mode

To get a little insight into what’s going on with NWDS and its plug-ins we are going to start it in debug mode with console output. Normally there should already exist a shortcut in your start menu with an additional “(Console)” in its name. If not create one.

The target field should read similar to this:
C:\Programme\SAP\IDE\eclipse\SapIde.exe -vm “C:\Programme\Java\jre1.5.0_06\bin\java.exe” -consolelog -debug

Starting NWDS using this shortcut will bring up a console window like this one:

image

Now we have a better look on what’s going on e.g. when a plug-ins throws an exception. You will find more information about the Eclipse runtime options on the Eclipse online documentaion.

Setting up an additional plug-in directory

Eclipse has the ability to load plug-ins that do not reside in the usual plug-in directory. This helps us from separating our extensions from the standard installation and will also give us the ability to have the same plug-ins for different NWDS installations on the same machine.

We assume NWDS is installed at C:\Programme\SAP\IDE\
Follow these steps:

  1. Create a directory where you want to store the Eclipse plug-ins. Let’s assume we take C:\plugins.
  2. Create a directory named “eclipse” in your in step 1 created directory.
  3. Create two directories with the names “features” and “plugins” in the directory created in step 2. This is where actual the plug-ins get stored.
  4. Create a directory named “links” in your Eclipse directory at C:\Programme\SAP\IDE\eclipse.
  5. In your newly created “links” directory at C:\Programme\SAP\IDE\eclipse\links create a text file named “.link”.
  6. Write the path to the newly created plug-ins directory into the file like this: path=c:/plugins

Be aware to use forward slashes even on Windows!
Now NWDS will look into the new created plug-ins directory at start up for additional plug-ins to load.

 

The first additional plug-in

The first plug-in I want to introduce here is Class Locator by Dani Kenan and Avner Linder. It will help you to find classes that are not in the current project’s classpath, automatically adds the location to the projects classpath and also adds the necessary import statement to your source. Writing applications for big frameworks like SAP’s Enterprise Portal you don’t want to miss this nice goody anymore.

To install Class Locator download the latest version from this location and unzip it to our newly created plug-in directory at C:\plugins\eclipse\plugins (the features directory won’t be used in this case). To active plug-ins you need to restart NDWS afterwards.

If the installation was successful you should now have an additional menu entry from where you can start a wizard to look up a class.

image

But before you can do that you need to set up the locations where you want Class Locator to search. A good start should probably the NWDS plug-ins directory (this time the original in the Eclipse directory) where the NetWeaver specific JARs are stored.

image

Now you can look up a JAR and its location by using the wizard or by selecting a class name and using the context menu.

image

Class Locator will show you all the JARs it has found where the class is included. Choose the one you need and Class Locator will extend the classpath of your project and will add the necessary import statement to the current active source.

You will find additional documentation for Class Locator here.

That’s all for now. Thanks for being with me and be sure i’ll come back with more plug-ins to show.

Update & Disclaimer: This blog was created during my time when I was not with SAP. The process described here is not supported by SAP. For any help and support please get on contact with the community of the tool in question.
To report this post you need to login first.

13 Comments

You must be Logged on to comment or reply to a post.

  1. Naveen Muthadi
    Thanks for a nice Blog.
    Could u also clarify watz the name of the filename in step 5??
    >>In your newly created “links” directory at C:\Programme\SAP\IDE\eclipse\links create a text file named “.links”.

    is it some name with .links extension??

    Cheers

    (0) 
    1. Oliver Kohl Post author
      Hi,

      from what i’ve seen it’s _only_ the extension that matters. You’ll find examples on the net with the filename “.link” and it works fine for me, but you can also name it like “myplugins.link”.

      ok

      (0) 
      1. Subramanian Venkateswaran
        Few corrections, especially for beginners:

        a) The filename is .link and not .links
        b) Make sure you extract the .jar files after you unzip the .zip file
        c) After extracting the .jar files place them, as Oliver has mentioned, in the respective folders i.e. features in features folder and plugins in plugins folder.

        Finally, thank you , Oliver for sharing with us this wonderful piece of information.

        Regards,
        Subramanian V.

        (0) 
  2. Francisco Villar Romasanta
    Thanks for this neat info. I have a small correction, the additional menu entry is not automatically visible. You first have to activate the class locator in “customize perspective” – “other”.
    At least for me this was the case (using SNWDS 2.0.16).

    Best regards,
    Francisco

    (0) 
  3. Anonymous
    This version has an important feature called “I’m feeling lucky”
    This feature helps correcting all the compilation errors in one click – by adding all the required JAR files to the project’s classpath.
    Thanks for Eyal Sinai for his contribution to the plugin!
    (0) 
    1. Oliver Kohl Post author
      Hi Avner,

      thanks for pointing out to that. I didn’t knew that someone from SAP is involved in Classlocator so thanks for your work on that.

      Best regards,
        Oliver

      (0) 
  4. Sujatha Vengaiah
    I am using 2.0.11. I followed the procedure as specified. Could nt get the additional menu entry. I tried Cutomize perspective also. Will this blog applicable for NWDS 2.01.11

    Thanks

    (0) 
    1. Oliver Kohl Post author
      Hi Sujatha,

      as far as I know all NW2004 versions should be based on Eclipse 2.1.2 so there should be no difference for using add-ons.

      If the menu entry doesn’t show up for you, try to customize your preferred perspective by:

      1. Right click on the tool button bar (some empty space)
      2. Click “Customize Perspective”
      3. In the tree view open node “Other”
      4. Check “Class/Jar Locator”

      Now the menu should show up for you too. But the Locator wizard is also available in the context menu when you right click in a Java source and if
      you first select the missing class it will insert it into the wizard automatically.

      Best regards,
        ok

      (0) 
  5. Zenghuan Shan
    I tried the classlocater 1.0.6 on NWS 7.1

    However, the wizard doesnt pop up after click on the menu entry.

    Btw, from my pc (with in internal SAP network), the  classlocater  1.0.8 can’t be downloaded  from Sourceforge at all (timeout)

    (0) 
    1. Oliver Kohl Post author
      Hi Zenghuan,

      please be aware that NW 7.1 is based on Eclipse 3.2 or 3.3 and old Ecplise 2 plug-ins usually won’t work anymore because of major changes in its plug-in architecture. I haven’t looked into any valid alternative for 7.1 because I don’t use it yet, sorry.

      Best regards,
        ok

      (0) 
  6. Neezaa Dee

    Hi Oliver,

    Nice Blog. A very easy tutorial for a beginner like me. Thank you so much for a such inspirational words. I’m motivated now.

    ND

    (0) 

Leave a Reply