In this work, we develop an adaptive algorithm for solving elliptic optimal
control problems with simultaneously appearing state and control constraints. The
algorithm combines a Moreau-Yosida technique for handling state constraints with a
semi-smooth Newton method for solving the optimality systems of the regularized
sub-problems. The state and adjoint variables are discretized using continuous piecewise
linear finite elements while a variational discretization concept is applied for the
control. To perform the adaptive mesh refinements cycle we derive local error estimators
which extend the goal-oriented error approach to our setting. The performance of
the overall adaptive solver is assessed by numerical examples.