In trying to reduce the footprint of the ACC, one step is to remove the dependency on the ejb container. This causes no build-time problems because the ACC itself does not depend on the class(es) in the ejb container that are used for injecting @EJB references, for example.
But if you rebuild the appserver/appclient/client/acc and appserver/appclient/client/acc-standalone components having removed the ejb dependency and then deploy an app containing an EJB and a client that uses the EJB, running the client fails with an NPE. (stack trace attached)
1. cd to main/appserver/appclient/client/acc.
2. Edit the pom.xml file to comment out the dependency on the ejb-container module.
3. mvn clean install ; cp target/gf-client-module.jar glassfish3/glassfish/modules
4. cd ../acc-standalone
5. mvn clean install ; cp target/gf-client.jar glassfish3/glassfish/lib
6. Restart the server.
7. Deploy the attached app using "asadmin deploy --retrieve localdir TestEJB.ear"
8. Try to run the client using "appclient localdir/TestEJBClient.jar"