After picking on Zacharias yesterday, I thought I'd balance things out a bit and talk about Joseph. Let's look at Matthew Chapter One again.
Matthew 1:18 Now the birth of Jesus Christ was as follows: when His mother Mary had been betrothed to Joseph, before they came together she was found to be with child by the Holy Spirit. 19 And Joseph her husband, being a righteous man and not wanting to disgrace her, planned to send her away secretly. 20 But when he had considered this, behold, an angel of the Lord appeared to him in a dream, saying, “Joseph, son of David, do not be afraid to take Mary as your wife; for the Child who has been conceived in her is of the Holy Spirit. 21 She will bear a Son; and you shall call His name Jesus, for He will save His people from their sins.” 22 Now all this took place to fulfill what was spoken by the Lord through the prophet: 23 “BEHOLD, THE VIRGIN SHALL BE WITH CHILD AND SHALL BEAR A SON, AND THEY SHALL CALL HIS NAME IMMANUEL,” which translated means, “GOD WITH US.” 24 And Joseph awoke from his sleep and did as the angel of the Lord commanded him, and took Mary as his wife, 25 but kept her a virgin until she gave birth to a Son; and he called His name Jesus.
Notice in verse 19 that Joseph is called a righteous man. Notice, also, that he is not a vindictive man but rather merciful. When his betrothed is found to be with child, no doubt his heart was broken. But he did not lash out in self-righteous indignation. Instead, he chose to put away Mary quietly to avoid bringing more attention and shame to her than what she would already face.
Notice, also, that once he had the dream, he obeyed, took her as his wife, and became her partner in the face of the shame and whispers that undoubtedly followed them wherever they went.
Yes, Joseph certainly was a righteous man. He also had many other good qualities and was well suited to be the surrogate father of our Lord when He was a child, which in included mercy and empathy.