maanantaina, tammikuuta 16, 2012

Change XPages build to automatic build

By default Domino Designer (DDE) does the XPages build during every save. This is great, but only when the number of the builded elements are low. As the project grows, the time to do the build takes more and more time. As far as I know, when using the manual build, you don't know exactly how long the build takes time, right? You just save and wait some time so that the server is ready? Correct me if I'm wrong here.

Second "problem" (at least a personal one) is that I'm using a lot (read LOT) of ctrl + s combination. This causes a great number of unneeded compiles and causes just extra work on server side. We have also found out that this also causes some problems on other developers, but I'll get back on this issue in future blog(s).

When changed to manual compilation mode, you can actually see some build indicator on screen. Some times the build takes only a few seconds, some times it takes longer. While server is doing the compilation phase, the application is not available and without any feedback you might think "what went wrong" if the application doesn't respond after hitting the broser's F5 button :)

When I changed the automatic build to manual mode I also started to use the ctrl + b key combination which is nice and quick way to do the compile without any mouse movement or so. However ctrl + b does something else, right? Yes bolds text and this is yet another problem. If you have an XPage open and you do ctrl + b, you get extra unwanted "style='font-weight:bold'" unformed XML tags to your source code and these also prevents from code to compile properly. Which is worce is that you don't even see these "tags" if you're using the design mode, they appear only in the XML source code.


Luckilly since the DDE is based on Eclipse, you can change every quick key combination. You can find them in Preferences ==> General ==> Keys. Easy !! I choose the ctrl + shift + b for build (which should be the default from my opinion).

Ei kommentteja: