Mantis - Resin
Viewing Issue Advanced Details
15 minor always 03-02-05 00:00 11-30-05 14:45
user20  
 
high  
closed  
fixed  
none    
none 3.0.14  
0000015: com.caucho.amber.AmberRuntimeException: 'example.model.MyDataPO' is an illegal instance class ?
RSN-5
I get the following error trying to start my server (using a resing project with resin eclipse configured). But my entity bean example.model.MyDataPO seems to be correct looking like what you specify in the resin doc for EJB3.
I give you in attachement all my project. If this exception is normal then it should be better documented. Could you please help me to solve this dilemn ?

com.caucho.amber.AmberRuntimeException: 'example.model.MyDataPO' is an illegal instance class
at com.caucho.amber.type.EntityType.getInstanceClass(EntityType.java)
at com.caucho.amber.entity.AmberEntityHome.init(AmberEntityHome.java:176)
at com.caucho.amber.AmberManager.initEntityHomes(AmberManager.java:715)
at com.caucho.ejb.cfg.EjbConfig.deployBeans(EjbConfig.java:475)
at com.caucho.ejb.cfg.EjbConfig.deploy(EjbConfig.java:452)
at com.caucho.ejb.EjbServerManager.start(EjbServerManager.java:598)
at com.caucho.ejb.EjbServerManager.init(EjbServerManager.java:568)
at com.caucho.ejb.EJBServer.manualInit(EJBServer.java:588)
at com.caucho.ejb.EJBServer.init(EJBServer.java:520)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.caucho.config.BeanBuilder.init(BeanBuilder.java:310)
at com.caucho.config.NodeBuilder.configure(NodeBuilder.java:450)
at com.caucho.config.NodeBuilder.configure(NodeBuilder.java:349)
at com.caucho.config.NodeBuilder.configure(NodeBuilder.java:308)
at com.caucho.config.NodeBuilder.configureChildProperty(NodeBuilder.java:570)
at com.caucho.config.NodeBuilder.configureChild(NodeBuilder.java:516)
at com.caucho.config.NodeBuilder.configure(NodeBuilder.java:446)
at com.caucho.config.NodeBuilder.configure(NodeBuilder.java:349)
at com.caucho.config.NodeBuilder.configure(NodeBuilder.java:201)
at com.caucho.config.core.ResinImport.init(ResinImport.java:134)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.caucho.config.BeanBuilder.init(BeanBuilder.java:310)
at com.caucho.config.NodeBuilder.configure(NodeBuilder.java:450)
at com.caucho.config.NodeBuilder.configure(NodeBuilder.java:349)
at com.caucho.config.NodeBuilder.configure(NodeBuilder.java:308)
at com.caucho.config.NodeBuilder.configureChildProperty(NodeBuilder.java:570)
at com.caucho.config.NodeBuilder.configureChild(NodeBuilder.java:516)
at com.caucho.config.NodeBuilderChildProgram.configureImpl(NodeBuilderChildProgram.java:51)
at com.caucho.config.BuilderProgram.configure(BuilderProgram.java:59)
at com.caucho.config.BuilderProgramContainer.configureImpl(BuilderProgramContainer.java:52)
at com.caucho.config.BuilderProgram.configure(BuilderProgram.java:59)
at com.caucho.server.webapp.WebAppEntry.configureInstance(WebAppEntry.java:725)
at com.caucho.server.webapp.WebAppEntry.configureInstance(WebAppEntry.java:86)
at com.caucho.server.deploy.Entry.startImpl(Entry.java:496)
at com.caucho.server.deploy.Entry.redeployIfModifiedImpl(Entry.java:452)
at com.caucho.server.deploy.Entry.startAutomatic(Entry.java:385)
at com.caucho.server.deploy.DeployContainer.start(DeployContainer.java:154)
at com.caucho.server.webapp.ApplicationContainer.start(ApplicationContainer.java:623)
at com.caucho.server.host.Host.start(Host.java:492)
at com.caucho.server.deploy.Entry.startImpl(Entry.java:498)
at com.caucho.server.deploy.Entry.redeployIfModifiedImpl(Entry.java:452)
at com.caucho.server.deploy.Entry.startAutomatic(Entry.java:385)
at com.caucho.server.deploy.DeployContainer.start(DeployContainer.java:154)
at com.caucho.server.host.HostContainer.start(HostContainer.java:507)
at com.caucho.server.resin.ServletServer.start(ServletServer.java:894)
at com.caucho.server.resin.ResinServer.start(ResinServer.java:466)
at com.caucho.server.resin.Resin.init(Resin.java:297)
at com.caucho.server.resin.Resin.main(Resin.java:553)
at com.caucho.server.http.ResinServer.main(ResinServer.java:61)
com.caucho.config.LineConfigException: WEB-INF/web.xml:24: com.caucho.amber.AmberRuntimeException: 'example.model.MyDataPO' is an illegal instance class
resin-3.0.12 / Windows XP / Eclipse 3.0 / Postgresql 8.0

Notes
(0000007)
user20   
03-02-05 00:00   
It seems that it is because the entity bean has not been enhanced, but I don't known how to force enhance entities. Does I need a specific class loader or does I need a specific resin.conf configuration file ? In this case could you add the resin.conf file in your online tutorial examples to enable user to try your examples ?
(0000008)
user20   
03-02-05 00:00   
Sorry this is not a bug from resin : I try may application directly using the resin server (not with the resin eclpise plugin) and ejb3 tutorials work good and my example is on the way to work.
This is more a configuration problem with the resin eclipse plugin that provide a different resin.conf file.
All the way you can close this issue.
(0000009)
francoisb   
03-02-05 00:00   
Please don't close this bug, because it does happen outside the Eclipse plugin.

My environment is Resin-3.0.12/Sun JDK 1.5.0 or Sun JDK 1.5.0_02/Linux/postgresql 7.1


(0000010)
francoisb   
03-02-05 00:00   
The following case generates this bug:

A web-app with two ejb-server, a session bean A in the first ejb-server references a entity bean X of the second ejb-server. The entity bean X is loaded by the first ejb-server and isn't enhanced.
(0000011)
ferg   
03-02-05 00:00   
The error message has been fixed. The underlying problem is some issue compiling the generated files, but that compilation error was not being propagated to the calling context.

With that error message fix, you'll still get an error, but it will be a bit more informative. (In other words, the underlying bug still exists, but it may be easier to track it down.)
(0000012)
ferg   
03-02-05 00:00   
ejb/0s00