I'm using JBoss 3.0.0 with CMP2.0 with MySql database.
I designed a "proof of concept" by writing by hand every
files: ejb-jar.xml, jbosscmp-jdbc.xml, mysql-service.xml, etc... And It works fine.
I have tried to do the same, with industrial application (60 tables), using : middlegen, xdoclet, ant, Jboss 3.0 and CMP2.0 feature.
The installation of "ear" file works fine, but each time
I want to call method of EJB Entity (wich return Collection) I get this message:
2002-06-22 00:38:49,060 INFO [STDOUT] java.rmi.ServerException: Invalid invocation, check your deployment packaging, method=public abstract java.util.Collection com.foobar.ejb.interfaces.ContactHome.findAll() throws javax.ejb.FinderException,java.rmi.RemoteException; nested exception is:
javax.ejb.EJBException: Invalid invocation, check your deployment packaging, method=public abstract java.util.Collection com.foobar.ejb.interfaces.ContactHome.findAll() throws javax.ejb.FinderException,java.rmi.RemoteException
The only difference between my "Proof of concept" and the latter application, is the automatic generation of every files by Middlegen + XDoclet !
I check the header of "ejb-jar.xml" to be sure I'm using CMP2.0 features, and I think it's correct I copied the header from my POC (<!DOCTYPE ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN" "http://java.sun.com/j2ee/dtds/ejb-jar_2_0.dtd">)
Did I miss something ?
After many hours, I managed to find what was the issue !
At the beginning, I thought that WAR application deploy on JBoss3.0 (bundle with Jetty) doesn't need JBoss' (client) libraries !! I was wrong, after putting these files on WEB-INF/lib/*, my problem disappear .