Friday Mar 21, 2008

NetBeans 6.0.1 patch released, solves problem with outdated certificate

Patch released for NetBeans 6.0/6.0.1 fixes outdated certificate issue.

[Read More]

Tuesday Nov 06, 2007

Hudson, NetBeans, Findbugs and "Online IDE"

 Well, it's been a while ... but anyway, I'm back. Got through a couple of pretty good books in the meantime (Freakonomics, Joel On Software, Idioti na plavbe kolem sveta, ... ;O) ), but more important I have been playing with Yarda Tulach's online FindBugs plugin for NetBeans. I like the "Online IDE" approach a lot. If you use Hudson for building your project, it automatically builds your FindBugs results as well.

 Now when the data are computed on server, why would you need to compute them locally to be able to see them in your IDE together with the code? You don't ! It's enough to do compilation - it takes too long already anyway. So how to reuse the data from Hudson?

 Just use latest NetBeans 6 nightly, and install Find Bugs
Tasks for NetBeans.org
module from daily development update center -
then you will get smooth integration with Task List. Install the
module, open the task list window (Window -> Task List), select which project/s you want to scan and wait till the list of FindBugs errors is downloaded.

 Yarda's plugin worked only for NetBeans NBM projects, but I wanted to be able to use it for our WSIT project, which is part of Metro web service stack. Those projects are setup as a plain Java SE projects. So I enhanced the plugin with the ability to work for this type projects as well. The url to findbugs result is stored in 'findbugs.url' property in project.properties file, so you can use it for your project (and your Hudson) as well.

 When you use it, it looks like this:


Monday Jul 23, 2007

WSIT NetBeans modules Code Report

I just came across Ashutosh's blog about open source analysis using ohloh.net for WSIT and XWSS. Interesting info there. Worth reading.
So, of course I was tempted to try it for my open source modules: WSIT NetBeans modules. Some interesting info to mention here:

1. Codebase - 33122 LOC
2. Estimated Effort: 8 Person years

Hmmm, man, I am productive ;O) I'm the only one working on the code for little more than a year (with a few small commits coming from other NetBeans guys. I had a lot of sleepless nights working on the project with it's schedules trying to deliver the tooling story and the number seems to reflect that. Of course, the number is way too off, and the metrics used are always arguable, but looking at numbers of other projects which I know well and worked on (NetBeans, WSIT, Glassfish, ...), they usually reflect the reality quite well.

Anyway, enjoy the full report and if you find any interesting information there, let me know ;O)

Tuesday May 08, 2007

Lab is live at SDN

JavaOne 2007 hands on labs are live at SDN. Enjoy!

[Read More]

Monday May 07, 2007

Java and Microsoft Interoperability Hands On Lab

Hi,
time's up for this year's JavaOne. WSIT is there as well. Besides all technical sessions, you can also try things yourself.
Me, Sreejith A K and Fabian Ritzmann will guide you through Sun Java and Microsoft WCF interoperability step by step at JavaOne's Hands-on-lab session on Wednesday 9th:

3:50 PM - 5:20 PM LAB-3350 Make Java Technology and .NET 3.0 Interoperability Work With WSIT

If you don't plan to attend this year, or there's no place left, you can still try everything safe at home on your computer. The lab will be accessible online, and we'll provide a forum where we'll try to answer all your issues, questions, requests. Stay tuned, I'll post the necessary info here soon.

Friday Aug 18, 2006

Code coverage support in Netbeans

Recently while working on Netbeans support for the latest web services project WSIT which is a new generation of web services stack interoperable with Microsoft .NET and supporting latest WS-* standards and is going to be included soon in Glassfish, I had a need to write tests for underlying work with models of wsit configuration files or wsdl files - to be able to attach correct policy assertions to right places.

I was lucky, because exactly at that time, Mikhail Kondratyev together with a team, released first version of their Code Coverage Netbeans Plugin publicly for everybody to use at http://www.nbextras.org and java.net. And, it got me. I LIKE IT A LOT! Interested why? Read below...

Usually, when you write tests, you should try to cover the code as much as possible in a reasonable time. If you write some library, or APIs (whole NetBeans code is based on public-or-not APIs) it's even more important. Another usecase is when you have some code already written and you plan some large rewrite (better performance, architecture, ...). How do you make sure the functionality stays the same? Tests. There's no other way.

Netbeans has a very good JUnit test support for a long time, so this part is covered already - writing tests is pretty easy. Also, you are able to measure the test coverage in HTML form in a percentage by using some tools like Emma. However, look here:



This is how output of Mikhail's plugin looks like. Green lines mean your code has been covered by the latest running tests. Yellow lines (not present on screenshort) were marked partially, and white lines is the work you still need to do. After you install the module, enable coverage data collection by right-clicking your project and selecting Coverage -> Activate Coverage Collection. In this version, you need to do it everytime you restart NetBeans. See screenshot:



That's it! Really!

Afterwards, simply run your unit tests, or just one unit test, any way you want. When your tests pass, open any source code you have and enjoy the view ;O).
I didn't even have to use any code-quality scanning tools, and with help of this plugin I found unused methods after refactoring the code - would you believe you can't test unused private method? ;O)).

Go there: http://unitcover.dev.java.net

Download, and give it a try! And, let Mikhail or me know what do you think!

Martin Grebac



Friday Jul 21, 2006

Secure Conversation in your hands

Want to try WSIT and the new MS interoperable technologies? Kumar just posted a description on how to implement secure web service in Netbeans with Secure Conversation minimizing the required message flow:

How to configure Secure Conversation using Netbeans.

I plan to convert this into a flash demo like these: http://websvc.netbeans.org/wsit/ (see section Getting Started) for those who prefer watching videos. So, stay tuned!

Thursday Jul 20, 2006

Netbeans Beta2 is out!

Check it out: Netbeans 5.5 Beta 2 A lot of bugs fixed, even in the WSIT integration.

Tuesday Jul 18, 2006

Not able to use WSIT security?

Do you have Netbeans installed and still not able to use WSIT security features? If you have Enterprise Pack installed in your Netbeans 5.5, and in Security tab you always or often see the message "Security is supported only on Sun Application Server":



Make sure you follow these steps:

1. In Netbeans main menu, go to Tools -> Module Manager
2. In the installed modules list, select Identity Profile UI and click the checkbox next to it (Active column) to disable the module (as on screenshot below)


3. Restart Netbeans

There's a clash in Identity Manager and WSIT security UIs which will be solved for release, so please excuse the current inconvenience.

Monday Jul 10, 2006

Email traffic vs. Distributed teams

Back from vacation (this is for another full story, I'll write about it if I have some time ;O) ), I had to clean my email inboxes and folders somewhat (you know it - DEL is a powerful key on the keyboard ;O)).
However, doing the cleanup, I looked into my 'Sent' folder as well. I was surprised. Really. I sent 1808 email messages (!) from January 20 and July 1st (2006), which is less than 6 months (vacations, holidays included). And, it's just plain work email, no personal stuff or other web activities included (bug tracking, ICQ, ...) .

It really made me to step back and think about it a little. I always was against a huge number of email. But, working in a distributed team across different timezones (and I guess there's no better example of distributed team as WSIT), there's no other way to break the distance or to influence something. The word 'communication' is the most important part when working in distributed teams. Especially when you have to communicate with experts in different fields located in different timezones, or get them together to solve some higher problem.

Tuesday May 16, 2006

Interoperable Web Services & Netbeans

Hi everyone! I finally decided to give my input to the blogosphere as well.

Why now? Well, I am at Sun for 5 years, and all the time here I had a chance to work on really amazing and cool things. Current project gets even better: Project Tango.

Engineers in Sun working together with Microsoft engineers to make sure the web service stacks from both sides interoperate flawlessly, big number of web services specs implemented on both sides, with really cool pluggable JAX-WS technologies and architectures behind it. That's what WSIT (Web Service Interoperable Technologies) is all about.

And what's my role in all this? Tools enable technology. No change in here. From NetBeans side, I will make sure your NetBeans 5.5 (YES, Netbeans 5.5 Beta is out already!) installation gives you the most productivity when developing WSIT enabled web services. Check it out: http://websvc.netbeans.org/wsit/ and http://www.netbeans.org.

It's not just words, it's not just slideware, it's not just flash demos (even though you find all of these visiting the sites above).
Ramesh Mandava (Ramesh.Mandava@Sun.COM) and Ana Lindstrom (Ana.Lindstrom-Tamer@Sun.COM) from the team, altogether with me - Martin Grebac (Martin.Grebac@Sun.COM), are giving everybody a chance to try it himself at JavaOne conference this year (http://java.sun.com/javaone/), in our Hands-on lab: Developing Interoperable Next Generation Web Services with Project GlassfishSM, Netbeans™ IDE & WSIT

Want to know more? Visit:
http://websvc.netbeans.org/wsit/
http://wsit.dev.java.net/

Stay tuned! More to come!
MartinG