Oisín Hurley's Weblog

old dog, new tricks

Developing Web Services with Eclipse and CXF

with 6 comments

Update:This is the most searched-for entry on my blog, and I have to warn you it is WAY OUT OF DATE! So skip it – and someday I’ll write an update and link it from here…

I’ve seen more than one instance of people scratching their heads over the CXF tools in the Eclipse STP project, so it was time to go back to the drawing board and take a new approach. Now we’ve finished our first cut of what we think service creation tools should look like, we would like you to check them out and tell us what *you* think.

What have we done differently? Well, the code is now completely based on Eclipse WTP frameworks, rather than having only a passing integration with them. If you’ve ever done Axis2 web service development with Eclipse, then you should be able to get familiar with this really, really quickly. You can create CXF web services from WSDL, or from a Java class or interface. The tools support selection or extraction of an SEI if you are starting from a class. JAX-WS annotations get added automatically, and you set preferences on how you would like them to be defaulted. And to help with getting those annotations right, we’ve added some validation – you’ll get error markers if you incorrectly combine annotations.

If the alphabet soup in the previous paragraph has made you sleepy, a few examples of the tools working might help to perk you up. Check the silent movies.

So, where can you get the code? For a start, we’ve bundled it in the FUSE Integration Designer Preview. We’ve also decided to contribute the code to the Eclipse WTP project, where it can be warm and cosy and be accessible for all. You can find the proposal for the WTP Incubator attached to Eclipse bug #248630. Also attached to that Eclipse bug is a zip file that contains the plugins you need to get running. Unzip this into your eclipse directory, restart your workbench and you should be good to go.

Try it out and let me know how you got on. You can leave feedback here on this blog, add a comment to the Eclipse bugzilla, send an email to users@cxf.apache.org (best place right now), or drop in on the FUSE Tools Forum.

Advertisements

Written by oisinhurley

September 26, 2008 at 3:58 pm

Posted in service creation

Tagged with , ,

6 Responses

Subscribe to comments with RSS.

  1. Hi

    I tried to install the FUSE Integration Designer Preview, without much success though. First try, with eclipse 3.4, I got a message that it couldn’t resolve the dependency. It’s alright, as in the instructions it tells explicitly to use 3.3.2.
    Ok, I got the 3.3.2, followed all the steps that was in the instructions, added all the sites, and after it started the download and the installation, and got an error, and now when I go to the install window it just shows: ” —– Current configuration problems —–“. Gonna try to reproduce the problem… is there any forum/maillist I can discuss this?

    Emerson Cargnin

    November 2, 2008 at 1:53 am

  2. Hi, I re-do the process and now it worked, going through the tutorial, thanks!
    emerson

    Emerson Cargnin

    November 2, 2008 at 2:38 am

  3. Hi

    I tried to install STP in Europa and then I tried with Ganymede, but I am not able to install the same properly. As mentioned in the http://wiki.eclipse.org/STP_Service_Creation_getting_started, I have downloaded all the dependancies and tried to install Soa tool Platform. But unfortunately, I am not able to create a web service as shown in http://download.eclipse.org/stp/documents/europa/stp_europa_servicecreation_jaxws.htm. Is there any change in the steps.

    In Eclipse 3.4.1, there is an option to install SOA development. When I tried to install in that way, I am getting annotation error and SCA error. Could you please tell me how to install STP in Eclipse Ganymede/Europa.

    Thanks and Regards
    Ann

    Ann

    February 16, 2009 at 11:46 am

  4. Hi Ann,
    If it’s your use-case to develop JAX-WS Web services, then you should move away from the ‘old’ STP approaches and instead use the JAX-WS offering in the Webtools incubator: http://wiki.eclipse.org/JAXWS

    oisinhurley

    February 16, 2009 at 3:18 pm

  5. I’ve been trying for the past week to use JAX-WS Tools to build my webservice (uses complex data type) but I cannot get it working. I’ve tried Eclipse 3.4 and 3.5.

    There’s no installation/configuration instructions so I’m really trying out things blind. 😦

    Do I need STP to use JAX-WS Tools? My Eclipse does not have Apache CXF option. How do I enable it?

    So sorry to ask this on your blog. I tried to post on Eclipse NewsPortal – eclipse.webtools.incubator but it kept asking me to login everytime I try to post a new message (even though I have login).

    I’m embarking on web service implementation and would very much like to use this tool…

    Masrudyn Main

    May 15, 2009 at 9:55 am

  6. Hi Masruyn,
    No, you don’t need STP to use the JAX-WS tools, you just need to have Eclipse WTP installed. This comes in the box if you download the JEE package distribution from the Eclipse download page.

    Apache CXF is something that you need to download and install separately. Then you link the two through the Eclipse preference page. The wizards will prompt you as you go and remind you to set the settings.

    I agree that the newsgroups are a nuisance – if you are going on a web service implementation path, then I suggest that you go to

    https://dev.eclipse.org/mailman/listinfo/wtp-incubator-dev

    and sign up for the mailing list! You’ll get announcements there, etc. You should also sign up
    for the cxf-users mailing list at

    http://cxf.apache.org/mailing-lists.html

    Finally, have a read of the wiki at http://wiki.eclipse.org/JAXWS — these are great places to get the information you need to be successful in your implementation!

    oisinhurley

    May 15, 2009 at 6:23 pm


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: