Tuesday, March 19, 2013

Oracle Certified Expert, Java EE 6 Java Persistance API Developer

Hi All,
It's been a long time i have blogged anything. Last post came in late December about Git and its branching concepts. Since then, i didn't get time to sit down and write anything constructive. Work end has been pretty burning. Deadlines and sprints are keeping busy.

Since my visit to Australia(Sydney), this February and after seeing the market there about IT, one thing is for sure, a lot of demand is there for the Certifications. I plan to get my hands dirty with JPA2 certification. It will give me an ample knowledge about this vast topic and in depth analysis. After researching from various resources, here is the list of resources i have gathered to study for this exam.


  1. Pro JPA2 - Mastering Java Persistance API by Mike Keith and Merrick Schincariol. This is book is recommended by various people on Javaranch forum to be read twice cover to cover.
  2. JPA 2 Specification is a must read in order to get thorough knowledge about the in depth working of JPA2
  3. Enthuware Exam Simulator 
I plan to jot down some notes as we did for the Java Certification Exam and plan to put up a series of articles regarding this exam. I don't promise, I am going to be very frequent in putting up the articles but i would try to be active maximum i can. I plan to sit for this exam by Mid of May. So lets explore the journey of Java Persistence together. What i can figure out from the book is, it is currently lacking in complete examples, but we can think of some use-cases for in depth analysis of topics like Locking, Entity Managers or Criteria API. Stay tuned.
Ben

Monday, December 17, 2012

Git Branching Concepts



Dear All,

Today I came across an interesting concept in GIT and wanted to share this information with all specially with people who are new to Git. The concept relates to branches. Basically branches in 'Git' are places where independent states are recorded. These recorded states only exist in Git repository. In order to use the contents of the recorded state, we need to obviously  materialize those recorded states in our File system. When we say something like

Git checkout branch
This is where we are materializing the recorded state from Git repository to our file system.

Here is the problem area over which many new-comers or experienced users to git can be confused. I was confused as well that sometimes when we are doing some changes locally in our temporary branch and without committing those changes we issue a check out command like

git checkout master

Then we issue the status command from the master branch this time

git status

We will see all those changes which we made in our temporary branch are also appearing in  master branch . Confusing isn't it?

'Working Tree' is a concept which can be used to clarify this confusion. Please remember that when we are editing files in our branches, we are not editing Git files at this point, we are just making the changes locally and we call it a 'Working directory(tree)'. If we don't commit those changes and switch the branch, we will still have that file and these changes will be visible even though we have switched to a new branch. Please remember, changes we do to the working tree don't become part of branch unless and until we commit them. They are basically hanging(floating) over the top of the branch that we have currently checked out and hanging part is the key concept missing mostly to newcomers.

Inside Git, we are allowed to checkout to another branch while we have a local change in our working tree. Git has allowed this  feature deliberately. Why?

It's very common that sometimes we start working on a branch modify something and checkout  to a new branch and then suddenly we find that this feature logically doesn't belong to the currently checked out branch but to some other branch. By allowing this feature, we can check out to another branch without losing the changes we already made in the working tree and commit changes from the branch where the change logically belongs. Normal workflow can be like this

#currently on master branch
$ git checkout master  ;

#We add some feature in here without realizing that it logically belongs to the temporaryBranch
$edit IndividualProfile.java

#This will keep the local modification in our IndividualProfile.java. Keep working on it and finally we can say..
$git checkout temporaryBranch

#On temporaryBranch
$git commit ;

Hope this helps clarifying the concept of branches and to people who can find it confusing.
Beenish

Wednesday, April 11, 2012

IReport How To's

Dear All,
Currently i have started working with JasperServer and IReport professional 4.5. I am currently using the trial version. What i have been facing is pretty lack of resources even though it is opensource. I planned to get my hands dirty on every component of IReport designer. If we talk about jasper server with respect to reporting and dashboard, after delving into JasperSoft, i pretty much feel that, main play is about IReport designer and its components. Rest is pretty much straight forward. Obviously exploiting the full BI capabilities leads to a concept of dataware, data mining and proper ETL. My current focus of the upcoming series would be on IReport components and how to achieve basic tasks through them. So that people don't face the problems i have faced and it helps them overcoming the common difficulties. Lets continue ahead on the journey then :).
Ben

Saturday, April 7, 2012

HttpServletRequestWrapper/HttpServletResponseWrapper

What are these features?
Providers of a convenience implementation for HttpServletRequest or HttpServletResponse (to make it customized).

Why do we use these features?
If we want to customize the methods of HttpServletRequest or HttpServletResponse (e.g using it for parameter validation, header customization, decryption/encryption, decompress/compression,sanitizer etc.)  


How do we use these features? 
extend the HttpServletRequestWrapper/ HttpServletResponseWrapper. Create a public constructor having an argument of HttpServletRequest/HttpServletResponse. Then call its super constructor having the argument given as parameter. Finally override the methods you want to implement or create your own.

public class ValidatingHttpRequest extends HttpServletRequestWrapper {
       
       public ValidatingHttpRequest(HttpServletRequest request) {
               super(request);
       }
 
...more codes here.. 

Tuesday, March 20, 2012

Renaissance Commercial

Dear All,

Here is our first professional commercial from our designer Rishma Malhotra. Pretty awesome. Any modifications are welcome
video
Awesome work.
Prithvi

Thursday, December 8, 2011

Primefaces Application

People,
This week, we will put up a sample working application using Primefaces 3.0 and JSF 2.0. The following process has been outlined by me. I am fairly new to primefaces and JQuery so that is what i am outlining.
  • Thought about application - Friday
  • Components of Primefaces to use (design finalization) - Friday
  • JSF working know how - (Fri/Sat/Sunday)
  • Primefaces components over how
  • Development of theme that is JSF Templating (Monday/Tuesday)
  • Overview of JQuery (Friday/Saturday)
  • Starting development of application -(Wednesday/Thursday/Friday/Saturday)
I will update about whatever progress i make and will upload the code as well.
Nikhil

Friday, December 2, 2011

Mock 2 Completed

hi,
you people must be thinking where is some post for last few days. First of all i am really sorry, i have lost a couple of days doing nothing but i have one achievement that i have tried to develop this mock from scratch. Please find the image below
Well, i say it was a pretty decent effort but in this, i have learnt something like browser compatibility. There are versions in which it is not working like IE6. The method, by which i have created the menu is not compatible with IE6, i was very happy when i created it but then later i have realized, i have left pretty important concerns in that which i will highlight now.

  1. Hovering is not working correct. It means that when the person hover over the text then only the link will activate, else not. Though it should change into hoverable wherever i click it on the menu bar icon. :) So this concept i am learning still.
  2. I learnt about two different ways to create this menu or the strategies which i will be sharing with you in next post.
  3. The most important thing is to align the text in center and in middle of menu. I will share the hack with you pretty soon.
  4. There was a light background image which i have forgotten to use.
  5. The body should have a rounded rectangle which i forgot to put
  6. Then in the content section there is even certain problems.
So i know that i have slacked a lot but just getting back on track. I know December has started and i have to achieve alot in this. So time to introduce the responsible animal back. See ya then.