2006-11-27

Plugin to Firefox for CruiseControl

CruiseControl is an excellent build server available here. I like to use it since it can handle most usage scenarios and since it's free. There is also a nice little plugin to Firefox here, that enables you to see status of the build server at a glance and also to execute specific commands like starting a build. The commands are sent using JMX and I've discovered a small error in the plugin that unfortunately means that it doesn't work with the latest version of CruiseControl. It's simple to fix though, so here's the fix:

Find the file cc.js that should be in a folder with a path similar to this one:

C:\Documents and Settings\mno\Application Data\Mozilla\Firefox\
Profiles\g4md1gst.default\extensions
{8C2AEDBC-6332-41c5-935D-1948541DCD56}\ chrome\cc\content\cc

Find the definition for the function ccSelectMenuProject(projectName, action). Then edit the line:

var url = this.prefs.jmxUrl+"/invoke?template=identity
&operation="+action+"&objectname=CruiseControl+
Project%3Aname%3D"+projectName;

So that it instead looks like this:

var url = this.prefs.jmxUrl+"/invoke?operation="+action+
"&objectname=CruiseControl+Project%3Aname%3D"+projectName;

Now the JMX commands execute succesfully, however the plugin still parses the output wrong and complains. This isn't critical though, maybe I'll fix that in another post.

2006-11-23

Weblogic 9.2 running Ant and JUnit

In order to get junit working, when using command line builds with ant, just do the following:

Edit ant.bat in C:\bea\weblogic92\server\bin and add the two following lines:

set LOCALCLASSPATH=%LOCALCLASSPATH%;%ANT_HOME%\lib\ant\ant-junit.jar
set LOCALCLASSPATH=%LOCALCLASSPATH%;%ANT_HOME%\lib\ant\junit.jar


They should be inserted on line 80, right after:

set LOCALCLASSPATH=%LOCALCLASSPATH%;%ANT_HOME%\lib\ant\ant-launcher.jar


2006-02-01

There should be no spaces in set

Just a quick note... whenever scripting .cmd or .bat files remeber that when seting variables like:

set myvar=myval

There must be no spaces around the '=' sign...

For example

set myDir = c:\temp
c:
cd cd %myDir%
del /S /Q *

will delete everything on the C: partition ...
Changing the first line to

set myDir=c:\temp

makes ALL the difference in the world.
Don't ask me how I figured this little nugget out, just thank yourself that it was me and not you.

Oh, by the way, this is on w2k3 server, so it's not impossible that another version of wintendo behaves differently.

2006-01-11

Powerbuilder, where sanity comes to an end

Powerbuilder...

Just listen to that name for a moment. Even trying to say it gives you this sick feeling. Even if you have no idea of what powerbuilder is it just sounds lame. Turns out that reality really is stranger than fiction. Tools with the word "power" in them usually turn out to be anything but powerful.

So let me introduce you, Powerbuilder is a RAD tool. Something like Delphi or Visual Basic I guess. Without going into a turf war let me just say that I would be surprised if anything sucked harder than powerbuilder.

Right now I'm in a situation where a Custom Powerbuilder Application, let's call it Cpa is supposed to call a webservice on a Weblogic Integration server which in turn routes this to a .Net application.

Now working with webservices in WLI is actually excellent. I thought that Weblogic Workshop would suck hard with this as well, but it has actually been performing quite nicely. Alot more reliable than Visual Studio with ASP.NET that's for sure.

WLI also handles complex xsd's with ease. In a previous post I detailed visual studio .net 2003 and it's inabilities with xsd's, especially when it comes to "xs:token" ...

In comes powerbuilder...with full support for Web services they say.
However, not only does it not support complex wsdl's it also has this super nice feature, where if you happen to define a http get or post binding in your wsdl file it will not parse it and dies. Seriously, I've spent the last few hours helping a Powerbuilder developer call my web service. Hearing him complain about how WLI generates faulty or overly complex wsdl files.

Finally I located the error. Removing the lines regarding HTTP Post and HTTP Get bindings fixed everything and Powerbuilder works like a ch..err car without gas, it's possible to make it move forward, but slow as hell...

So, the tip of today. Don't ever use powerbuilder, and if you have to remember to strip your wsdl files of any other binding than SOAP.

2006-01-03

So i thought that Weblogic sucked...

That was until I tried .Net... Oh my god.

I've been using Weblogic Integration lately. It has it's problems, but it's actually quite ok as long as you don't stray to far from the path defined for you.

So I needed to use Visual Studio. F*ck me! One might think that a development tool and a framework "built with support for Web services from the start" would actually have support for web services... And it does, almost. BUT IT DOES NOT HANDLE INCLUDE! Shure, import works, but do you have any idea how annoying it is to refactor 10 xsds from include to import. That changes all the namespaces which in turn changes all the XML beans that BEA generates. Also, quite naturally that ruins all the transformations so one has to do them all over again. Not that it's hard work, but it's annoying.

Oh, and one would think that .Net would handle all the basic datatypes of XML Schema, such as token. Well think again!

The code editing in Visual Studio is... lacking, in each and every way. Better than Workshop but hey, that doesn't really say much does it.

Damn I miss IntelliJ Idea.

Oh. Visual Studio is missing one thing that makes it almost unusable. Proper support for CVS! Don't come writing about third party implementations that wraps CVS in SourceSafe like manner, because that's like wrapping your jewelry in used toiletpapper with barbedwire hooked up to the unforgiving end of electricity transformer station. I'm not going near that, not now, not ever.

2005-11-01

Design decisions

So weblogic clustering is... ehum actually I shouldn't have to say more, but I'm going to anyways. It's a beautiful thing, clustering that is... Weblogic, not so much.

Appearantly there are targeting issues with weblogic clustering. No, not the aim, fire, kill kind of targeting. The kind where you chose on which servers your resources are deployed. It's funny that such a rock solid implementation of an exhaustive and well designed framework would have issues at all, but it does. Resources like portals, connection pools and queues need to not only be deployed correctly and on your server of choice, but rather on a specific pattern including the weblogic admin server in some but not all entries.

Naturally one might wonder how I came of this information. Well the guy who originally set our domain up kinda just shook the box around and was really happy and pleased with the way all the pieces fell out. This today has the side effect of lost session data, class not found exceptions and other problems occuring in such random times and places that halloween seemed more real this year. BEA in their infinite wisdom does have the solution available online, tucked away where only google can find it. Nice that the advanced console has features to detect and repport the very well known configuration errors leading to this issue.

Cluster me sideways, Batman, Weblogic has faults? Not so, little Robin, meerely unimplemented feautures and unfinished bug-fixes.

2005-10-21

Weblogic

Oh Weblogic why are you so lightning fast? Why is your API so great? How come not all of mankind uses wlwbuild? When shall all other tools understand that it is cool to copy .jar files to every directory?

...

I hate wlwbuild, and I wish I could find the right rubberchicken to wave infront of weblogic as to get maven to build everything instead. Oh, and I wish someone would hand me a weblogic pageflow + .ejb -> spring + hibernate automatic conversion tool.

Usage of Flock

Well... I'm using Flock. I guess I'm just following the flock...

Not too impressed yet though...kinda used to my FF, but I'm gonna give it a try and see what happens.

First Post

I guess if I was a Slashdot-whore I'd be proud...

Just kidding, this is a lame first post to this blog. Something to get me started, let's see how long it takes before I get bored.