Putting my resources in a completely new JAR file and dropping it in the deploy directory seemed to make it work...
Now can anyone tell me why the class loader has been done this way... so you can't get to resources in the WARs own file or in JARs within the WAR lib directory?!!!!
Seems fairly like a rather silly thing to do... basically wasted a entire day on this...
InputStream in = this.getClass().getClassLoader().getResourceAsStream("/com/mycompany/resource/MBTransform.xsl");
you should have tried it without the leading slash "/" - this way:
InputStream in = this.getClass().getClassLoader().getResourceAsStream("com/mycompany/resource/MBTransform.xsl");
To finish with an old developer word: "On my machine it works...".