I've upgraded an application from an ancient JBoss (I guess it was 4.something) and during the upgrade I left a deployment descriptor of an EJB jar component my application had. I let it on purpose since it provided different names from the default the AppServer would have provided if it was absent but after a long investigation (that included preparing an application that could reproduce the problem) I could trace that the deployer would only complain about the missing @Init method (that in fact was there) if there was an ejb-jar.xml file. If the ejb-jar file was removed the application would just deploy fine. I am providing below the stacktrace that is thrown when the error happens:
Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: JBAS014413: Could not resolve corresponding ejbCreate or @Init method for home interface method public abstract foo.bar.CallerRemote foo.bar.CallerRemoteHome.create(foo.bar.other.AnotherFooBar) on EJB foo.bar.CallerBean
... 6 more
I've attached the application that I developed to reproduce the problem.