-
1. Re: Many errors in template project causing lots of grief!
alexeyv Apr 5, 2003 7:17 AM (in response to gschadow)I have the same problem.
Warnings that you are getting during execution of the xdoclet ant target are just that - warnings.
The problem is definitely something else. I haven't been able to figure out what it is yet, either. -
2. Re: Many errors in template project causing lots of grief!
alexeyv Apr 5, 2003 2:50 PM (in response to gschadow)I guess, we both had this problem with JBoss 3.2 beta from SourceForge. (I certainly did). Looks like it's either a beta bug or incompatibility of some sort.
Solution:
1. Download JBoss 3.0.6 sources from www.jboss.org
2. Build
3. Build the template project
4. Have fun. -
3. Re: Many errors in template project causing lots of grief!
hanxuerui Apr 15, 2003 11:48 AM (in response to gschadow)I fixed this problem by change the "test/TestEntity" to TestEntity. You will find the "test/TestEntity" at the beginning of the ejb java file. under the src/ejb/test/entity/ directory.
But after this, I got into a trouble I am still working on, please let me know it will be great if we can help each other.
Thanks. -
4. Re: Many errors in template project causing lots of grief!
hanxuerui Apr 15, 2003 11:54 AM (in response to gschadow)I fixed this problem by replace "test/TestEntity" with "TestEntity". You can find this defination at the beginning of the EJB java src file.
But I had a new problem, if you have this fixed you will get the error I just posted in this group.
Let me know if you get pass this. and I hope we can help each other out. -
5. Re: Many errors in template project causing lots of grief!
hanxuerui Apr 15, 2003 11:55 AM (in response to gschadow)I fixed this problem by replace "test/TestEntity" with "TestEntity". You can find this defination at the beginning of the EJB java src file.
But I had a new problem, if you have this fixed you will get the error I just posted in this group.
Let me know if you get pass this. and I hope we can help each other out. -
6. Re: Many errors in template project causing lots of grief!
juhalindfors Apr 15, 2003 2:35 PM (in response to gschadow)you cannot use slashes in ejb names any more, 3.2 enforces this but the template project has not been updated for quite a while
-
7. Re: Many errors in template project causing lots of grief!
tobite Apr 24, 2003 5:48 AM (in response to gschadow)i had the same problem with the template project with jboss 3.2.0. as already suggested, at first it's a good idea to replace "test/TestEntity" by "TestEntity".
but here comes the next problem:
WARN [verifier] EJB spec violation:
Bean : TestEntity
Method : public abstract TestEntity findByName(String, String) throws RemoteException, FinderException
Section: 10.5.6
Warning: Every finder method except findByPrimaryKey(key) must be associated with a query element in the deployment descriptor.
ERROR [MainDeployer] could not create deployment: file:/data/tools/jboss-3.2.0/server/default/deploy/ejb-test.jar
that's (perhaps) a good moment to modify the xdoclet tags in TestEntityBean.java, because the @jboss:finder-query tags one finds there seem to work fine with jboss 3.0.6 and with jaws but not with jboss 3.2.0 (the problem seems to be, that the query entries in jaws.xml are not used. instead it would be nice, if there where query entries in ejb-jar.xml).
i deleted the @jboss:finder-query tags and added the "query" parameter to the @ejb:finder tag,
something like query="SELECT OBJECT(e) FROM TestEntity e WHERE e.id <> ?1 AND e.lastName = ?2 AND e.firstName = ?3"
that's to be done for "findByName" and "findAnotherByName".
probably i just figured out a workaround and not "the solution", but for now it works :-)
nonetheless i don't understand, how ejb-jar.xml, jaws.xml, jboss.xml and jbosscmp-jdbc.xml
work with jboss-3.2.0.
greetings - toBias -
8. Re: Many errors in template project causing lots of grief!
macleoa Apr 30, 2003 4:33 AM (in response to gschadow)For what it's worth, I got the template working by:
adding a new finder to TestEntityBean:
findByName( int pId, java.lang.String pSurname, java.lang.String pLastName )
and using this rather than findAnotherByName() in TestEntityBean.setValueObject ()
(the original logic always threw an InvalidValueException
As described above I changed the bean name to
* @ejb:bean name="TestEntity"
and in TestSessionBean set the ref accordingly
* @ejb:ejb-ref ejb-name="TestEntity" -
9. Re: Many errors in template project causing lots of grief!
sysuser1 Apr 30, 2003 7:00 AM (in response to gschadow)The slash thing is correct. Only valid token characters are allowed in EJB names. So e.g. test_TestEntity would be a valid ejb name, but not test/TestEntity.
The second thing with finder methods:
As far as I understand it CMP1.1 had no standard way of declaring finder queries. So each app server did it in its own way.
So the @jboss:finder-query tag was JBoss' way of handling finder queries in CMP1.1.
In my JBoss3.0.4 the template finder queries do not lead to deployment errors, but they don't work at runtime either.
In CMP2.0 the query attribute is used.
So the correct thing is to add a query to the template project (like you did) to make the template work under CMP2.0.
Another possibility (but worse) to make the template work would be to tell JBoss to use CMP1.1 (which is possible in one of the config files). Then the template should work. But since JBoss3.0 CMP2.0 is default.
Ciao -
10. Re: Many errors in template project causing lots of grief!
jjclose May 5, 2003 2:33 AM (in response to gschadow)
I have a couple of questions about this fix:
First, do you mean this for both TestEntity beans? i.e. TestEntity and TestBMPEntity?
Second, is this change (changing test/TestEntity) required for all appearances of ejb-names? For example, in TestEntity is it required to change test/SequenceGenerator to just plain SequenceGenerator ?
Thanks for the help, if I had not seen these posts I would probably _still_ be stuck. -
11. Re: Many errors in template project causing lots of grief!
sysuser1 May 5, 2003 3:56 AM (in response to gschadow)I removed the "test/" from every ejb-name including SequenceGenerator and the session bean.
I only worked with the CMP version of the entity bean. -
12. Didn't help -- Re: Many errors in template project causing l
jjclose May 5, 2003 6:47 PM (in response to gschadow)
When I tried what you describe here, I get an EJB QL syntax error during deployment. Probably everyone on this list knows EJBQL better than I do, so any suggestions are greatly appreciated. The error is below:
2003-05-05 17:39:58,348 WARN [org.jboss.system.ServiceController] Problem starting service jboss.j2ee:jndiName=ejb/test/TestEntity,service=EJB
org.jboss.deployment.DeploymentException: Error compiling EJB-QL statement 'SELECT OBJECT(e) FROM TestEntity e WHERE e.id <> ?1 AND e.lastName = ?2 AND e.firstName = ?3'; - nested throwable: (org.jboss.ejb.plugins.cmp.ejbql.ParseException: Encountered "1" at line 1, column 50.
Was expecting one of:
"ABS" ...
"LENGTH" ...
"LOCATE" ...
"SQRT" ...
"(" ...
"+" ...
"-" ...
<INTEGER_LITERAL> ...
<FLOATING_POINT_LITERAL> ...
<NUMERIC_VALUED_PARAMETER> ...
<NUMERIC_VALUED_PATH> ...
)
at org.jboss.ejb.plugins.cmp.jdbc.JDBCEJBQLQuery.(JDBCEJBQLQuery.java:46)
at org.jboss.ejb.plugins.cmp.jdbc.JDBCCommandFactory.createEJBQLQuery(JDBCCommandFactory.java:53)
at org.jboss.ejb.plugins.cmp.jdbc.JDBCQueryManager.start(JDBCQueryManager.java:218)
at org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.startStoreManager(JDBCStoreManager.java:505)
at org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.start(JDBCStoreManager.java:410)
at org.jboss.ejb.plugins.CMPPersistenceManager.start(CMPPersistenceManager.java:170)
at org.jboss.ejb.EntityContainer.startService(EntityContainer.java:339)
at org.jboss.system.ServiceMBeanSupport.start(ServiceMBeanSupport.java:192)
at java.lang.reflect.Method.invoke(Native Method)
at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:966)
at $Proxy11.start(Unknown Source)
at org.jboss.system.ServiceController.start(ServiceController.java:392)
at java.lang.reflect.Method.invoke(Native Method)
at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:177)
at $Proxy45.start(Unknown Source)
at org.jboss.ejb.EjbModule.startService(EjbModule.java:347)
at org.jboss.system.ServiceMBeanSupport.start(ServiceMBeanSupport.java:192)
at java.lang.reflect.Method.invoke(Native Method)
at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:966)
at $Proxy11.start(Unknown Source)
at org.jboss.system.ServiceController.start(ServiceController.java:392)
at java.lang.reflect.Method.invoke(Native Method)
at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:177)
at $Proxy19.start(Unknown Source)
at org.jboss.ejb.EJBDeployer.start(EJBDeployer.java:541)
at org.jboss.deployment.MainDeployer.start(MainDeployer.java:832)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:640)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:613)
at java.lang.reflect.Method.invoke(Native Method)
at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:177)
at $Proxy7.deploy(Unknown Source)
at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:280)
at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:407)
at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:200)
at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.loop(AbstractDeploymentScanner.java:211)
at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.run(AbstractDeploymentScanner.java:190)
+ nested throwable:
org.jboss.ejb.plugins.cmp.ejbql.ParseException: Encountered "1" at line 1, column 50.
Was expecting one of:
"ABS" ...
"LENGTH" ...
"LOCATE" ...
"SQRT" ...
"(" ...
"+" ...
"-" ...
<INTEGER_LITERAL> ...
<FLOATING_POINT_LITERAL> ...
<NUMERIC_VALUED_PARAMETER> ...
<NUMERIC_VALUED_PATH> ... -
13. Re: Didn't help -- Re: Many errors in template project causi
sysuser1 May 6, 2003 5:25 AM (in response to gschadow)jBoss is complaining about the '1'. So I think maybe you forgot to add the method signature.
In CMP1.1 the xdoclet tags had to look like this:
* @jboss:finder-query name="findByName"
* query="First_Name = {0} AND Last_Name = {1}"
*
* @jboss:finder-query name="findAnotherByName"
* query="Id != {0} AND First_Name = {1} AND Last_Name = {2}"
In CMP2.0 the xdoclet tags had to look like that:
* @ejb:finder signature="test.interfaces.TestEntity findByName( java.lang.String pSurname, java.lang.String pLastName )"
* query="SELECT OBJECT(e) from TestEntitySchema AS e WHERE e.firstName = ?1 AND e.lastName = ?2"
*
* @ejb:finder signature="test.interfaces.TestEntity findAnotherByName( int pId, java.lang.String pSurname, java.lang.String pLastName )"
* query="SELECT OBJECT(e) from TestEntitySchema AS e WHERE e.id <> ?1 AND e.firstName = ?2 AND e.lastName = ?3"
*
and finally you have to add a schema name. In my case TestEntitySchema
* @ejb:bean name="TestEntity"
* display-name="TestEntity working on projects to support clients"
* type="CMP"
* jndi-name="ejb/test/TestEntity"
* schema="TestEntitySchema"
@jjclose:
to your request in the other thread: I did change the template quite a bit. That starts with a completely changed coding style and ended with totally different package, class and method names. So that wouldn't help you.
Hope that helps