deployment error on Sun JES when I map an entity bean to a view
Hi,
I got a deployment error when I try to map a CMP entity bean to a database view rather than a table. The system compain that the table is not found. I have set the property of the CMP bean as read-only in the descriptor.
My Working environment is:
Windows XP SP2
Oracle 8i,
Sun Java Enterprise System 8.1
in sun-ejb-jar.xml
<sun-ejb-jar>
<enterprise-beans>
<unique-id>0</unique-id>
<ejb>
<ejb-name>User</ejb-name>
<jndi-name>User</jndi-name>
<is-read-only-bean>true</is-read-only-bean>
</ejb>
<cmp-resource>
<jndi-name>jdbc/STARS_ORACLE</jndi-name>
<create-tables-at-deploy>true</create-tables-at-deploy>
</cmp-resource>
</enterprise-beans>
</sun-ejb-jar>
in sun-cmp-mappings.xml:
<entity-mapping>
<ejb-name>User</ejb-name>
<table-name>VW_EMP_RBS</table-name>
<cmp-field-mapping>
<field-name>staffNo</field-name>
<column-name>VW_EMP_RBS.STAFF_NO</column-name>
<fetched-with>
<default/>
</fetched-with>
</cmp-field-mapping>
............
</entity-mapping>
--
Error message:
[#|2006-08-02T09:45:55.919+0800|SEVERE|sun-appserver-ee8.1|javax.enterprise.sys tem.tools.deployment|_ThreadID=113;|Exception occured in J2EEC Phase
com.sun.enterprise.deployment.backend.IASDeploymentException: Error while running ejbc -- Fatal Error from EJB Compiler -- JDO74046: JDOCodeGenerator: Caught a MappingConversionException loading or creating mapping model for application 'app-ejb' module 'app-ejb': JDO71002: The schema file app-ejb does not contain a table named VW_EMP_RBS
at com.sun.ejb.codegen.CmpCompiler.compile(CmpCompiler.java:274)
at com.sun.ejb.codegen.IASEJBC.doCompile(IASEJBC.java:615)
at com.sun.ejb.codegen.IASEJBC.ejbc(IASEJBC.java:563)
at com.sun.enterprise.deployment.backend.EJBCompiler.preDeployModule(EJBCompiler.j ava:427)
at com.sun.enterprise.deployment.backend.EJBCompiler.compile(EJBCompiler.java:213)
at com.sun.enterprise.deployment.backend.ModuleDeployer.runEJBC(ModuleDeployer.jav a:967)
at com.sun.enterprise.deployment.backend.EjbModuleDeployer.deploy(EjbModuleDeploye r.java:176)
at com.sun.enterprise.deployment.backend.ModuleDeployer.doRequestFinish(ModuleDepl oyer.java:140)
at com.sun.enterprise.deployment.phasing.J2EECPhase.runPhase(J2EECPhase.java:146)
at com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPh ase.java:71)
at com.sun.enterprise.deployment.phasing.PEDeploymentService.executePhases(PEDeplo ymentService.java:633)
at com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentSe rvice.java:188)
at com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentSe rvice.java:520)
at com.sun.enterprise.management.deploy.DeployThread.deploy(DeployThread.java:143)
at com.sun.enterprise.management.deploy.DeployThread.run(DeployThread.java:171)
|#]

