tag:blogger.com,1999:blog-191624452024-02-20T15:41:26.909-08:00Chris Diaz Blog SpaceGibberish about work, play, programming, and whatnot.Chris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.comBlogger30125tag:blogger.com,1999:blog-19162445.post-27751688404300980822010-11-05T00:21:00.000-07:002010-12-25T20:59:28.004-08:00Installing GWT Developer Plugin in Firefox 3.6 for Linux<div><div style="text-align: left;">If you are developing GWT web apps on a Linux system with Firefox 3.6+, then you might have been prompted to install the GWT Developer Plugin when trying to debug your app on Firefox (see image below).</div></div><div style="text-align: left;"><br /></div><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_9rCaC1oajjjyKcLxDF-PZSJ9a6L7O0y3cppu6pxUpM44-Ni25WaLseZrvrIUZv0qtzg0C_m_Dm4kLi5JFL9m22NKJrVR3Zh9jHiyhOjCR097cDAaQ7RGl3nH_KiHRceoivT1Bw/s1600/GWTDevPlugin.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 138px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_9rCaC1oajjjyKcLxDF-PZSJ9a6L7O0y3cppu6pxUpM44-Ni25WaLseZrvrIUZv0qtzg0C_m_Dm4kLi5JFL9m22NKJrVR3Zh9jHiyhOjCR097cDAaQ7RGl3nH_KiHRceoivT1Bw/s400/GWTDevPlugin.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5535968570095365602" /></a><div style="text-align: left;"><br /></div><div>The problem happens when you try to install the plugin and restart Firefox - only to be prompted to re-install the GWT Developer Plugin again.<br /><br />It seems like the latest Plugin on Firefox 3.6 requires the <span class="Apple-style-span">libnspr4.so.0d</span> library and Mozilla Firefox 3.6+ only provides <span class="Apple-style-span">libnspr4.so</span><span class="Apple-style-span">.</span><span class="Apple-style-span"> </span><span class="Apple-style-span">To solve this problem, simply locate the library and create a sym-link. For example, as root, execute the command:</span><div><span class="Apple-style-span"><br /></span></div><div><span class="Apple-style-span">sudo ln -s /usr/lib64/libnspr4.so /usr/lib64/libnspr4.so.0d</span></div><div><span class="Apple-style-span"><br /></span></div><div><span class="Apple-style-span">Then restart Firefox, install the GWT Developer Plugin, and then restart Firefox once more. You should now be able to debug your GWT web app!</span></div><div><span class="Apple-style-span"><br /></span></div><div><span class="Apple-style-span">Note that the location of the </span><span class="Apple-style-span">libnspr4.so</span><span class="Apple-style-span"> library differs in each Linux distro. But here are a few common folders where it might be</span></div><div><span class="Apple-style-span"><br /></span></div><div><span class="Apple-style-span"><span class="Apple-style-span" style="font-family: 'courier new'; ">/lib/</span></span></div><div><span class="Apple-style-span"><span class="Apple-style-span" style="font-family: 'courier new'; ">/lib64/</span></span></div><div><span class="Apple-style-span"><span class="Apple-style-span" style="font-family: 'courier new'; ">/usr/lib/</span></span></div><div><span class="Apple-style-span"><span class="Apple-style-span" style="font-family: 'courier new'; ">/usr/lib64/</span></span></div><div><span class="Apple-style-span"><span class="Apple-style-span" style="font-family: 'courier new'; "><br /></span></span></div><div><span class="Apple-style-span">If you are unable to locate the library in one of the directories above, you can try finding it by executing on the command:</span></div><div><span class="Apple-style-span"><br /></span></div><div><span class="Apple-style-span">locate </span><span class="Apple-style-span" style="font-family: 'courier new'; ">libnspr4.so</span></div><span><span><br /><b>UPDATE</b>: The library should be provided in <span class="Apple-style-span" >mozilla-nspr-32bit</span> or <span class="Apple-style-span" >mozilla-nspr</span>.</span></span></div><div><span><span><br />Hope that helps some of you out! Leave me a comme</span></span>nt if you have any questions.</div><div><span class="Apple-style-span"><span class="Apple-style-span"><br /></span></span></div><div><br /></div>Chris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.com3tag:blogger.com,1999:blog-19162445.post-4430292352391284672010-03-10T23:09:00.000-08:002010-04-22T15:44:40.608-07:00Setting Up SmartGWT 2.1 and GWT 2.0 with Eclipse 3.5<span style="font-weight: bold;">Requirements:</span><br /><ul><li><a href="http://java.sun.com/javase/downloads/widget/jdk6.jsp">Java 1.6 or higher</a></li><li><a href="http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/galileosr2">Eclipse JEE 3.5 (aka Galileo)</a></li><li>GWT 2.0.3 Eclipse Plugin</li><li><a href="http://smartgwt.googlecode.com/files/smartgwt-2.1.zip">SmartGWT 2.1</a></li></ul><span style="font-weight: bold;font-size:100%;">Setting Up Eclipse Environment:</span><br /><ol><li>First, ins<span style="font-family:georgia;">tal</span>l Java and Eclipse like you normally would, setting up all the necessary environments (e.g. CLASSPATH, JAVA_HOME, etc).</li><li>Install the GWT Eclipse plugin by going to <span style="font-family:courier new;">Help > Install New Software...</span></li><li><span style="font-family:courier new;"><span style="font-family:georgia;">Press the <span style="font-family:courier new;">Add...<span style="font-family:georgia;"> button and enter the following URL: </span></span></span></span><code>http://dl.google.com/eclipse/plugin/3.5<span style="font-family:georgia;"></span></code></li><li><span style="font-family:georgia;">Check <span style="font-weight: bold;">Google Plugin for Eclipse 3.5</span> and <span style="font-weight: bold;">Google Web Toolkit SDK 2.0.3</span> and press the <span style="font-family:courier new;">Finish<span style="font-family:georgia;"> button.</span></span></span></li><li><span style="font-family:georgia;"><span style="font-family:courier new;"><span style="font-family:georgia;">Restart Eclipse after installing the GWT Eclipse plugin.</span></span></span></li></ol><span style="font-weight: bold;">Create a GWT Web Application Project</span>:<br /><ol><li>Go to <span style="font-family:courier new;">File > New > Web Application Project<span style="font-family:georgia;"></span></span></li><li><span style="font-family:courier new;"><span style="font-family:georgia;">Enter the Project name: <span style="font-weight: bold;">HelloSmartGWT</span></span></span></li><li><span style="font-family:courier new;"><span style="font-family:georgia;">Enter the Package: <span style="font-weight: bold;">com.puguasoft.examples.smartgwt</span></span></span></li><li><span style="font-family:courier new;"><span style="font-family:georgia;">Be sure <span style="font-weight: bold;">Use Goolge Web Toolkit</span> is checked.</span></span></li><li><span style="font-family:courier new;"><span style="font-family:georgia;">Be sure<span style="font-weight: bold;"> </span><span style="font-weight: bold;">Use Google App Engine</span> is <span style="font-style: italic;">unchecked.</span></span></span></li><li><span style="font-family:courier new;"><span style="font-family:georgia;">Press the <span style="font-family:courier new;">Finish</span> button.</span></span></li></ol><span style="font-weight: bold;">Setup SmartGWT:<br /></span><ol><li>In your <span style="font-weight: bold;">HelloSmartGWT</span> project, create a new folder <span style="font-weight: bold;">lib</span>.<br /></li><li>Unzip <span style="font-family:courier new;"> smartgwt-2.1.zip</span><span style="font-family:georgia;"> and place both the <span style="font-family:courier new;">smartgwt.jar and <span style="font-family:georgia;"><span style="font-family:courier new;">smartgwt-skins.jar</span> <span style="font-family:courier new;"><span style="font-family:georgia;">in the <span style="font-weight: bold;">lib</span> folder you just created.</span></span></span></span></span></li><li><span style="font-family:georgia;"><span style="font-family:courier new;"><span style="font-family:georgia;"><span style="font-family:courier new;"><span style="font-family:georgia;">Right-click on the <span style="font-weight: bold;">HelloSmartGWT</span> project and go to <span style="font-family:courier new;">Properties > Java Build Path > Libraries<span style="font-weight: bold;"><span style="font-weight: bold;"><span style="font-family:georgia;"> </span></span></span><span style="font-family:georgia;">tab and add both the <span style="font-family:courier new;">smartgwt.jar</span> and </span><span>smartgwt-skins.jar</span><span style="font-family:georgia;"> to the build path.</span></span></span></span></span></span></span></li><li><span style="font-family:georgia;"><span style="font-family:courier new;"><span style="font-family:georgia;"><span style="font-family:courier new;"><span style="font-family:georgia;"><span style="font-family:courier new;"><span style="font-family:georgia;">Open the <span style="font-family:courier new;">com.puguasoft.examples.smartgwt.client.HelloSmartGWT.java</span> class and replace the entire <span style="font-family:courier new;">onModuleLoad()<span style="font-family:georgia;"> with the following:</span></span></span></span></span></span></span></span></span></li></ol><pre><br /><span style="color: rgb(204, 102, 0);"><br /> public void onModuleLoad() {<br /> IButton button = new IButton("Click Me");<br /> button.addClickHandler(new ClickHandler() {<br /> public void onClick(ClickEvent event) {<br /> SC.say("Hello SmartGWT!");<br /> }<br /> });<br /> button.draw();<br /> }</span></pre><ol><li>Open the<span style="font-family:courier new;"> com.puguasoft.examples.smartgwt.HelloSmartGWT.gwt.xml</span> file and delete or comment-out the following:<br /></li></ol><pre> <span style="color: rgb(204, 102, 0);"><inherits name='com.google.gwt.user.theme.standard.Standard'/></span></pre><ol><li>In the same XML file, add the following <span style="font-family:courier new;">inherits</span> elements:<br /></li></ol><pre><span style="color: rgb(204, 102, 0);"> <inherits name='com.smartgwt.SmartGwt' /><br /> <inherits name='com.smartclient.theme.silverwave.SilverWave' /><br /></span></pre><ol><li>Open the <span style="font-family:courier new;">war/HelloSmartGWT.html</span> file and add the following between the <span style="font-weight: bold;font-family:courier new;"><head></span> section and <span style="font-weight: bold;"><span style="font-style: italic;">before</span></span> the <span style="font-family:courier new;">hellosmartgwt.nocache.js<span style="font-family:georgia;"> script</span></span>:</li></ol><pre> <span style="color: rgb(204, 102, 0);"><script> var isomorphicDir = "hellosmartgwt/sc/"; </script> </span></pre><br /><br /><br /><span style="font-weight: bold;">Compile and Deploy:</span><br /><ol><li>Right-click on the <span style="font-weight: bold;">HelloSmartGWT</span> project and select <span style="font-family:courier new;">Google > GWT Compile.</span></li><li><span style="font-family:courier new;"><span style="font-family:georgia;">Press <span style="font-family:courier new;">Compile</span> in the dialog.</span><br /></span></li><li><span style="font-family:georgia;">Pay attention to the <span style="font-family:courier new;">console</span> to make sure there are no compile errors.</span></li><li><span style="font-family:georgia;">Now deploy the app by right-clicking on the <span style="font-weight: bold;">HelloSmartGWT</span> project and select <span style="font-family:courier new;">Debug As > Web Application</span></span></li><li><span style="font-family:georgia;"><span style="font-family:courier new;"><span style="font-family:georgia;">After the embedded web server starts, point your browser to the the URL: <span style="font-family:courier new;">http://127.0.0.1:8888/HelloSmartGWT.html?gwt.codesvr=127.0.0.1:9997</span></span></span></span></li><li><span style="font-family:georgia;"><span style="font-family:courier new;"><span style="font-family:georgia;"><span style="font-family:courier new;"><span style="font-family:georgia;">You should see the following page:</span></span></span></span></span></li></ol><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgll4RRk7pe12wHg8rSypRCXfsf7zI8tizXQhJoGWiYi9HSq6HS5qO-FOXcWzJyV7LPQdYi8R5Gx9aibzhRG3ou1U2rUcjzdh0MO6YWSH08n6Ln4vz74OXLHJBf0e5yjBNVOzTcfQ/s1600-h/HelloSmartGWT.png"><img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 171px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgll4RRk7pe12wHg8rSypRCXfsf7zI8tizXQhJoGWiYi9HSq6HS5qO-FOXcWzJyV7LPQdYi8R5Gx9aibzhRG3ou1U2rUcjzdh0MO6YWSH08n6Ln4vz74OXLHJBf0e5yjBNVOzTcfQ/s320/HelloSmartGWT.png" alt="" id="BLOGGER_PHOTO_ID_5447298603405790034" border="0" /></a>Chris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.com14tag:blogger.com,1999:blog-19162445.post-24724478417994268452009-07-22T15:56:00.001-07:002010-05-10T04:59:29.532-07:00Setting up Eclipse and Maven2 for SmartGWT<div>There is a great HOWTO for setting up Eclipse and Maven2 for SmartGWT:</div><br /><div><a href="http://smartgwt.rorschach.de/index.php5/Setting_up_Eclipse_%26_Maven2">http://smartgwt.rorschach.de/index.php5/Setting_up_Eclipse_%26_Maven2</a><div><br /></div><div><div>[update] The original link seems to be broken, you can try to use the following:</div><div><br /></div><div><a href="http://www.bwcsc.net/?q=node/340">http://www.bwcsc.net/?q=node/340</a></div><div><br /></div><div>I have also included the instructions below for future reference:</div><div><br /></div><div><br /></div><div><span class="Apple-style-span" style=" border-collapse: collapse; color: rgb(85, 85, 85); line-height: 18px; font-family:'Helvetica neue', Helvetica, Arial, Verdana, sans-serif;font-size:12px;"><h1 style="margin-bottom: 0.3em; font-size:1.3em;"><span class="mw-headline">Verifying Maven Configuration</span></h1><p style="margin-top: 0.4em; margin-bottom: 0.8em; ">Maven needs to be configured for the GWT-Maven plugin to work correctly, so navigate to your <i>HOME</i> - Folder and make sure there is a valid Maven configuration file. If your username is <i>john</i>, then these would be valid configuration file locations:</p><pre> Linux → /home/john/.m2/settings.xml<br /> MacOS X → /Users/john/.m2/settings.xml<br /> Windows XP → C:\Documents and Settings\john\.m2\settings.xml </pre><br /><p style="margin-top: 0.4em; margin-bottom: 0.8em; ">If you can't find <i>.m2/settings.xml</i>, then create it with the following content:</p><pre> <settings xmlns="http://maven.apache.org/POM/4.0.0"<br /> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"<br /> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0<br /> http://maven.apache.org/xsd/settings-1.0.0.xsd"><br /> <localRepository>${user.home}/.m2/repository</localRepository><br /> </settings><br /></pre><br />(Check out <a rel="nofollow" href="http://maven.apache.org/settings.html" title="http://maven.apache.org/settings.html" class="external text" style="text-decoration: none; font-weight: bold; color: rgb(82, 80, 98); ">Maven Settings Reference</a> for detailed information on configuring Maven.)<p></p><p style="margin-top: 0.4em; margin-bottom: 0.8em; "><a name="Setting_up_Eclipse_IDE" style="text-decoration: none; font-weight: bold; color: rgb(82, 80, 98); "></a></p><h1 style="margin-bottom: 0.3em; font-size:1.3em;"><span class="mw-headline">Setting up Eclipse IDE</span></h1><p style="margin-top: 0.4em; margin-bottom: 0.8em; ">Download <i>Eclipse IDE for Java EE Developers</i> at <a rel="nofollow" href="http://www.eclipse.org/downloads" title="http://www.eclipse.org/downloads" class="external text" style="text-decoration: none; font-weight: bold; color: rgb(82, 80, 98); ">Eclipse Downloads</a>, install and launch.</p><p style="margin-top: 0.4em; margin-bottom: 0.8em; "><a name="Setting_up_Maven_Integration" style="text-decoration: none; font-weight: bold; color: rgb(82, 80, 98); "></a></p><h1 style="margin-bottom: 0.3em; font-size:1.3em;"><span class="mw-headline">Setting up Maven Integration</span></h1><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Navigate to <b>Help > Software Updates</b> and select the <b>Available Software</b> Tab. Click <b>Add Site...</b> and enter the URL below:</li></ul><pre> http://m2eclipse.sonatype.org/update</pre><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Click <b>OK</b></li><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Expand the <b>m2eclipse.sonatype.org/update</b> node and check <b>Maven Integration</b>: </li></ul><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Click <b>Install...</b></li><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Click <b>Next</b>, accept the license and click <b>Finish</b></li><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Click <b>Yes</b> when you are asked if you want to restart Eclipse</li></ul><p style="margin-top: 0.4em; margin-bottom: 0.8em; "><a name="Creating_the_Project" style="text-decoration: none; font-weight: bold; color: rgb(82, 80, 98); "></a></p><h1 style="margin-bottom: 0.3em; font-size:1.3em;"><span class="mw-headline">Creating the Project</span></h1><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Navigate to <b>File > New > Project...</b></li><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Select <b>Maven > Maven Project</b> and click <b>Next</b> twice</li><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">If you've already installed the <a rel="nofollow" href="http://gwt-maven.googlecode.com/svn/docs/maven-googlewebtoolkit2-plugin/index.html" title="http://gwt-maven.googlecode.com/svn/docs/maven-googlewebtoolkit2-plugin/index.html" class="external text" style="text-decoration: none; font-weight: normal; color: rgb(82, 80, 98); ">GWT-Maven</a> Archetype, you can skip the next step</li><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Click <b>Add Archetype...</b>, enter the values below and click <b>OK</b></li></ul><br /><pre> Archetype Group Id: <b>com.totsp.gwt</b><br /> Archetype Artifact Id: <b>maven-googlewebtoolkit2-archetype</b><br /> Archetype Version: <b>1.0.3</b><br /> Repository URL: <b><a rel="nofollow" href="http://gwt-maven.googlecode.com/svn/trunk/mavenrepo" title="http://gwt-maven.googlecode.com/svn/trunk/mavenrepo" class="external free" style="text-decoration: none; font-weight: bold; color: rgb(82, 80, 98); ">http://gwt-maven.googlecode.com/svn/trunk/mavenrepo</a></b><br /></pre><br /><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Select Archetype <b>maven-googlewebtoolkit2-archetype</b> and click <b>Next</b></li><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Provide your Maven - Properties and click <b>Finish</b>. Example values:</li></ul><br /><pre> Group Id: <b>com.acme</b><br /> Artifact Id: <b>helloworld</b><br /> Version: <b>0.0.1-SNAPSHOT</b><br /> Package: <b>com.acme.helloworld</b><br /></pre><br /><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Open your <b>pom.xml</b> in the Maven POM Editor by double-clicking it</li><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Select the <b>Repositories</b> Tab</li><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Click <b>Add...</b> and provide the values below <a href="http://smartgwt.rorschach.de/index.php5/Setting_up_Eclipse_%26_Maven2#SVN_Snapshots" title="" style="text-decoration: none; font-weight: normal; color: rgb(82, 80, 98); ">*</a> :</li></ul><br /><pre> Id: <b>smartclient</b><br /> Name: <b>smartclient.com</b><span class="Apple-style-span" style="color:#525062;"><b><br /> URL: http://www.smartclient.com/maven2/</b></span><br /></pre><br /><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Save your <b>pom.xml</b> and check the <i>Maven Console</i> output for errors</li><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Select the <b>Dependencies</b> Tab</li><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Click <b>Add...</b> and provide the values below:</li></ul><br /><pre> Group Id: <b>com.smartgwt</b><br /> Artifact Id: <b>smartgwt</b><br /> Version: <b>1.0b2-SNAPSHOT</b><br /></pre><br /><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Save your <b>pom.xml</b> and check the <i>Maven Console</i> output for errors</li></ul><p style="margin-top: 0.4em; margin-bottom: 0.8em; "><a name="Modifying_the_Application" style="text-decoration: none; font-weight: bold; color: rgb(82, 80, 98); "></a></p><h1 style="margin-bottom: 0.3em; font-size:1.3em;"><span class="mw-headline">Modifying the Application</span></h1><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Modify the generated <b>Application.gwt.xml</b> <i>(add the line in bold)</i></li></ul><br /><pre> <module><br /> <inherits name="'com.google.gwt.user.User'"><br /> <inherits name="'com.google.gwt.user.theme.standard.Standard'"><br /> <b><inherits name="'com.smartgwt.SmartGwt'"></inherits></b><br /> <entry-point class="'com.acme.helloworld.client.Application'"><br /> <stylesheet src="'Application.css'"></stylesheet><br /> </entry-point><br /> </inherits><br /> </inherits><br /> </module><br /></pre><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Modify the generated <b>Application.java</b> <i>(replace all content)</i></li></ul><div dir="ltr" style="text-align: left; "><div class="java5 source-java5" style=" ;font-family:monospace;"><br /><pre> package com.acme.helloworld.client;<br /> import com.google.gwt.core.client.EntryPoint;<br /> import com.smartgwt.client.util.SC;<br /><br /> public class Application implements EntryPoint {<br /> public void onModuleLoad() { SC.say("Hello SmartGWT"); }<br /> }<br /></pre></div></div><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Modify the generated <b>Application.css</b> <i>(remove all content)</i></li></ul><p style="margin-top: 0.4em; margin-bottom: 0.8em; "><i>You need to remove all generated CSS - Styles because they would break the SmartGWT layout.</i><br /><i>You can add your own Styles if they don't conflict with SmartGWT, of course.</i></p><p style="margin-top: 0.4em; margin-bottom: 0.8em; "><a name="Running_the_Application" style="text-decoration: none; font-weight: bold; color: rgb(82, 80, 98); "></a></p><h1 style="margin-bottom: 0.3em; font-size:1.3em;"><span class="mw-headline">Running the Application</span></h1><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Right-click your <b>pom.xml</b> and select <b>Run As > Maven build...</b></li><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Enter the value below into the Textfield labeled <b>Goal:</b></li></ul><br /><pre> gwt:gwt</pre><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Click <b>Run</b> to start your Application in the <i>GWT Shell</i></li></ul><p style="margin-top: 0.4em; margin-bottom: 0.8em; "><a name="SVN_Snapshots" style="text-decoration: none; font-weight: bold; color: rgb(82, 80, 98); "></a></p><h1 style="margin-bottom: 0.3em; font-size:1.3em;"><span class="mw-headline">SVN Snapshots</span></h1><p style="margin-top: 0.4em; margin-bottom: 0.8em; ">If you want to develop against the <a rel="nofollow" href="http://smartgwt.build.rorschach.de/latest" title="http://smartgwt.build.rorschach.de/latest" class="external text" style="text-decoration: none; font-weight: bold; color: rgb(82, 80, 98); ">latest snapshot</a> from <a rel="nofollow" href="http://code.google.com/p/smartgwt/source/list" title="http://code.google.com/p/smartgwt/source/list" class="external text" style="text-decoration: none; font-weight: bold; color: rgb(82, 80, 98); ">SVN</a> use the repository and artifact properties below:</p><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; "><b>Repository</b></li></ul><br /><pre> Id: <b>smartgwtsnap</b><br /> Name: <b>smartgwtsnap.rorschach.de</b><br /> URL: <b><a rel="nofollow" href="http://smartgwtsnap.rorschach.de/" title="http://smartgwtsnap.rorschach.de" class="external free" style="text-decoration: none; font-weight: bold; color: rgb(82, 80, 98); ">http://smartgwtsnap.rorschach.de</a></b><br /></pre><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; "><b>Artifact</b></li></ul><br /><pre> Group Id: <b>com.smartgwt</b><br /> Artifact Id: <b>smartgwt</b><br /> Version: <b>1.0b3-SNAPSHOT</b><br /></pre><p style="margin-top: 0.4em; margin-bottom: 0.8em; "><a name="More_Goals" style="text-decoration: none; font-weight: bold; color: rgb(82, 80, 98); "></a></p><h1 style="margin-bottom: 0.3em; font-size:1.3em;"><span class="mw-headline">More Goals</span></h1><p style="margin-top: 0.4em; margin-bottom: 0.8em; ">Appending <b>-U</b> tells Maven to check for updates of <i>-SNAPSHOT</i> dependencies.</p><p style="margin-top: 0.4em; margin-bottom: 0.8em; ">All Goals for GWT-Maven <a rel="nofollow" href="http://gwt-maven.googlecode.com/svn/docs/maven-googlewebtoolkit2-plugin/plugin-info.html" title="http://gwt-maven.googlecode.com/svn/docs/maven-googlewebtoolkit2-plugin/plugin-info.html" class="external text" style="text-decoration: none; font-weight: bold; color: rgb(82, 80, 98); ">can be found here</a>.</p><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; "><i>clean</i> → Purge working directory (<i>target</i>)</li><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; "><i>gwt:gwt</i> → Build Application, Run in Hosted Mode</li><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; "><i>gwt:test</i> → Build Application, Run GWT-Tests</li><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; "><i>javadoc:javadoc</i> → Generate API-Documentation (→ <i>target/site/apidocs</i>)</li><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; "><i>package</i> → Build Application, Run Non-GWT-Tests, Run GWT-Tests, Build WAR-Archive</li><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; "><i>test</i> → Build Application, Run Non-GWT-Tests, Run GWT-Tests</li></ul><p style="margin-top: 0.4em; margin-bottom: 0.8em; "><a name="List_of_Goals_Example" style="text-decoration: none; font-weight: bold; color: rgb(82, 80, 98); "></a></p><h1 style="margin-bottom: 0.3em; font-size:1.3em;"><span class="mw-headline">List of Goals Example</span></h1><p style="margin-top: 0.4em; margin-bottom: 0.8em; ">Maven supports a comma or space separated list of <i>Goals</i>:</p><br /><pre> clean package javadoc:javadoc -U</pre><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Checks for updates of <i>-SNAPSHOT</i> dependencies (<i>-U</i>)</li><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Purges the working directory (<i>clean</i>)</li><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Builds the Application (<i>package</i>)</li><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Runs the Non-GWT-Tests (<i>package</i>)</li><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Runs the GWT-Tests (<i>package</i>)</li><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Builds the WAR-Archive (<i>package</i>)</li><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; ">Generates the API-Documentation (<i>javadoc:javadoc</i>)</li></ul><p style="margin-top: 0.4em; margin-bottom: 0.8em; "><a name="Troubleshooting" style="text-decoration: none; font-weight: bold; color: rgb(82, 80, 98); "></a></p><h1 style="margin-bottom: 0.3em; font-size:1.3em;"><span class="mw-headline">Troubleshooting</span></h1><p style="margin-top: 0.4em; margin-bottom: 0.8em; "><a name="Problems_loading_gwt-dev_libraries" style="text-decoration: none; font-weight: bold; color: rgb(82, 80, 98); "></a></p><h2 style="margin-bottom: 0.3em; font-size:1.2em;"><span class="mw-headline">Problems loading <i>gwt-dev</i> libraries</span></h2><br /><pre> Can't load library: [...]/.m2/repository/com/google/gwt/<b>gwt-dev</b>/1.5.3/[...] </pre><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; "><b>Problem</b></li></ul><p style="margin-top: 0.4em; margin-bottom: 0.8em; ">The GWT-Maven plugin didn't pick up your local Maven repository location when it tried to extract the GWT development libraries. The libraries probably have been extracted to a folder named <i>${settings.localRepository} </i>inside your workspace. You can delete this folder, of course.</p><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; "><b>(Quick) Solution</b></li></ul><p style="margin-top: 0.4em; margin-bottom: 0.8em; "><a href="http://smartgwt.rorschach.de/index.php5/Setting_up_Eclipse_%26_Maven2#Verifying_Maven_Configuration" title="" style="text-decoration: none; font-weight: bold; color: rgb(82, 80, 98); ">Verify your Maven configuration</a>, delete the folder <b>com/google/gwt/gwt-dev</b> inside your local Maven repository and retry.</p><p style="margin-top: 0.4em; margin-bottom: 0.8em; "><a name="Problems_loading_libxpcom_.2F_libstdc.2B.2B" style="text-decoration: none; font-weight: bold; color: rgb(82, 80, 98); "></a></p><h2 style="margin-bottom: 0.3em; font-size:1.2em;"><span class="mw-headline">Problems loading <i>libxpcom</i> / <i>libstdc++</i></span></h2><br /><pre> ** Unable to load Mozilla for hosted mode **<br /> java.lang.UnsatisfiedLinkError: [...]/libxpcom.so: libstdc++.so.5: cannot open shared object file: No such file or directory</pre><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; "><b>Problem</b></li></ul><p style="margin-top: 0.4em; margin-bottom: 0.8em; ">Version 5 of <i>libstdc++</i> isn't installed.</p><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; "><b>Solution</b></li></ul><p style="margin-top: 0.4em; margin-bottom: 0.8em; ">Install the package <i>libstdc++5</i> and retry. If you're running a <i>Debian</i>-based distribution like <i>Ubuntu</i> use <i>apt-get</i>:</p><pre> sudo apt-get install libstdc++5</pre><p style="margin-top: 0.4em; margin-bottom: 0.8em; "><a name="Warning:_Locking_assertion_failure" style="text-decoration: none; font-weight: bold; color: rgb(82, 80, 98); "></a></p><h2 style="margin-bottom: 0.3em; font-size:1.2em;"><span class="mw-headline">Warning: <i>Locking assertion failure</i></span></h2><pre> Locking assertion failure. Backtrace: #0 [...] </pre><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; "><b>Problem</b></li></ul><p style="margin-top: 0.4em; margin-bottom: 0.8em; ">There is some sort of problem with how the JRE was built.</p><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; "><b>Solution</b></li></ul><p style="margin-top: 0.4em; margin-bottom: 0.8em; "><a rel="nofollow" href="http://necessaryandsufficient.blogspot.com/2008/06/i-tried-to-build-gwt-today-on-ubuntu.html" title="http://necessaryandsufficient.blogspot.com/2008/06/i-tried-to-build-gwt-today-on-ubuntu.html" class="external text" style="text-decoration: none; font-weight: bold; color: rgb(82, 80, 98); ">Can be found here</a>.</p><pre> sudo sed -i 's/XINERAMA/FAKEEXTN/g' /usr/lib/jvm/<b>java-1.5.0-sun</b>/jre/lib/i386/xawt/libmawt.so </pre><p style="margin-top: 0.4em; margin-bottom: 0.8em; ">and / or</p><pre> sudo sed -i 's/XINERAMA/FAKEEXTN/g' /usr/lib/jvm/<b>java-6-sun</b>/jre/lib/i386/xawt/libmawt.so</pre><p style="margin-top: 0.4em; margin-bottom: 0.8em; "><a name="NoClassDefFoundError:_GWTShell" style="text-decoration: none; font-weight: bold; color: rgb(82, 80, 98); "></a></p><h2 style="margin-bottom: 0.3em; font-size:1.2em;"><span class="mw-headline">NoClassDefFoundError: GWTShell</span></h2><pre> java.lang.NoClassDefFoundError: com/google/gwt/dev/GWTShell<br /> Caused by: java.lang.ClassNotFoundException: com.google.gwt.dev.GWTShell [...]<br /> Could not find the main class: com.google.gwt.dev.GWTShell. Program will exit.</pre><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; "><b>Problem</b></li></ul><p style="margin-top: 0.4em; margin-bottom: 0.8em; ">There is a problem with the path to your local Maven repository.</p><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><li style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 1.6em; "><b>Solution</b></li></ul><p style="margin-top: 0.4em; margin-bottom: 0.8em; ">Make sure the path to your local Maven repository doesn't contain any non-US-ASCII characters, e.g. an <a rel="nofollow" href="http://en.wikipedia.org/wiki/Umlaut_(diacritic)" title="http://en.wikipedia.org/wiki/Umlaut_(diacritic)" class="external text" style="text-decoration: none; font-weight: bold; color: rgb(82, 80, 98); ">Umlaut</a>.</p></span></div></div></div>Chris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.com1tag:blogger.com,1999:blog-19162445.post-43253598769996865792008-12-25T23:57:00.000-08:002008-12-26T00:07:58.440-08:00JIRA Buddy 1.0.1 ReleasedThe JiraBuddy Team over at <a href="http://www.PuguaSoft.com">PuguaSoft.com</a> has just released the latest version of JiraBuddy 1.0.1. With this release, they added support for JIRA servers with default ports (80), added timeouts for webservice invokations, added more logging, and other bug fixes and enhancements. You can find out more at the official JIRA Buddy website at <a href="http://www.jirabuddy.com/">www.jirabuddy.com</a>.<br /><br />Merry Christmas and Happy Holidays!!!Chris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.com0tag:blogger.com,1999:blog-19162445.post-70148528490198761382008-12-05T00:12:00.000-08:002008-12-05T00:15:30.483-08:00JiraBuddy Version 1.0.0 ReleaseI'm proud to announce <span style="font-weight: bold;">version 1.0.0</span> of the JiraBuddy Eclipse plugin for JIRA. JiraBuddy has gone into hibernation since it's initial release over two years ago. In the past few months, I've taken some time outside work and my normal life to update JiraBuddy to be compatible with Eclipse 3.4/Ganymede and fixing many bugs. Some of the new features include hyper-links inside the Hover Info feature, better server session and connection handling, and an updated preference page. To see a more complete list of changes since the last release, check out the <a href="http://sites.google.com/site/puguasoftjirabuddy/todo">TODO</a> <a href="http://sites.google.com/site/puguasoftjirabuddy/todo">page</a> on the official <a href="http://www.jirabuddy.com">JiraBuddy</a> website at <a href="http://www.jirabuddy.com">www.jirabuddy.com</a>.<br /><br />I hope you enjoy JiraBuddy and find it useful. If you have any suggestions on how to make JiraBuddy better, or to report a bug, please send an email to <a href="mailto:development@jirabuddy.com">development@jirabuddy.com</a>.<br /><br />Thanks,<br />~ChrisChris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.com0tag:blogger.com,1999:blog-19162445.post-61705613962665463182008-10-24T14:49:00.000-07:002008-11-12T12:05:51.115-08:00Sharing Java Applet Sessions in FirefoxThere is a known problem in JEP (Java Embedding Plugin) for Firefox in which new sessions (or no sessions at all) are used for every new Java applet request to a servlet. This can be problematic for applets that requests data or URL from a servlet requiring authentication or a login. To get around this problem, you can pass in the current HTLM document's cookie as a Java applet parameter, and then use the cookie in the HttpServletRequest's <code>Cookie</code> request parameter.<br /><br />In your HTML applet code, just add the document's cookie as a parameter. (Note that I'm writing the HTML applet code in JavaScript to dynamically get the document's cookie.)<br /><blockquote class="sourcecodebox"><code><br /><script language="JavaScript" type="text/javascript"><br /><!--<br /> document.write("<embed");<br /> document.write("name='MyApplet'");<br /> document.write("type='application/x-java-applet;version=1.6'");<br /> document.write("code='org/puguasoft/examples/MyApplet.class'");<br /> document.write("codebase='/applets/'");<br /> <span class="Apple-style-span" style="color: rgb(255, 0, 0);"> document.write("browserCookie='" + document.cookie + "'");</span><br /> document.write("</embed>");<br />--><br /></script><br /></code></blockquote>Then in your servlet, use the <code>browserCookie</code> parameter value as the <code>Cookie</code> property in the HttpServletRequest.<blockquote class="sourcecodebox"><code>import javax.swing.JApplet;<br />import java.net.URL;<br />import java.net.URLConnection;<br /><br />public class MyApplet extends JApplet{<br /><br /> public void doIt(URL url){<br /> URLConnection urlConnection = url.openConnection();<br /> String cookie = getParameter(<span class="Apple-style-span" style=""><span class="Apple-style-span" style="color: rgb(51, 51, 255);">"browserCookie"</span></span>);<br /> urlConn.setRequestProperty(<span class="Apple-style-span" style="color: rgb(51, 51, 255);">"Cookie</span><span class="Apple-style-span" style="color: rgb(0, 153, 0);">"</span>, cookie);<br /> urlConnection.connect();<br /><br /> <span class="Apple-style-span" style="color: rgb(0, 153, 0);"> // Now you can do what you need with the URLConnection</span><br /> <span class="Apple-style-span" style="color: rgb(0, 153, 0);"> // (e.g. open up an InputStream to read the data)<br /> // using the same cookie session.</span><br /><br /> }<br />}<br /></code></blockquote><br />For more information check out these postings:<br /><ul><li><a href="http://developer.apple.com/qa/qa2001/qa1265.html">http://developer.apple.com/qa/qa2001/qa1265.html</a><br /></li><li><a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1414542&group_id=107955&atid=649116">http://sourceforge.net/tracker/index.php?func=detail&aid=1414542&group_id=107955&atid=649116</a><br /></li><li><a href="http://lists.apple.com/archives/Java-dev/2006/Mar/msg00278.html">http://lists.apple.com/archives/Java-dev/2006/Mar/msg00278.html</a><br /></li><li><a href="http://sourceforge.net/forum/forum.php?thread_id=1298604&forum_id=371125">http://sourceforge.net/forum/forum.php?thread_id=1298604&forum_id=371125</a><br /></li><li><a href="http://sourceforge.net/forum/forum.php?thread_id=1634825&forum_id=371124">http://sourceforge.net/forum/forum.php?thread_id=1634825&forum_id=371124</a><br /></li></ul><div><br /><br /></div>Chris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.com1tag:blogger.com,1999:blog-19162445.post-6021825917210582882008-10-10T14:46:00.001-07:002008-10-20T23:43:16.024-07:00Detecting Browser Java Version Using JavascriptTrying to detect a client's browser for the installed Java plugin version and whether or not it's installed, can be a real pain. Luckily,<a href="mailto:plugindetect@pinlady.net">Eric Gerds</a> has created a <a href="http://www.pinlady.net/PluginDetect/">JavaScript library</a> to do just that. The JavaScript can detect the version of the Java plugin, if any, on different browsers including FireFox, Internet Explorer, Safari, and Opera. In addtion, his script can also detect QuickTime, Flash, Windows Media Player, and many other browser plugins.<br /><br />Check out the PluginDetect JavaScript: <a href="http://www.pinlady.net/PluginDetect/">http://www.pinlady.net/PluginDetect/</a><br><br>Chris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.com0tag:blogger.com,1999:blog-19162445.post-61309054771500475952008-08-26T00:05:00.000-07:002008-10-24T14:47:58.009-07:00Automount External USB Hard Drive in SuSE 10.3To automount an external USB hdd in OpenSuSE 10.3 and up, just follow these simple instructions:<br /><br />First, create a new directory to mount the external HDD:<blockquote class="sourcecodebox"><code>mkdir /media/usb-hdd</code></blockquote>Next, modify <span style="font-weight: bold;">/ets/fstab </span><span>to include a new label entry for the external HDD. You can label it anything you want without spaces.</span><blockquote class="sourcecodebox"><code>LABEL=YOUR-HDD-LABEL /media/usb-hdd ext3 auto,nofail,defaults 1 2</code></blockquote class="sourcecodebox">Finally, create a script in <span style="font-weight: bold;">/etc/udev/rules.d/</span> called <span style="font-weight: bold;">99-mount.rules</span> containing the following command:<blockquote class="sourcecodebox"><code>#run mount -a everytime a block device is added/removed<br />SUBSYSTEM=="block", run+="/bin/mount -a"</code></blockquote>Now, whenever you boot into OpenSuSE, the external USB hdd labeled <span style="font-weight: bold;">YOUR-HDD-LABEL</span> will be automatically mounted.<br><br>Chris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.com0tag:blogger.com,1999:blog-19162445.post-8845689417668867902008-08-25T23:52:00.000-07:002008-10-24T14:48:14.789-07:00Mounting USF/USF2 BSD Filesystem in Ubuntu LinuxUbuntu only supports read-only of BSD filesystems (USF/USF2). To mount the disk just issue the command:<br /><blockquote class="sourcecodebox"><code>mount -r -t ufs -o ufstype=44bsd /dev/yourdevice /mnt/destination</code></blockquote><br><br>Chris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.com0tag:blogger.com,1999:blog-19162445.post-87730210165256273652008-07-03T11:03:00.000-07:002008-10-24T14:48:47.150-07:00Getting a List of Installed System Fonts in JavaPreviously, you could get a list of fonts installed in the running system by using using the Java <code>AWT Toolkit</code>:<br /><blockquote class="sourcecodebox"><code>Toolkit tk = Toolkit.getDefaultToolkit();<br />String[] fontNames = tk.getFontList();<br /></code></blockquote>However, the <code>Toolkit.getDefaultToolkit()</code> method has been deprecated in favor of the <code>java.awt.GraphicsEnvironment</code>. The <code>GraphicsEnvironment</code> class describes the collection of <code>java.awt.GraphicsDevice</code> objects and <code>java.awt.Font</code> objects available to a Java application on a particular platform.<br /><br />To get a list of font names installed on the system, just use the the <code>getLocalGraphicsEnvironment()</code> method:<br /><blockquote class="sourcecodebox"><code>GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();<br />String[] fontnames = ge.getAvailableFontFamilyNames();</code></blockquote>There are many other usefull methods in <code>GraphicsEnvironment</code> class, for more information, take a look at the <a href="http://java.sun.com/javase/6/docs/api/java/awt/GraphicsEnvironment.html">API</a>.<br><br>Chris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.com0tag:blogger.com,1999:blog-19162445.post-56366301355008382092008-04-16T19:34:00.000-07:002008-10-17T15:16:25.859-07:00UpdateWOW! It's been a well over a year since I last posted on my blog. I'd like think it's because I've been busy, but it's mostly a combination of being busy, being lazy, and not finishing what I started.<br /><br />Well, based on a suggestion from my former CTO, it would be good for my career to get back into blogging. However, I'll be changing what I'll be posting. Instead of concentrating about my life and personal stuff, I'll be blogging more about technology and programming problems in hopes of helping out other people who have run into the same problem and are looking for a solution. That's not to say I won't be blogging about my life completely, I'll just be blogging about the cool and interesting events.<br /><br />Alot has happened in the past year-and-a-half, so here's a quick run down:<br /><ul><li>Got a new job at <a href="http://www.ints.com/">Integrated Services, Inc.</a> in October 2006 to take on a more senior role and work on some cool technologies like Eclipse RCP and SWT.</li><li>Went on a bunch of hiking and camping trips (be sure to check out my <a href="http://www.puguasoft.com/people/chris/gallery/v/hiking_and_camping/oregon/">gallery</a>).</li><li>Went on a Summer vacation to <a href="http://www.puguasoft.com/people/chris/gallery/v/vacation/2007/summer_pi_and_guam/">Guam</a> after seven long years. Had some of the best times of my life while visiting some relatives and old childhood friends.<br /></li><li>Got a new job at <a href="http://www.arrisi.com/">ARRIS</a> as a Software Application Engineer in April 2008. I felt like I've done and learned as much as I can at ISI. "If you find yourself the best person in the band, it's time to find a new band." - Pat Metheny</li></ul>That's where I stand right now, starting the new job and getting ready for the Summer. Oh, I forgot to mention, I was able to partially tear my MCL while skiing this pass Winter. My knee still hurts and it will be another couple weeks until I'll be able to start doing anything intensive. During my recovery, I'll have alot more time on my hand, so be sure to check back for updates to my blog!<br><br>Chris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.com1tag:blogger.com,1999:blog-19162445.post-17609782034522260852007-01-16T20:48:00.000-08:002007-01-16T22:24:29.432-08:00Snow Storm<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.puguasoft.com/people/chris/album/Snow%20Storm%20-%20011607/index.html"><img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px;" src="http://www.puguasoft.com/people/chris/album/Snow%20Storm%20-%20011607/slides/IMG_4952.JPG" alt="" border="0" /></a><br />The past week saw cold spells in the NW causing temperatures to drop at or below freezing. Where I live and work in the Beaverton/Tigard area, temperatures got as low as the teens (Fahrenheit) at night; the day didn't get much warmer. The one good thing about the cold spell was that it was pretty sunny during the day with very little wind.<br /><br />That all changed today. Around 5:00 AM, the Portland-metro area woke up to a blanket of white snow. It snowed pretty heavily for most of the day and afternoon - some places saw around 3-5" of snow. It was the most snow I saw in the metro area since I moved here 6 years ago.<br /><br />The roads were pretty bad, so I decided to skip work and stay home (I doubt my Z would have made it through all that snow). For the better part of the day, ODOT even required all vehicles to be equipped with chains or traction tires. All schools in Washington Co. were closed, along with other schools in the surrounding area. There were countless fender-benders across the area, many road closures, abandoned automobiles, and minor injuries caused by this snow storm. The worst part of all this will be when the snow starts to melt in the next day, but then refreeze at night, causing dangerous black ice.<br /><br />You can take a look at the pictures I took around my apartment in my <a href="http://www.puguasoft.com/people/chris/album/Snow%20Storm%20-%20011607/index.html">album</a>.Chris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.com1tag:blogger.com,1999:blog-19162445.post-38206203467686321592006-12-24T21:33:00.000-08:002008-11-18T22:19:53.739-08:00OpenSUSE 10.2 Overview - Part 1<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhoLq6zYpmAMFsXqY2aTqdHh4faI2X6Olo8mQr3pytCGCvXUknNmuRb7CJrlucHlyxJghWV1tP9Zu-LplJ3_s1kRerYp5oHC8BGMRgk0SwQavjxH5G1ZXqPxfQtmdQVHKV2PJoPHg/s1600-h/opensuse10-2.jpg"><img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhoLq6zYpmAMFsXqY2aTqdHh4faI2X6Olo8mQr3pytCGCvXUknNmuRb7CJrlucHlyxJghWV1tP9Zu-LplJ3_s1kRerYp5oHC8BGMRgk0SwQavjxH5G1ZXqPxfQtmdQVHKV2PJoPHg/s320/opensuse10-2.jpg" alt="" id="BLOGGER_PHOTO_ID_5018690715597168098" border="0" /></a>The following is a summary of my experience with the latest versions of <a href="http://www.opensuse.org/">OpenSUSE</a>, 10.2, which was released on December 7, 2006. I'm splitting my "review" into two parts - this first part focuses on the installation and initial startup and usability. Then, sometime in the future after I've actually spent some time using the new OS, I plan on writing a follow-up of my experience.<br /><br /><span style="font-weight: bold;">MEDIUMS<br /><br /></span>Users have two options of obtaining OpenSUSE 10.2 - via <a href="http://en.opensuse.org/Released_Version#Downloads">download</a> or purchasing the boxed <a href="http://www.novell.com/products/opensuse/">retail version</a> for $59.95.<br /><br />The download version comes in five CDs or one DVD. In addition to the installation discs, there are two optional discs available, one for language addons and the other for non-OSS software.<br /><br />The retail version is identical to the download but with a nice user manual, 90 days of installation support, and security patches and bug fixes for up to 2 years. For less than $59.95, this is a great deal and alternative to other more expensive OSes.<br /><br />For this installation and overview, Iĺl be using the download version.<br /><br /><span style="font-weight: bold;">SETUP<br /></span><span><br />The following computer was used as my test system:<br /></span><ul><li>MSI MS-6712<br /></li><li>Athlon XP 2000+</li><li>GeForce 2 MX400</li><li>512 MB PC 2100 DDR<br /></li></ul><span><br /></span><span style="font-weight: bold;">INSTALLATION<br /><br /></span>Like previous versions of SuSE/openSUSE, installation was a breeze. It started off with the license agreement and then medium verification to ensure the ISOs you downloaded arent't corrupted. Then, YAST2 (Yet Another Setup Tool) gave the option to specify any add-on products, such as non-OSS software and additional language packs. You then move onto timezone selection and finally the desktop selection before the actual installation begins.<br /><br />In the desktop selection, you have the option of selecting Gnome, KDE, or Other (text mode or minimal GUI). Although you can only select a default desktop at this screen, you are able to add other desktop environment when adding software packages. Something new in KDE is <a href="http://en.opensuse.org/Kickoff">Kickoff</a>, a new usability and productivity-centric KDE Menu designed by openSUSE.<br /><br />Just before installation begins, YAST2 will present to a default selection of software to install and a proposed harddrive partition - both of which can be modified to your liking. One thing different in 10.2 is that the default partition type, which was previously resierFS, is now ext3. I'm not sure why they decided to go this route, but since it's the default, I left it as is. I made a few software package additions and went on with the installation.<br /><br />After about 45 minutes of installing the packages, YAST2 went on to the basic configuration of the system - root password, hostname and network setup, etc. - nothing really special here. One thing I did like, though, was the ability to disable IPv6 right there in the network configuration - now you no longer have to dig deep into configuration files to disable it. After adding users, you're given the option to configure your hardware - again, nothing really special here.<br /><br />After all the configuration, the system will load into the login screen.<br /><br /><br /><span style="font-weight: bold;">INITIAL USE<br /><br /></span>I logged in using KDE, which was at version 3.5.5 "release 45". The newest feature I noticed was SuSE's Kickoff menu in place of the default KDE "start/application" menu.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVJhOtGKeuMz8j_-S_iLk4rPV0NAGQa-ZC3yffwBOwqvle5jEnWnz2tzF5eNve_LQd6h35Qj3Sln0ftkgv-9_MAffIppSij6QkGqbC5zc_kn7A-BfbNJoGNIiqKQ2tYi3gX_gw4g/s1600-h/kickoff.png"><img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVJhOtGKeuMz8j_-S_iLk4rPV0NAGQa-ZC3yffwBOwqvle5jEnWnz2tzF5eNve_LQd6h35Qj3Sln0ftkgv-9_MAffIppSij6QkGqbC5zc_kn7A-BfbNJoGNIiqKQ2tYi3gX_gw4g/s320/kickoff.png" alt="" id="BLOGGER_PHOTO_ID_5017509184435648642" border="0" /></a>The Kickoff menu is pretty intuitive and setup in a nice logical way. The menu is basically divided into five tabs, each with applications or sub categories that best fits the main tab category. The way the sub-menus work is Mac OS-like, meaning clicking on a sub-category will move the menu to the right to another menu, or back. Although it's an obvious rip from Mac OS X, I like it.<br /><br />Something I noticed right away with OpenSUSE, as with pretty much all other Linux distros, is the ugly default fonts especially when browsing the Internet. Even with anti-aliasing enabled, fonts looked rough and jagged. The reason is because of the lack of good font support for Linux.<br /><br />To solve this problem, I had to install the Microsoft True Type core font via YAST2 and its Online Update feature. In order to do that, though, I had to configure the installation source and online update to point to a mirror since, by default, no mirror is selected, which I thought was weird. After agreeing to the license and installing the MS fonts, I had to log out of KDE and log back in to notice the changes - the new fonts looked MUCH better.<br /><br />The other changes to KDE are not really SuSE-specific, ergo, I won´t go over the new features since there are many reviews already on the Internet.<br /><br />Something I won´t be able to test is <a href="http://en.opensuse.org/Compiz">Compiz</a> because of my crappy video card. If I upgrade to a compatible video card, I´ll be sure to get back with my impressions of Compiz.<br /><br /><span style="font-weight: bold;">SUMMARY<span style="font-weight: bold;"><br /><br /></span></span>The download and installation of the OS was a breeze, I didn´t have any problems whatsoever. My initial login and use of KDE was nice, I really like the KickOff menu, and overall speed seemed pretty good.<br /><br />That concludes my initial installation and overview of OpenSUSE 10.2. In the next parts of my review, Iĺl briefly go over the new Gnome features in OpenSUSE, YAST2, and other new features I encounter in the next few weeks. So be sure to check back soon!Chris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.com0tag:blogger.com,1999:blog-19162445.post-80845686549596617142006-11-28T22:50:00.000-08:002006-11-29T21:30:14.530-08:00It's Been a While...Wow! So much has happened since my last post on Labor Day! I've been so busy that I haven't had much time to update my blog, I did manage to post new pictures in my <a href="http://www.puguasoft.com/chris/album/index.html">album</a>, though.<br /><br />Like I mentioned before, a lot has happened in the past few months - a new job, new apartment, new friends, and of course, lots of partying! I'll be filling in the details of what has happened in the next few days.<br /><br />I have lots of stuff planned in the upcoming weeks including a redesigned site for <a href="http://www.puguasoft.com/">PuguaSoft.com</a>, continuation of existing projects, and the creation new projects. It'll be real hectic, especially with the holidays coming up, but that's the way I live!<br /><br />Be sure to check back soon.Chris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.com0tag:blogger.com,1999:blog-19162445.post-1158482992873222152006-09-17T00:40:00.000-07:002006-11-09T00:05:38.179-08:00Labor Day WeekWow, and what a week it was!<br /><br />It all started on Sunday, the 3rd, where I met up with an old college friend visiting from D.C. We then headed to Vancouver, WA. to celebreate Labor Day - Guam Fiesta style! It was held at a farm where people from all over the state (both Washington and Oregon) came together, brought in their favorite Island dish, socialzied, and of course, danced the cha-cha! It was great, the people were great, and the food was AWSOME! I haven't eaten such good Island food in years - I was stuffed!<br /><br />After the Guam Fiesta, we headed East to the <a href="http://maps.google.com/maps?ie=UTF8&z=15&ll=45.712113,-121.56076&spn=0.013515,0.040255&t=h&om=1">Columbia Gorge</a> where we watched the sunset - it was beautiful site (and the company was great too =).<br /><br />We headed back after sunset and met with another friend to play cosmic bowling. It was my first time going cosmic bowling - it was different, but really nothing special. We had a lot of fun, though, and that's what counts. It has been a while since I last bowled, but I think I did pretty well - I'm still working on my spinning/curving bowl. The other ladies did pretty good too.<br /><br />Later that night, we met up with my other friends to karaoke! We all had a great time, but we didn't stay too long, because we had to wake up early for the next day's adventure.<br /><br />For Labor Day, we went on a day hike at Silver Falls, located East of Salem. The falls were nice, but it wasn't as runny as it was during Spring (you can see it in my other pics from the <a href="http://www.puguasoft.com/chris/pictures/silverfalls/silverfalls_1.htm">last time</a> I went to Silver Falls). What made the trip special, though, was the company - I had such a wonderful time there with some of my closest friends.<br /><br />You can check out the pictures in my <a href="http://www.puguasoft.com/chris/album/index.html">album</a>.Chris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.com0tag:blogger.com,1999:blog-19162445.post-1154571925824461112006-08-02T19:20:00.000-07:002006-11-09T00:05:38.072-08:00Olallie Lake and Potato ButteOver the weekend, my buddies and I went backpacking around the Olallie Lake area and camped for a night on top of Potato Butte.<br /><br />Even though we didn't hike for many miles, it was tough because of the steep trails we had to take to get to the top of the Butte, which was 5200 ft. high. It got even tougher the next day when we went up another mountain (forgot the name), which was easily 6000 plus ft. high. It was a tough climb but was definitely worth it - the view was amazing!<br /><br />I posted pics from our adventure in my <a href="http://www.puguasoft.com/chris/album/index.html">album</a>.Chris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.com3tag:blogger.com,1999:blog-19162445.post-1153639947694267682006-07-23T00:28:00.000-07:002006-11-09T00:05:37.946-08:00Redesigned PuguaSoft Site (Again)!You probably made it to my blog space via my project site - <a href="http://www.puguasoft.com">PuguaSoft.com</a>. So you probably already noticed the whole new redesigned site. I didn't like the look and feel of the skins provided by the old site running on MediaWiki so I decided to switch to Joomla! Not only does it look much better, but there are TONS more features in Joomla! that MediaWiki doesn't have. Joomla! is also alot more extensible. So don't be susprised if you notice new and cool things being added to PuguaSoft in the coming future.Chris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.com0tag:blogger.com,1999:blog-19162445.post-1153025598354344502006-07-15T21:44:00.000-07:002006-11-09T00:05:37.830-08:00Updated Site and Photo AlbumIf you haven't already noticed, <a href="http://www.puguasoft.com">PuguaSoft</a> (finally) has a (decent) web site to call home. The main design and layout is there, powered by <a href="http://www.mediawiki.org/wiki/MediaWiki">MediaWiki</a>, but there's still improvements to be made. So expect some changes in the coming future.<br /><br />I've also updated my <a href="http://www.puguasoft.com/chris/album/index.html">photo album</a> (FINALLY)! It's been almost a year since I last posted pictures about some of the stuff that I've done. Alot has happened the past year, so be sure to check back when I post some more new pics.Chris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.com0tag:blogger.com,1999:blog-19162445.post-1152256921255524972006-07-07T00:05:00.000-07:002006-11-09T00:05:37.679-08:00PuguaSoft Projects Go LiveWow, it's been a long time since I last posted something up here. Well, there's a copule good reason why.<br /><br />First, my parents came up from Cali to vist me for a while. A couple cousins and relatives also flew from Guam and was in the area for a while. So I've been busy spending time with the family, going out, and traveling. We spent a few days up in Seattle and Vancouver, B.C.. It was great - B.C. is beautiful, and the womem there are even more gorgeous! I have lots of pictures and even some video that I'll try to post up whenever I have some free time (and that will be some time).<br /><br />The other reason why I've haven't posted in a while is because I've been busy working on a couple projects for <a href="http://www.puguasoft.com">PuguaSoft</a>. The first two projects released under PuguaSoft are targeted at other software developers and programmers.<br /><br />The <a href="http://commons.puguasoft.com">PuguaSoft Commons Project</a> is a collection of open source Java libraries that are used (and will be used) by other PuguaSoft projects and products. The Commons currently consist of the <a href="http://commons.puguasoft.com/net">Net</a>, <a href="http://commons.puguasoft.com/security">Security</a>, and <a href="http://commons.puguasoft.com/security">Utils</a> packages, each of which contains various functions for their respective fields.<br /><br />My second project (it's actually the first one, but I split the Commons into a separate project), is the <a href="http://www.jirabuddy.com">JiraBuddy</a> project. It's a <a href="http://www.atlassian.com/software/jira/">Jira</a> plug-in for the <a href="http://www.eclipse.org">Eclipse IDE</a>. Unlike current Jira plug-ins out there, I'm not trying to replecate the whole Jira application inside Eclipse. Rather, I'm adding a bunch of new, cool, and convenient utilites and functions for developers using both Eclipse and Jira - one of which is the Hover feature. The Hover feature enables developers to add Jira keys/issues in Java code and then, if they place their mouse over the Jira key/issue, the summary of the issue will be displayed in a hover textbox. Cool!<br /><br />There are a couple more features I'd like to add to the JiraBuddy plug-in, but I could always use more ideas. If there's anything you want added, removed, or improved, just send an email to <a href="mailto:development@jirabuddy.puguasoft.com">development@jirabuddy.puguasoft.com</a>Chris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.com3tag:blogger.com,1999:blog-19162445.post-1144475013487589532006-04-07T22:08:00.000-07:002006-11-09T00:05:37.560-08:00Mt. BachelorIt was sometime in the middle of last December when I put a pair of skis and went down the slopes of <a href="http://mtbachelor.com/">Mt. Bachelor</a> for the first time. I fell and tubmled down the trails for the better part of the day. Although I really sucked, I have to say I was way better at skiing the first time out than I was at snowboarding.<br /><br />Now, four months later and several trips to <a href="http://willamettepass.com">Willamette Pass</a>, I've come to be a well-seasoned and experienced skier. I've conquered Willamette Pass and most of it's trails, including the black diamonds. The only trail I pussed out on was RTS (Real Tough Stuff) - maybe next season.<br /><br />Not only have I've drastically improved in skiing, but I've also got into the sport of snow-blading. Snow-blades are basically shorter, wider skis. They allow me to perform tricks easier and make sharper turns. With the blades, I can also go off jumps and pull off tricks easier. I can't do anything really amazing like 360s or backflips (yet), but I'm improving - maybe next season.<br /><br />So last Saturday, on April Fool's Day, I returned to the mountain that kicked my ass the first time 'round. This time, I came prepared and ready to return the favor. I headed back to Mt. Bachelor with a few buddies, my snow-blades, and my determination. All I have to say was - we ROCKED! <br /><br />We cruised throughout the mountain and most of the trails. It didn't matter if it was a blue or black diamond trail - Northwest Express, Outback, I-5 - we rocked 'em all! Even as a rookie skier, I have to say that I impressed even myself on how much I improved in the last few months. Not only did we fly through the trails, we also played around the terrain park going on some jumps, catching air, and even heading down the half-pipe! Of course, I didn't do anything crazy on the jumps or half-pipe - maybe next season.<br /><br />It's Spring now - the sun is shining and the ice is melting. It was a season filled with falls, bruises, a badly sprained hand, and lots of soreness - but it was all worth it. I had so much fun carving, catching air, and going through the woods with my friends and co-workers. Now, with my rookie season under my belt, I'll have to wait until the snow falls again before I return to the slopes. Until then...it's back to the b-ball courts, turf fields, rivers, waterfalls, beaches, and mountains!Chris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.com0tag:blogger.com,1999:blog-19162445.post-1143446889523549672006-03-27T00:05:00.000-08:002006-11-09T00:05:37.442-08:00Updated Blog SettingsI'm now allowing ANYONE to post comments on my blog. There's a catch, though - all comments will first be reviewed by me before actually being posted on my blog. This is to prevent spamming as well as inappropriate postings on my blog.<br /><br />So go ahead and post some comments!Chris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.com0tag:blogger.com,1999:blog-19162445.post-1143446115589138212006-03-26T23:41:00.000-08:002006-11-09T00:05:37.329-08:00It's Good To Be Back!Finally, after a week-long conference in Silicon Valley, and a weekend spent with friends in San Fran, and after a three-hour flight delay, I'm back home.<br /><br />EclipseCon 2006 was a great experience for me - I learned so many new things that will be beneficial for my Software Development career. In addition to the great talks, tutorials, and three-course meals, I really enjoyed meeting people from all over the world with the same interest as mine.<br /><br />Hanging out in San Fran with a bunch of friends was really nice after the week-long conference. The weather wasn't particulary nice when I arraived in San Fran despite being sunny all week long! Regardless, I still enjoyed my short stay there and will definitely want to come back again some time - I love the Bay Area!<br /><br />To top the week off, I was greeted with a three-hour delay from my connecting flight from Seattle to Eugene. Apparently our Alaska Airline had some kind of mechanical failure and we had to wait for a new plane to fly in for us. After the long wait and short flight, I'm now back in my cozy apartment gearing up for a long week at work. At least now I can put what I learned from the EclipseCon into actual use!Chris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.com0tag:blogger.com,1999:blog-19162445.post-1143183716731572192006-03-23T22:36:00.000-08:002006-11-09T00:05:37.190-08:00Eclipse Con 2006 - Day 4Today was the last day of <a href="http://www.eclipsecon.org/2006/Home.do">EclipseCon 2006</a>. I think that I got more out of the talks and presentations today than I did yesterday - alot of informative topics on RCP, SWT, Web Services, and more.<br /><br />Today's opening and closing remarks/talks weren't all that interesting - so I left the conference mid-way through the closing remark to get a little R&R at the hotel's spa.<br /><br />Overall, I think the EclispeCon 2006 went really well - except for the short talks (read my previous posts). Then again, this was my first time attending a conference this size. Regardless, I came out of the four-day conference with alot of great and useful information - more than I imagine I would before coming here to Silicon Valley. If I have the opportunity, I definitely would like to attend future EclipseCons as well as other software and IT conferences.<br /><br />Now that I have all this information about the different Eclipse projects, I can't wait to get back to the lab and start on new projects for myself as well as for my employer.<br /><br />Although this is the end of the EclipseCon, it definitely isn't the end of my "vacation". In fact, it's just the start when I head up to San Fran to party it up with some friends for the weekend!!!Chris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.com0tag:blogger.com,1999:blog-19162445.post-1143096830453848682006-03-22T22:34:00.000-08:002006-11-09T00:05:37.040-08:00Eclipse Con 2006 - Day 3It's day 3 of <a href="http://www.eclipsecon.org/2006/Home.do">EclipseCon 2006</a> and nothing too exciting happened. I went to the usual talks and presentations about RCP, DSDP, and other Eclipse projects and tools. Some of the more interesting ones I attended were about actions and commands and the undo system.<br /><br />The key note about Apache and Eclipse presented at the start of the day wasn't particually interesting. I spent most of the talk just checking email and surfing the web...<br /><br />After the second day of attending the short talks held towards the end of the day, I have to say that I really hate the way they have set it up. As I mentioned in yesterday's post, the short talks of nine minutes are held in different conference rooms spread all over the convention center and are presented one right after the othere. There are not breaks in between the short talks. So that means you gotta run or leave the a talk early in order to attend the next talk without missing it.<br /><br />Today's lunch wasn't all that great either - it was some kind of pasta. But the reception at the end of the day was much better. There were a variety of foods from different cultures.<br /><br />Anyway, I bought a bunch of books on Eclipse plug-in and RCP development, and one on JST. Although I can get them for less expensive at Amazon.com because of the taxes I have to pay here, I figured that since my company is gonna reimburse me for the purchases, why not go all out!Chris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.com0tag:blogger.com,1999:blog-19162445.post-1142997241499687112006-03-21T18:52:00.000-08:002006-11-09T00:05:36.916-08:00Eclipse Con 2006 - Day 2Day 2 of <a href="http://www.eclipsecon.org/2006/Home.do">EclipseCon 2006</a> was great - lots of informative talks and presentations, good food (breakfast, lunch, AND dinner), and free vendor marketing crap!<br /><br />The talks and presentations I attended today mostly consisted of RCP and plug-in development, and various tools for Web Services and Hibernate. The one talk I attended today that was particularly interesting was <a href="http://www.eclipsecon.org/2006/Sub.do?id=195">"NASA Mission Operations with RCP"</a>. The talk went over how NASA uses RCP and many other Eclipse platform tools to create custom applications used by the Mars lander and Mars rover missions. It's hard to describe everything the RCP application does, so just take my word for it, it was very cool!<br /><br />The one thing I don't like at the conference are the the 9-minute talks. I don't mind that the talks are only 9 minutes, actually I think it's a good thing since it prevents the presenters from rambling on and on. What I DON'T like is that there is no extra time in between the short talks to move from one place to the other - a new short talk starts right after the other ends. That means I had to <span style="font-style:italic;">run</span> from one conference room to another if I wanted to attend a different short talk without being late. I hope this is something they'll change in next year's conference. I think a two minute passing time would be great to have between each short talk.Chris Diazhttp://www.blogger.com/profile/00649613584815618271noreply@blogger.com0