Paul Labis: This is a personal blog where everyone can read my experiences, ideas and thoughts about programming, latest gadgets and other information technology related topics, lifestyle and many other stuff I would like to share to the public.

DDSteps Testing with Ant Tutorial

It has been almost a year that I've been using DDSteps for testing a back-end project module and I haven't been able to share or create an article about it. So to those people reading this article, I hope this helps you get started on DDSteps testing.
DDSteps is an integrated tool stack, combining the best open source testing tools for Java and adding the ability to resuse test cases and test data.

DataDriven so that when you want to test "sign up" on your site, you can test the same flow with both "George Bush" and "Владимир Путин". Just add another row to spreadsheet, that's all! - by 
In this tutorial, I will discuss a little about this simple java application I made focus on testing and generating html test results using ant. We will not deal much on the theories since those kind of information are already provided on I usually use eclipse as my preferred IDE in developing the application. The application makes use of ant to generate the HTML JUnit reports.

Fix upside-down or inverted webcam on Ubuntu linux

I am running Lucid Lynx 64 bit OS version on my Asus i3 K52J Series laptop. Like everyone else, I like using Skype video/chat as well as Cheese camera for taking pictures and videos. Not until then when I had a problem using it.

NOTE: Not advisable to do "export LIBV4LCONTROL_FLAGS=3", LIBV4LCONTROL_FLAGS is for debugging purposes only. - by Hans De Goede(libv4l author and maintainer)

I was so disappointed that my camera display was inverted! I tried reading several blogs and posting comments on Ubuntu forum threads online for days and but none of their solutions helped solved my problem. It could have been easily solved if only there was an option to invert my camera on Video4Linux Device Preference. Sadly, there was not! So, I decided to find a way to flip the camera by looking into export options on gtk-v4l(Video4Linux). 

Fix Asus K52J Sound or Speaker Problem

I just got a new replacement company laptop for my 2 year acer dual core laptop. I now have Asus i3 K52J Series Laptop. Like everyone else using Lucid Lynx on their Asus. I had a problem with my sound and audio device and drivers.

Some of my problems were:
  • Speakers do not mute when headphones are plugged in.
  • HDMI sound out not working.
  • External microphone not working.
Thanks to this Ubuntu Forums Thread where a fix is posted though incomplete in my case. So, I decided to create one of my own and hope to help someone else looking for a solution online. The steps below are the things I did fixing this problem.

Use Arguments on Property File

The goal on this tutorial is to be able to format a value on a properties file given its parameter or arguments. It is best describe as passing value as a parameter and inserting those values on the string retrieved from the properties file.

To better understand what I'm doing, read and understand my example code below.

Property File Sample
message.welcome= Welcome {0} to {1}!
message.thank= Thank you for you visit {0}.

Embedded Jetty in Spring MVC, IoC/DI

I was trying to configure embedded jetty in a spring application that implements MVC(Model View Controller). I want to utilize single spring applicationContext xml file for IoC(Inversion of Control) and DI(Dependency Injection) on dispatcher servlets.

The goal is to be able to use or reference beans configured/located on already been loaded spring application context. Read and understand my resolution below.

SVN error on Eclipse: org.tigris.subversion.javahl.ClientException: Attempted to lock an already-locked dir

I met an svn eclipse error while attempting to committing to svn repository. I was thinking I might aswell share how I resolve this problem to everyone.
SVN error on Eclipse: org.tigris.subversion.javahl.ClientException: Attempted to lock an already-locked dir
org.tigris.subversion.javahl.ClientException: Attempted to lock an already-locked dir
svn: Working copy ‘D:\htdocs_svn\sites\all\modules’ locked
org.tigris.subversion.javahl.ClientException: Attempted to lock an already-locked dir
svn: Working copy ‘D:\htdocs_svn\sites\all\modules’ locked

I'm still breathing

It's been a while since my last post! I had been very busy lately with my work... I miss writing articles. After weeks of hardcore work, I've learn a lot about spring and jetty and I would say, its worth working hard.

I have this task of setting up a project for development. Its a web application for testing. I've learned embedding jetty in a spring application implementing MVC(Model View Controller) design pattern. Other than that, it builds character. Patience really was important.

Asus PL30JT Technology Business Notebook

Asus showed a notebook of new businesses, PL30JT at CeBIT 2010, which comes with a stylish design. The new Asus notebook includes Turbo33 technology company claims to improve performance by 33%.

Asus PL30JT Business Notebook

The PL30JT is fueled by Intel Core i5 processor and up to 4 GB of RAM. It is equipped with two graphics cards, the 1GB NVIDIA GeForce 310M dedicated graphics and integrated Intel GMA HD technology with Optimus. The professional notebook comes with a 13.3-inch 1366 × 768 LCD display and support for WiFi. It weighs only 1.7 kilograms, with an 8-cell battery. [via itechnews]

Lenovo IdeaPad Y460 and Y560 Notebooks

Lenovo has not forgotten the home users usually at CES 2010, the company unveiled two new models, the Lenovo IdeaPad Y460 and Y560 notebooks, with options on the latest processors Core i3, i5 and i7 Intel. The IdeaPad Y460 has a 14-inch 1366 x 768, Core i3 or i5 processor, ATI Radeon HD5740/HD5650 and up to 320 GB hard drive, while the IdeaPad Y560 has a 15.6 screen inch Core i3, i5 and i7 CPU, ATI Radeon HD5730 graphics and up to 500 GB hard drive.

Lenovo IdeaPad Y460 and Y560 Notebooks

Both machines have up to 8 GB of RAM, Combo drive blu-ray/dvd and standard WiFi b / g / n. There are also optional Bluetooth, 3G and WiMAX. Include three USB 2.0 ports, a / eSATA combo USB, ExpressCard slot and HDMI, with Ethernet, audio in / out and a memory card reader multiformat. [via slashgear]

Lenovo IdeaPad G460 and G560 Switchable Graphics Notebooks

The IdeaPad G460 has a 14-inch LED screen with backlight, while the G560 gets a screen of 15.6 inches. They have up to 500 GB of hard disk storage. They start at $ 699.99.

Lenovo IdeaPad G460 and G560 Notebooks

Lenovo also announced the V360 IdeaPad 13.3-inch IdeaPad V460 14-inch laptops SOHO market. They have Switchable Graphics and are powered by 2010 Intel Core processors. Both models starting at $ 749.99.

ASUS Eee PC 1005P Minimalist Netbook

Recently, detailed specifications and pictures of 1005P ASUS Eee PC showed on SlashGear, the netbook has a minimalist design with a pretty decent hardware spec.

ASUS Eee PC 1005P Notebook

This netbook features a 10.1-inch screen supports a resolution of 1024 × 600, it also features an Intel Atom N450 (1.66GHz) processor, 1 GB of RAM and Intel GMA 3150 graphics. You can choose between a 160 GB hard drive 250GB and the netbook has WiFi b / g standard, the more impressive as it offers up to 12 hours of battery life.

ASUS Eee PC 1001P Netbook

Plus in Germany, the ASUS Eee PC 1001P has been made available for pre-order costing € 249 which is the equivalent of about $ 357 USD.

ASUS Eee PC 1001P Notebook

The netbook runs Windows XP rather than Windows 7, which we would have expected. It also has a smaller capacity battery than other standard models that will probably limit their use to less than 10 hours. What it does come with a new Intel Atom N450 processor to be launched January 6, which is also the official launch of the Eee Netbook 1001P.

Dell Vostro 3000 Slim Lightweight Notebook

Following the V13 Vostro, Dell offers the new Vostro 3000 series, a range of new laptops thin, lightweight and robust design for small businesses. Spurred by the latest Intel Core Series, Vostro 3000 is up to 6 GB of memory.
Dell Vostro 3000 Slim Lightweight Notebooks

New Dell Vostro 3000 series includes the 13.3-inch Vostro 3300 which is one of the thinnest commercial 13-inch laptop with integrated optical drive, the 14-inch Vostro 3400 with up to 8 hours of autonomy, and the 17 inch Vostro 3700 with an optional Core i7 quad core processors.

Add Related Posts Widget to Blogger or Blogspot

It be better to display related or similar articles below your articles or posts on your blog. This way your readers would easily know that there are related articles you written and they can further read.

The steps to adding related posts widget is easy. It would take less than 3 minutes add it on your blog.

Before starting, make sure to download the related post JavaScript file or ccopy and paste its content to your desired file.js. Then make sure to upload it online where it will be available for import on your template. I recommend you to upload it on, or to get a DIRECT LINK to that file.

Tutorial on Android Views - Part 2

In this article, we will be dealing with another types of Android views. They are the RadioGroup, RadioButton, ProgressBar and AutoCompleteTextView. By learning the following views, it will broaden your understanding on android views that will help you build your own android application. 

Lets start by creating a new android project on eclipse. See the screenshot beside for android project specifics. 
RadioGroup and RadioButton
This two views is basically used to let users choose something among available options. RadioButton has two available states. It is either checked or unchecked.  Once a RadioButton is checked, it cannot be unchecked unless its grouped along with other radio button on a RadioGroup. A RadioGroup is a type of view that is used to group one or mmore radio buttons, thereby allows a user to select only one radiobutton or only one option.

Check If a String Contains a Substring in Java

This article shows some useful ways on checking a string that contains a substring. I find this topic relevant to document as I may someday use this on another project. Also, other developers might look for an article online to help them solve their problem. Since this topic is very basic Java, I only added short description and sample code below. 

Best Tool for Monitoring Social Media or Websites

I found a great site or tool for monitoring social media or social networking websites like Twitter, Facebook, FriendFeed, YouTube, Digg, Google etc. If you wanted to know what people are saying about you, an event, any person or anything,  I recommend you do a visit and perhaps, try out Social Mention services. 

They have a Realtime Buzz Widget which is very interesting, very useful and very easy to use or integrate on any blog platform whether it be Wordpress, Blogger or others. It is as easy as adding a JavaScript widget into your blog template. It does not require programming skills. all you need to do is to copy the html, set the search phrase and title, and put it on your site. The code below are the only code you'll need to add into your blog.

Android Software Competition by Globe Telecom

I first heard this news from Calen Legaspi, our CEO at Orange and Bronze Software Labs, that Globe Labs will host and conduct its first mobile developer event for 2010. I've been hearing about Android platform since 2008 and now, Globe Labs posted an invitation for all developers to explore the new mobile platform.

The event is an Android software competition open for all Filipino developers. This is an invitation to all developers to build their mobile application on top of Android platform.

Tutorial on Android Views - Part 1

On my previous articles, we had a discussion on the android's definition and layout. I assume that you have already learn basics on manipulating android layout. In this and on the next article, we will be exploring and dealing more on the various types of commonly used views such as TextView, EditText, Button, ImageButton, CheckBox and ToggleButton. Those widgets are likely the most commonly used in developing android applications.

Lets begin by creating a new project on eclipse:

After which, create an Android XML under res/layout and name it basicviews.xml having written inside is the following code below:

Webmaster Tools Tip for Blogger

During my research about webmaster tools, I found out that there are three major search engine that provides detailed information on how they see and crawl your website. However, they require account confirmation and website verification before you can access most of its features. Below are the steps on how you'll be able to take advantage of those search engine webmaster tools.

Google Webmaster Tools
  1. Log in to with your Google account.
  2. Enter your blog URL and click Add Site.
  3. You will be presented with several verification methods. Choose Meta Tag.
  4. Copy the meta tag, which looks something like
    <meta content="dBw5CvburAxi537Rp9qi5uG2174Vb6JwHwIRwPSLIK8" name="google-site-verification"></meta>
  5. Leave the verification page open and go to your blog Dashboard > Layout > Edit HTML.
  6. Open the Blogger Dashboard and paste the code after <head> tag.
  7. Click on Save Template.
  8. Go back to the verification page and click Verify.

Techie Focus List

During my day job, I work on the business and back-end layer of a J2EE Quoting Software with heavy data handling and manipulation. Even though what I'm working on is part of an enterprise web application, I feel like my abilities in developing ground up application are depreciating. I find my self in need to keep up with the latest trends of technology and to learn what is in demand. 

The scale of today's demand of software or applications seem to be in favour of  the web so I decided to focus on the web stack. I made a list below of the technologies hopefully are and will be in demand soon according to the people and forums I asked on-line.

Blogger or Blogspot Title Tag Optimization Tip

I know there had been lots and lots of title tag optimization tip written online. However, I thought of sharing what best and works to me among all those I have read and researched online. I made a little bit of improvement to make search engine bot crawlers read my blog title efficiently. 

We do know that blogger is part of Google, however, blogger default templates are poorly optimized. To be able to compete woth other blogs, there are few things to do and that includes optimizing your blogger title tag.

Tutorial on Android Layout

On my previous article, I've discussed more on the theory and definition of an Android. In this article, we will be dealing more on the technical aspect of developing android application layout. I will walk you through various elements that make up the user interface(UI) and how to position different widgets on an android screen.

Terms to remember:
  • Activity - the basic unit of an android application. It contains views and ViewGroup. 
  • View - a widget that has an appearance on screen.
  • Widget - are user interface components like buttons, labels, text boxes, etc.
  • ViewGroup - a special type of View that provides the layout in which you can group views, order the appearance and sequence your views.
Just an additional information; In a typical android project, UI is defined using an XML file located in the res/layout folder. An example is main.xml located in res/layout folder.  During runtime, the .xml file where you defined your UI is loaded using the onCreate() event handler of your activity class and using setContentView() method of the extended Activity class. Moreover, during compilation time, each of the element in the defined UI xml file are compiled into an equivalent Android GUI class wherein its attributes are represented by methods.

Learning Android By Definition

Android is an open source platform for mobile devices. It is not a hardware. Its basically a software. In fact, It is a software stack as defined by Google. Encase your not familiar with the term, software stack is compose of an Operating System(OS), middle-ware & the key applications.
  • OS is by simply defined as platform between you and the hardware and where all applications run.
  • Middle-ware is/are the components and available package that allows applications to communicate to a network and to one another.
  • Key Applications is/are the actual programs or software that the phones will run
It was the product of the joint effort of Google and Open Handset Alliance(OHA). It was released November 5, 2007 which is shortly just after Apple's first generation iPhone release. Android is based on an opensource operating system called Linux.

Hello World by Techie Boy

This is my first article post so its a Hello World article! Its hello world because most of developers do the very first application regardless of any technology that is being use, they begin by displaying a "hello world" on a computer screen or may vary with regards to its intention.

Moving forward, I'm Paul Labis. Sole writer & owner of this blog. I am a graduate of the degree in Information Management from Ateneo de Cagayan University and working as a Software Engineer in Orange & Bronze Software Labs. 

I like anything related to information technology. I am also an Open Source believer. That sums up my explanation why I am inclined to Java programming, Groovy & Grails, App Engine, Python & DJango and other Open Source Frameworks.

Web Service Tutorial in Java

Web Service is a piece of software that makes a service available on web. It uses a universal standard XML processing. It is interoperable in a sense that it enables a .NET software on a Windows Server to communicate to a JAVA software on a Unix. In other words, its not bound to a specific programming language or an operating system.
  • "Provider agent" implements a Web service
  • "Requester agent" (a.k.a. "client") makes use of that Web service
  • WSD(Web Service Description) represents a "contract"
  • Specifies the message formats, transport protocols, locations 
What we want to do in this article is to create a project where it utilizes a web service online. I plot the step by step way of utilizing a web service through terminal.