Path of sun calculation using java
The NOAA formula sheet
expresses some quantities in radians, some in degrees, and some in minutes of time.
It does say which is which, but it's easy to miss. A few minor code changes can help expose bugs:


Store angles in radians. Trigonometric expressions free of Math.toRadians calls are easier to verify against a reference document.
Put that document's URL in a comment so it's easy to find.
If you need to store something in other units,
make it obvious
with a naming convention such as long_deg for longitude in degrees.


The other quirks are the $\cos(\phi)$ and $\cos(180 - \theta)$
on the left hand sides of those equations.
$\arccos$ has a restricted range of $[0, \pi]$,
which is OK for zenith angle but leads to 180-degree errors in azimuth
unless you code east/west cases or derive new formulas where you can use Math.atan2.

The solar hour angle should equal 0 at noon and increase by 1 degree every 4 minutes.
Sunset hour angle should be about 90 degrees near an equinox, smaller in winter, larger in summer.

The sunrise/sunset formulas produce times in minutes past midnight UTC, so you'll need to apply a time zone offset to get local times.