Tuesday, September 29, 2009

Server timeout for maven release:perform or site:deploy

I just wanted to release a piece of software I'm working on when I encountered a wall. Big, high and not very talkative wall - read timeout. I thought maybe the configuration of the server (and Web DAV) I described in this post has changed? No way - everything is like it was. The only thing that has changed is Maven version from 2.0.9 to 2.2.1 (where you don't have to define DAV extension in the build part).

Fortunately I also had my old environment where it worked (I meanMmaven 2.0.9). I noticed that the full build takes over 2 minutes while on the new Maven I get the timeout after 1 minute and few seconds. This way I realized that maybe increasing the timeout value will help. IT DID!!!

So how to do this? It's simple - just add:
      <timeout>120000</timeout> <!-- your timeout in milliseconds -->
in the MAVEN_HOME/conf/settings.xml file and restart your Maven task.


Tuesday, September 22, 2009

My daily WTF

I was just slapped but web application: "Your password must be different from the 12 previous passwords".

Very "secure" (obscure) system forcing me to have my original password (of value "password") plus additional 12 passwords of values "password1", "password2", etc. On the other hand there is no other policy requiring me to have at least one digit or capital letter. The only one is that my new password has to be different than 12 that I had before.


Sunday, September 20, 2009

Add-in Express™ - a great tool for tiny price

Picture (c) Add-in Express™
I recently had to develop Internet Explorer plugin that had had to be compatible with versions 6, 7 and 8 of this browser. I searched the net a bit and I found a lot of solutions to do this. The best (if not the only one) solution is to implement Browser Helper Object (BHO). The problem with doing it manually is that it was designed by Microsoft which means that even if implementing it is easy you have to store zillions of information in the Windows registry to make your application work. This, on the other hand, is not that easy as you have to know exactly what and where to store, how to generated COM classes' GUIDs, and if it's not enough this kind of work is not testable or debugable.

Of course, it's easy to find some ready solutions with demo how to register all objects, etc. Another problem with this is that all the documentation from MS or from opensource community is pretty old and irrelevant. For example some example plugins I found worked out-of-the-box, however I had some special needs that were not addressed and that I couldn't find any documentation for.

Let's try the other way
In the previous paragraphs I forgot to mention that the software I was up to develop had to be delivered in two days (I mean the demo showing that it's possible to develop such plugin at all). This way I didn't have time to dig into the COM docs and BHO registration options. I found Add-in Express™ plugins for Visual Studio. My obvious choice was Add-in Express™ 2009 for Internet Explorer® and Microsoft® .net (AE4IE).

With this tool I achieved more in 5 minutes than with Microsoft and opensource documentation in two days. It's not an exaggeration if I say that every developer is able to create at least working skeleton of IE plugin in 15 minutes. AE4IE has excellent documentation and is extremely easy to use. ROI is obvious and very quick as this tool gives a great quality for the price it costs.

With AE4IE templates for Visual Studio you not only create plugins in 5 minutes. This tool also creates the whole project structure as well as the Setup project that enables your users installing the plugins in the user-friendly manner. And it takes only few clicks!!! I love it.

It saves a lot of time and hard work of digging into MS documentation or reading (and buying) books on BHO/COM subjects.

Another good point is that developers are given pure Microsoft API such as IWebBrowser2 - this way you gain full power over your plugin and don't have to worry about COM specification and Windows registry configuration.

What about the support
Add-in Express™ team replies and solves problems very quickly and professionally. There is a special forum where you can find answers for many real-life questions and find solutions to common problems.

Extremely useful thing is also having a technical blog of Add-in Express™ team where they present new features and explain how to solve advanced issues (e.g. with sharing data between COM objects).

I'm very happy with this tool and would recommend it to every small or big company that has to develop IE plugin. You will never do what they did for such a small amount of money. The whole purchasing procedure takes 5 minutes and after another 15 minutes you have your plugin ready. The only remaining thing to do is to implement the business logic. How cool is that?

DISCLAIMER: I have no business connections with Add-in Express™ company and my review is not a commercial break