In recent years there has been several technological advances in Wireless Sensor Networks (WSN), but energy still remains a paramount resource. The amount of available energy has a direct effect on the performance, functionality and lifetime of WSN. Being bound by cost and size, sensor nodes are usually equipped with limited amount of energy and therefore requires a replacement of batteries occasionally. But replacement might not always be feasible option and in some scenarios might even be prohibitive. This indicates the need for more viable solutions, these involve generating energy at the sensor nodes or have it delivered to them i.e., energy harvesting or wireless energy transfer. The objective of this paper is threefold: first we present a survey on potential renewable energy resources along with their characteristics and applications in WSN. Second, this study also describes various battery recharging techniques and their applications with respect to WSN. Finally, we discuss formidable issues, challenges and future research directions.