Weakness, the most comon one would be earth, since it can be manipulation to restrict the water's movement and it's devastating strength, although i think the properties and strength behind wind based techniques if used correctly, may serve well against water, being able to blow it away from danger, or simply splitting the techniques in half. I would use is to my advatange in an ice manipulation way, since i am an ice user, if my water techniques were to be restricted by earth i would create ice out of that water and tear apart the earth, after all, ice is stronger than earth.
Strengths, would be against fire, naturally, everyone knows by simply logic that water can put out fire, however if the fire is too larged scaled, the water used against it could work as a double edged blade, in the process of putting down the fire, the clash between the fire and water would cause the water to vaporise, causing a wall of steam to form around the clashing, this would block the user's view from the opponent, and leave him wide open for hidden assaults. I would utilize this strength by first location well the opponents possition, and then, on purpose using a lower ranked water against a stronger fire to create steam between us, hiding my location from my foe i would launch a hidden assault with a technique that covers a wide range, making sure to hit the opponent even without knowing their exact location, and since steam is blocking their vision, it would be much harder to counter properly.