some validation and dao's update