Germany can see itself being used as the magic money tree for the EU - which (I suspect) is why the German Constitutional Court issued its ruling. But, bearing in mind the parlous state of the Italian and Spanish economies, the EU can't afford to stop it's QE program - which is going to bring it into direct conflict with the constitutional court.
The problem that the ECJ has is that the German Constitutional Court is not challenging it's constitutional position; it is stating that the EU is acting outside of the bounds of the various European treaties. In other words, the ECJ is facing a legal challenge stating that the EU is ultra vires - acting beyond it's legal powers.
And that will be difficult for the ECJ to swerve round. It has to explain how the constitutional court's interpretation of the law is wrong. The fact that it hasn't thus far suggests to me that the German Constitutional Court has a strong case.
I can't imagine the German Constitutional Court would have made a ruling on a whim, by its very nature I'd expect it to have done a deep dive into all the wording and looked very carefully at their documents and the EU treaties before it arrived at a decision. Not forgetting as the largest net contributor by a big lump if the EU took to ignoring the Germans it would not be pretty.