Posted by Vikas Hazrati on Sunday, February 7, 2010
Installing Tata Photon+ on Ubuntu is easier than what you would do on Windows$. Follow the steps
- Connect the photon to the Laptop
- Goto Preferences -> Network Connections -> Mobile Broadband
- Click Add
- It would automatically detect that the device is provided by Huwei

- Read the rest of this entry »
Posted in linux | Leave a Comment »
Posted by Vikas Hazrati on Friday, February 5, 2010
Use Wget to mirror a site with the following option
wget –mirror -w 2 -p –html-extension –convert-links -P . http://www.vikashazrati.com/
do a wget –help for more information on the command
–mirror: Specifies to mirror the site. Wget will recursively follow all links on the site and download all necessary files. It will also only get files that have changed since the last mirror, which is handy in that it saves download time.
-w: Tells wget to “wait” or pause between requests, in this case for 2 seconds. This is not necessary, but is the considerate thing to do. It reduces the frequency of requests to the server, thus keeping the load down. If you are in a hurry to get the mirror done, you may eliminate this option.
-p: Causes wget to get all required elements for the page to load correctly. Apparently, the mirror option does not always guarantee that all images and peripheral files will be downloaded, so I add this for good measure.
–html-extension: All files with a non-HTML extension will be converted to have an HTML extension. This will convert any CGI, ASP or PHP generated files to HTML extensions for consistency.
–convert-links: All links are converted so they will work when you browse locally. Otherwise, relative (or absolute) links would not necessarily load the right pages, and style sheets could break as well.
-P (prefix folder): The resulting tree will be placed in this folder. This is handy for keeping different copies of the same site, or keeping a “browsable” copy separate from a mirrored copy.
Posted in linux | Leave a Comment »
Posted by Vikas Hazrati on Thursday, February 4, 2010
grep command form (syntax)
grep “text string to search” directory-path
Current Directory –>
$ grep "offset" ./*.txt
Directories Recursively –>
Search for a text string all files under each directory, recursively with -r option:
$ grep -r "offset" /home/vhazrati
Only Filenames–>
Pass -H option to print the filename for each match.
$ grep -H -r “offset” /home/vhazrati
Posted in linux | Leave a Comment »
Posted by Vikas Hazrati on Thursday, February 4, 2010
JBoss by default executes on port 8080. There are other hell lot of services which are run on different ports. JBoss provides an easy way of doing that. There is a file called bindings-jboss-beans.xml at the following location
/Softwares/jboss-5.1.0.GA/server/default/conf/bindingservice.beans/META-INF
<constructor>
<!-- The name of the set of bindings to use for this server -->
<strong> <parameter>${jboss.service.binding.set:ports-01}</parameter></strong>
<!-- The binding sets -->
<parameter>
<set>
bean="PortsDefaultBindings">
<inject bean="Ports01Bindings"></inject>
<inject bean="Ports02Bindings"></inject>
<inject bean="Ports03Bindings"></inject>
</set>
</parameter>
<!-- Base binding <span class="hiddenSpellError" pre="binding ">metadata</span> that is used to create bindings for each set -->
<parameter><inject bean="StandardBindings"></inject></parameter>
</constructor>
This helps in offsetting all the ports by 100 because of the following
<!-- The ports-01 bindings <span class="hiddenGrammarError" pre="bindings ">are obtained</span> by taking the base bindings and adding 100 to each port value -->
<bean name="Ports01Bindings" class="org.jboss.services.binding.impl.ServiceBindingSet">
<constructor>
<!-- The name of the set -->
<parameter>ports-01</parameter>
<!-- Default host name -->
<parameter>${jboss.bind.address}</parameter>
<!-- The port offset -->
<parameter>100</parameter>
<!-- Set of bindings to which the "offset by X" approach <span class="hiddenGrammarError" pre="approach ">can't be</span> applied -->
<parameter><null></null></parameter>
</constructor>
</bean>
so instead of the default http://localhost:8080, now the app server would be running on http://localhost:8180
Posted in Java | Leave a Comment »
Posted by Vikas Hazrati on Friday, January 29, 2010
If you are using JBoss Seam v 2.2.0.GA then there are chances that you would encounter this issue. There is a version incompatibility between the SEAM jars and EL for this version.
If you move the EL back to 1.0_02.CR4. Then everything works perfect !
Here is the pom reference.
<properties>
<jsf.version>1.2_12</jsf.version>
<spring.framework.version>2.5.6.SEC01</spring.framework.version>
<mockito.version>1.8.0</mockito.version>
<spring.webflow.version>2.0.8.RELEASE</spring.webflow.version>
<seam.version>2.2.0.GA</seam.version>
<seam.ui.version>2.0.0.GA</seam.ui.version>
<facelets.version>1.1.15</facelets.version>
<jsf.version>2.0.2-FCS</jsf.version>
</properties>
Read the rest of this entry »
Posted in Java | Leave a Comment »
Posted by Vikas Hazrati on Friday, January 29, 2010
Most probably you have included the jboss dependency in your log4j.xml like
<appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
<errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
<param name="Target" value="System.out"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{HH:mm:ss,SSS} %<span class=" />-5p [%c{1}] %m%n"/>
</layout>
</appender>
You would have to include a Jboss commons dependency along with the log4j dependency
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.14</version>
</dependency>
<dependency>
<groupId>jboss</groupId>
<artifactId>jboss-common</artifactId>
<version>4.2.3.GA</version>
</dependency>
Posted in Java | Leave a Comment »
Posted by Vikas Hazrati on Saturday, January 23, 2010
Recently Peter Deemer of GoodAgile and I from Xebia were interviewed on the Agile Adoption in India. It was an interesting discussion with Pete and I expressing our views on how the CEO’s are spending on Agile adoption and thinking about Agile as a viable platform. The interview was published in January Edition of Dataquest. Check out the interview here or download it from here.

Posted in Agile | Leave a Comment »
Posted by Vikas Hazrati on Saturday, January 23, 2010
I recently came across this comic strip from one of the old news papers. It aptly represents the power of why. Many times when we face a client situation in which want to ask the business drivers [why] behind the system being built. Most of the times we would rather not ask the “why” lest the client should consider it to be rude. Believe me it is not.

Anyway, we decided to challenge this opinion and it was very encouraging.
Read the rest of this entry »
Posted in Agile | 1 Comment »
Posted by Vikas Hazrati on Saturday, January 2, 2010
Following is a list of all interesting Agile posts that I contributed to InfoQ throughout 2009. Now what is interesting might be a subjective thing. I categorized interesting on the basis of those news posts from me which got high readership / higher number of comments as compared to other.
Of course you are invited to view the entire list here on the one and only InfoQ!
- Community
- Agile
- Topics
- Agile in the Enterprise,
- Removing Waste
A delay, in general, is getting something done later than it was scheduled for thereby causing distress and inconvenience. Likewise, a delay is considered to be a waste in the Agile terminology. A delay causes discontinuity and thereby causes other wastes like relearning, task switching etc. A few Agilists discuss the common delays and ways to resolve them.
- Community
- Agile
- Topics
- Agile in the Enterprise
A ScrumMaster as the name suggests is the guardian of the scrum process. He is a change agent supporting his team and socializing Scrum throughout the organization. He ensures smooth functioning of the team by eradicating impediments and keeping the team shielded from distractions. However, in certain scenarios, Agile teams feel that the Scrum Master is the biggest impediment.
Read the rest of this entry »
Posted in Agile, Better Software | Leave a Comment »
Posted by Vikas Hazrati on Monday, December 28, 2009
IndicThreads is one of the very few well done technology conferences in India. The 4th IndicThreads conference was no exception. It was a clear case of quality over quantity. There were JAVA enthusiasts from around the country, US and Japan who had gathered to attend the event. The event was also a huge Green IT initiative with a strong focus towards environment. Everything ranging from delegate kits ( packed in newspaper bags), saplings for delegates to plant, to the prizes (bicycle) was inline with the underlying theme of green.
There were a wide variety of sessions, all tying to the changing dynamics of JEE and focusing on the fact that JAVA is turning the corner. There was a strong agreement on the fact that JAVA would continue to survive and thrive as a platform, but the language per se was under a lot of threat in the web space. Success of dynamic languages such as Groovy, Ruby, JRuby have made many JAVA enthusiasts to sit up and have a look on what suits their needs the best and still be on the JVM.
Emergence of functional languages was also on the radar with discussions about Scala, Erlang, Haskel and web frameworks like Lift. Session on Scala by Mushtaq Ahmed was very informative and well received.
Another area which got a lot of attention was the (re)emergence of JAVA on the mobile space after Google decided to introduce Android and the fact that there would be 25 new cell phones which would be launched on the Android platform.
Read the rest of this entry »
Posted in Better Software, Conference | Leave a Comment »