Insert Witty Irony Here

vince kraemer's Weblog


20080320 Thursday March 20, 2008

My 15 minutes are up...

I took part in an interview with Geertjan for JavaLobby. The interview went live earlier this morning, but now my fifteen minutes are up.

It was a rush.

(2008-03-20 09:20:20.0) Permalink

20080319 Wednesday March 19, 2008

Test agent evolution

While I have been working with the build infrastructure, I have been making some changes to the test agent. Most of them are pretty minor tweaks and bug fixes.

The most significant change that I have made is on the main "screen". In the past, all the shortcut buttons, like 'ACK', 'CANCEL' and 'BYE' were always enabled. These shortcuts are now enabled and disabled based on the selected item in the history list.

The state of the shortcuts when a request message is selected.

The state of the shortcuts when a response is selected.

I have also extended the Converged Servlet Application to open the test agent automatically, when it is deployed. It isn't much. I hope that it will save users a click or two.

I have also spent some time fixing bugs and doing some clean-up, based on the output of FindBugs.

(2008-03-19 17:02:49.0) Permalink

20080318 Tuesday March 18, 2008

Got Sunray? Need Hg?

I helped a co-worker configure his environment (a Sunray) to allow him to clone the NB repository. It actually wasn't very hard. The instructions are in the Netbeans wiki: http://wiki.netbeans.org/HgAndSunrays.

(2008-03-18 13:18:39.0) Permalink

20080317 Monday March 17, 2008

Directory Deployment from NetBeans to GlassFish

I published a teaser entry, where I demonstrated the effect of a code change related to directory deployment that I had pushed a couple days before. Since the entry was exposition "thin", I have gotten some questions about it...

After reading through the questions, I figured it would be easy to google up some reference and post them....

Boy, was I wrong!

I hope that this entry will answer the questions and be a "hit" for folks interested in NetBeans, directory deployment and GlassFish. The synonym for directory deployment in the JBoss user community appears to be 'exploded deployment'. The synonym for directory deployment in the WebLogic user community appears to be 'deployment of exploded archive directories'.

When a project is directory deployed into a web container, like Tomcat, or an app server, like GlassFish, a lot of optimizations can occur.

  1. packaging the module or app becomes unnecessary.
    No archive is created.
  2. unpacking the module or app becomes unnecessary.
    No archive needs to be read and/or transfered and exploded.
  3. JSP changes are detectable, if the IDE forwards source changes into the 'deployment directory'.
    NetBeans pushes changes to html and jsp files to the deploy directory. Both servers detect the updates when the page is requested and do the necessary work to display the current content.

NetBeans supports directory deployment of Web Application projects to Tomcat and GlassFish. This has been available for quite some time. I found this reference that alludes to directory deployment with NB 3.6 and Sun Java System Application Server 8.0. NetBeans was extended to support directory deployment of ears and ejb-jars onto GlassFish V2 in the NetBeans 6.0 release.

The other server integration plugins for NetBeans 6.0.1 or NetBeans 6.1 (recently beta'ed) do not support directory deployment.

The recent changes that improve the performance of 'Run Project' and 'Run File' for a JSP file change in web applications and web applications embedded in an enterprise application are available in nightly builds of NetBeans 6.1.

I hope to integrate some of the ideas from a blog entry by JFA in the next few days. This will make even more web-app change scenarios faster.

(2008-03-17 07:50:53.0) Permalink

20080312 Wednesday March 12, 2008

Some Directory Deployment Improvements

Old stuff... ant output from second Run File on a jsp... with no code change in the jsp (or anywhere else in the web app)...

init:
deps-module-jar:
deps-ear-jar:
deps-jar:
library-inclusion-in-archive:
library-inclusion-in-manifest:
compile:
compile-jsps:
Incrementally deploying WebApplication137_localhost:4848_server
Completed incremental distribution of WebApplication137
Incrementally redeploying WebApplication137_localhost:4848_server
Start registering the project's server resources
Finished registering server resources
moduleID=WebApplication137
While redeploying, trying to stop the application in target server  completed successfully
While redeploying, trying to remove reference for application in target server  completed successfully
deployment started : 0%
deployment finished : 100%
Deploying application in domain completed successfully
Trying to create reference for application in target server  completed successfully
Trying to start application in target server  completed successfully
Deployment of application WebApplication137  completed successfully
run-deploy:
Browsing: http://localhost:8080/WebApplication137/index.jsp
run-display-browser:
run:

BAD! The IDE is doing a lot of work that is not necessary that I have to wait for it to finish....

Recent changes.

New Stuff... ant output from second Run File on a jsp... with no code change in the jsp (or anywhere else in the web app)...

init:
deps-module-jar:
deps-ear-jar:
deps-jar:
library-inclusion-in-archive:
library-inclusion-in-manifest:
compile:
compile-jsps:
Incrementally deploying WebApplication137_localhost:4848_server
Completed incremental distribution of WebApplication137
run-deploy:
Browsing: http://localhost:8080/WebApplication137/index.jsp
run-display-browser:
run:

SWEET! The IDE avoided doing the unnecessary work, so I can be more productive!

New Stuff... ant output from second Run Project on an Ent App projects that has the web app from the previous tests in it... after the user has changed some content in the JSP....

pre-init:
init-private:
init-userdir:
init-user:
init-project:
do-init:
post-init:
init-check:
init:
deps-jar:
deps-j2ee-archive:
init:
deps-module-jar:
deps-ear-jar:
deps-jar:
library-inclusion-in-archive:
library-inclusion-in-manifest:
compile:
compile-jsps:
do-ear-dist:
Building jar: /export/home/vkraemer/NetBeansProjects/WebApplication137/dist/WebApplication137.war
dist-ear:
pre-pre-compile:
pre-compile:
do-compile:
Copying 1 file to /export/home/vkraemer/NetBeansProjects/EnterpriseApplication158/build
post-compile:
compile:
pre-dist:
do-dist-without-manifest:
do-dist-with-manifest:
Building jar: /export/home/vkraemer/NetBeansProjects/EnterpriseApplication158/dist/EnterpriseApplication158.ear
post-dist:
dist:
pre-run-deploy:
Incrementally deploying EnterpriseApplication158#/WebApplication137_localhost:4848_server
Incrementally deploying EnterpriseApplication158_localhost:4848_server
Completed incremental distribution of EnterpriseApplication158
post-run-deploy:
run-deploy:
Browsing: http://localhost:8080/WebApplication137/
run-display-browser:
run-ac:
run:

SWEET! The IDE was busy, but the time to do all this "work" was almost zero seconds. We may be able to eliminate some of the work from this case, too.

(2008-03-12 13:32:39.0) Permalink Comments [1]

Calendar

« March 2008 »
SunMonTueWedThuFriSat
      
1
2
3
4
5
6
7
8
9
10
11
13
14
15
16
21
22
23
24
25
26
27
28
29
30
31
     
Today

RSS Feeds

XML
All
/5 in 5
/Compile Time
/Ease of Evolution
/General
/GlassFish
/Gotchas
/Java
/Music
/NetBeans
/Sailfin

About Me

Photo of Vince Kraemer
Short Bio

Search

Links


Navigation



Subscribe with Bloglines Add to Technorati Favorites

Referers

Today's Page Hits: 283