Hi,
Not sure how well this is going to work for you, without a lot of tweaking (but I haven't tried it myself). The classes your dependent on are coming from the alfresco-solr4xxx.jar that you'll need to have on the classpath of your external Solr. As well as this, Alfresco have added other alfresco jars to the Solr4 webapp so I'd guess you'd need these two. You can find them in your alfresco tomcat's webapps/solr4/WEB-INF/lib directory.
Even if you do get past this dependency issue (and there may be other issues hiding behind this as well), I imagine you'll have the same problem you saw when copying the war out. Alfresco is configured to use bidirectional SSL to secure the communication between Solr and Alfresco so unless you also apply the same security on your external Solr using the same certificates or disable the SSL requirement completely you won't be able to get Alfresco and the new Solr to talk to each other.
Also putting Solr and Alfresco on different servers is going to generate a lot of network traffic between the 2 nodes, and probably reduce performance. The model used by Alfresco is actually a pull model from Solr rather than a push into Solr. So the alfresco code (from the extra jars) that lives in the Solr app makes frequent HTTPS calls to Alfresco to determine if there is new content, ACLS, models etc to index and if there is it pulls those across creates Solr document objects from them and then uses standard Solr APIs to ingest the content into the index. This lets the Alfresco application not worry about the need for indexing at all with the exception of answering specific questions that Solr asks periodically. It also leads to the eventual consistency model that is used for indexing since the introduction of Solr in Alfresco 4.0
WIth regards the use of a central Solr instance, the default Alfresco security setup is going to make this difficult to do. Either you allow Solr to use bidirectional SSL so that Alfresco knows it's talking to a trusted Solr but which will probably break your ability to access the SOlr index from anything other than Alfresco, or you turn off the SSL requirement both for Alfresco and Solr, which means that anyone who can access the Solr node can impersonate <em>any</em> user and retrieve any content/metadata/index info that exists in the index, bypassing all Alfresco security imposed on the content itself
So, I'm sure it's possible to do, but it's not often done because of the complexities from the design. And that's the real point, Alfresco designed the index service to work with a dedicated Alfresco Solr node, not a shared Solr service.
Regards
Steven