That's where the term was coined. To be honest, you're better off looking for design patterns. Searching for design pattern references will give you fairly low-level information, whereas integration patterns will give you high-level information. The idea is to read a LOT and attempt to combine these ideas into one unified approach to development.
In all honesty, getting good at it takes actual practice more than simply reading and trying; until you've encountered a problem for real and realised "ooh, I can do xyz", you won't REALLY take it in and see the value. Synthetic prototyping can only take you so far.
Sort of...
They're tough because generally, your average host doesn't want to shell out for something like a Vega, or even Zing. And your average person learning how to do these things isn't that keen to shell out for dedicated hosting for these "toy" applications. But to be honest, the kind of web apps that make use of Java are, in practice, hosted on your own servers, on which you have complete control. Garbage collection on heavily loaded applications can be a problem in Java without Vega/Zing, too; another reason why many hosts shy away.
For learning, there's nothing wrong with hosting your stuff locally. In fact, I find that it helps people learn a lot faster, as they're more heavily involved in the complete process, right through to deployment.
But as I mentioned earlier, Java isn't the be-all and end-all; rather use whatever is best suited to the task.