Hi, I am trying to deploy and existing web application from Weblogic to JBoss. I am now able to successfully deploy and run the main application, however when I try to do a save function, I get errors like this:
15:24:33,806 ERROR [AuftragDO] Could not create entity | java.sql.SQLException: ORA-01400: cannot insert NULL into ("KSO_ANTGODE"."T_EC_AUFTRAG"."EKU_ID") | ORA-06512: at line 1 | | at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) | at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) | at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288) | at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743) | at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:215) | at oracle.jdbc.driver.T4CCallableStatement.executeForRows(T4CCallableStatement.java:954) | at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1168) | at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3285) | at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3390) | at oracle.jdbc.driver.OracleCallableStatement.execute(OracleCallableStatement.java:4223) | at org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.execute(WrappedPreparedStatement.java:183) | at org.jboss.ejb.plugins.cmp.jdbc.keygen.JDBCOracleCreateCommand.executeInsert(JDBCOracleCreateCommand.java:83) | at org.jboss.ejb.plugins.cmp.jdbc.JDBCAbstractCreateCommand.performInsert(JDBCAbstractCreateCommand.java:308) | at org.jboss.ejb.plugins.cmp.jdbc.JDBCAbstractCreateCommand.execute(JDBCAbstractCreateCommand.java:138) | at org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.createEntity(JDBCStoreManager.java:572) | at org.jboss.ejb.plugins.CMPPersistenceManager.createEntity(CMPPersistenceManager.java:222) | at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.createEntity(CachedConnectionInterceptor.java:219) | at org.jboss.ejb.EntityContainer.createLocalHome(EntityContainer.java:612) | 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) I have searched and tried possible solutions, either in the deployment descriptor or in the code, but of no luck. I am wondering if this has to do with the CMP/CMR fields I am using, in the above error, I always get a null for the foreign key - EKU_ID and it states that I cannot insert NULL. Any idea how can I solve this? Attached also is my ejb-jar.xml and jbosscmp-jdbc.xml.. ejb-jar.xml <?xml version="1.0"?> | <!DOCTYPE ejb-jar PUBLIC '-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN' 'http://java.sun.com/j2ee/dtds/ejb-jar_2_0.dtd'> | <ejb-jar> | <entity> | <ejb-name>KundeDo</ejb-name> | <local-home>de.dbsystems.spi.kso.dbo.kunde.KundeDoLocalHome</local-home> | <local>de.dbsystems.spi.kso.dbo.kunde.KundeDoLocal</local> | <ejb-class>de.dbsystems.spi.kso.dbo.kunde.KundeDoEB</ejb-class> | <persistence-type>Container</persistence-type> | <prim-key-class>java.lang.Long</prim-key-class> | <reentrant>False</reentrant> | <cmp-version>2.x</cmp-version> | <abstract-schema-name>KundeDo</abstract-schema-name> | <cmp-field> | <field-name>id</field-name> | </cmp-field> | <cmp-field> | <field-name>eDIPasswort</field-name> | </cmp-field> | <cmp-field> | <field-name>eDIProvider</field-name> | </cmp-field> | <cmp-field> | <field-name>eingangsbestaetigung</field-name> | </cmp-field> | <cmp-field> | <field-name>partnerBvwNr</field-name> | </cmp-field> | <cmp-field> | <field-name>partnerId</field-name> | </cmp-field> | <cmp-field> | <field-name>partnerStandort</field-name> | </cmp-field> | <cmp-field> | <field-name>user</field-name> | </cmp-field> | <cmp-field> | <field-name>timestamp</field-name> | </cmp-field> | <primkey-field>id</primkey-field> | <query> | <query-method> | <method-name>findAllKunden</method-name> | <method-params></method-params> | </query-method> | <ejb-ql> | <![CDATA[SELECT OBJECT(obj) FROM KundeDo AS obj]]> | </ejb-ql> | </query> | <query> | <query-method> | <method-name>findByStandortname</method-name> | <method-params> | <method-param>java.lang.String</method-param> | </method-params> | </query-method> | <ejb-ql> | <![CDATA[SELECT OBJECT(obj) FROM KundeDo AS obj WHERE obj.partnerStandort LIKE ?1]]> | </ejb-ql> | </query> | <query> | <query-method> | <method-name>findByStandortnummer</method-name> | <method-params> | <method-param>java.lang.String</method-param> | </method-params> | </query-method> | <ejb-ql> | <![CDATA[SELECT OBJECT(obj) FROM KundeDo AS obj WHERE obj.partnerId LIKE ?1]]> | </ejb-ql> | </query> | <query> | <query-method> | <method-name>findByEdiProvider</method-name> | <method-params> | <method-param>java.lang.String</method-param> | </method-params> | </query-method> | <ejb-ql> | <![CDATA[SELECT OBJECT(obj) FROM KundeDo AS obj WHERE obj.eDIProvider LIKE ?1]]> | </ejb-ql> | </query> | </entity> | <entity> | <ejb-name>AuftragDO</ejb-name> | <local-home>de.dbsystems.spi.kso.dbo.auftrag.AuftragDOLocalHome</local-home> | <local>de.dbsystems.spi.kso.dbo.auftrag.AuftragDOLocal</local> | <ejb-class>de.dbsystems.spi.kso.dbo.auftrag.AuftragDOEB</ejb-class> | <persistence-type>Container</persistence-type> | <prim-key-class>java.lang.Long</prim-key-class> | <reentrant>False</reentrant> | <cmp-version>2.x</cmp-version> | <abstract-schema-name>AuftragDO</abstract-schema-name> | <cmp-field> | <field-name>id</field-name> | </cmp-field> | . . . . . . | . . . . . . | <cmp-field> | <field-name>user</field-name> | </cmp-field> | <cmp-field> | <field-name>timestamp</field-name> | </cmp-field> | <primkey-field>id</primkey-field> | </entity> | <relationships> | <assembly-descriptor> | <ejb-relation> | <ejb-relation-name>kunde-user</ejb-relation-name> | <ejb-relationship-role> | <ejb-relationship-role-name>UserDo.kunde</ejb-relationship-role-name> | <multiplicity>Many</multiplicity> | <relationship-role-source> | <ejb-name>UserDo</ejb-name> | </relationship-role-source> | <cmr-field> | <cmr-field-name>kunde</cmr-field-name> | </cmr-field> | </ejb-relationship-role> | <ejb-relationship-role> | <ejb-relationship-role-name>KundeDo.users</ejb-relationship-role-name> | <multiplicity>One</multiplicity> | <relationship-role-source> | <ejb-name>KundeDo</ejb-name> | </relationship-role-source> | <cmr-field> | <cmr-field-name>users</cmr-field-name> | <cmr-field-type>java.util.Collection</cmr-field-type> | </cmr-field> | </ejb-relationship-role> | </ejb-relation> | <ejb-relation> | <ejb-relation-name>kunde-auftraege</ejb-relation-name> | <ejb-relationship-role> | <ejb-relationship-role-name>AuftragDO.kunde</ejb-relationship-role-name> | <multiplicity>Many</multiplicity> | <relationship-role-source> | <ejb-name>AuftragDO</ejb-name> | </relationship-role-source> | <cmr-field> | <cmr-field-name>kunde</cmr-field-name> | </cmr-field> | </ejb-relationship-role> | <ejb-relationship-role> | <ejb-relationship-role-name>KundeDo.auftraege</ejb-relationship-role-name> | <multiplicity>One</multiplicity> | <relationship-role-source> | <ejb-name>KundeDo</ejb-name> | </relationship-role-source> | <cmr-field> | <cmr-field-name>auftraege</cmr-field-name> | <cmr-field-type>java.util.Collection</cmr-field-type> | </cmr-field> | </ejb-relationship-role> | </ejb-relation> | <container-transaction> | <method> | <ejb-name>KundeDo</ejb-name> | <method-name>*</method-name> | </method> | <method> | <ejb-name>AuftragsvorlageDO</ejb-name> | <method-name>*</method-name> | </method> | <method> | <ejb-name>AuftragDO</ejb-name> | <method-name>*</method-name> | </method> | </container-transaction> | </assembly-descriptor> | </ejb-jar> this is my jbosscmp-jdbc.xml <?xml version="1.0"?> | <!DOCTYPE jbosscmp-jdbc PUBLIC "-//JBoss//DTD JBOSSCMP-JDBC 4.0//EN" | "http://www.jboss.org/j2ee/dtd/jbosscmp-jdbc_4_0.dtd"> | <jbosscmp-jdbc> | <defaults> | <!-- <datasource>jdbc.kso.MainTxDatasource</datasource> --> | <datasource>java:/XAOracleDS</datasource> | <datasource-mapping>Oracle9i</datasource-mapping> | <create-table>false</create-table> | <alter-table>false</alter-table> | <remove-table>false</remove-table> | <read-only>false</read-only> | </defaults> | <enterprise-beans> | <entity> | <ejb-name>KundeDo</ejb-name> | <table-name>T_EC_KUNDE</table-name> | <cmp-field> | <field-name>id</field-name> | <column-name>EKU_ID</column-name> | </cmp-field> | <cmp-field> | <field-name>eDIPasswort</field-name> | <column-name>EKU_EDI_PASSWORT</column-name> | </cmp-field> | <cmp-field> | <field-name>eDIProvider</field-name> | <column-name>EKU_EDI_PROVIDER</column-name> | </cmp-field> | <cmp-field> | <field-name>eingangsbestaetigung</field-name> | <column-name>EKU_ECBEST_CD</column-name> | </cmp-field> | <cmp-field> | <field-name>partnerBvwNr</field-name> | <column-name>EKU_PTN_BVW_NR</column-name> | </cmp-field> | <cmp-field> | <field-name>partnerId</field-name> | <column-name>EKU_PTN_ID</column-name> | </cmp-field> | <cmp-field> | <field-name>partnerStandort</field-name> | <column-name>EKU_PTN_BEZEICHNUNG</column-name> | </cmp-field> | <cmp-field> | <field-name>user</field-name> | <column-name>EKU_USER_ID</column-name> | </cmp-field> | <cmp-field> | <field-name>timestamp</field-name> | <column-name>EKU_TIMESTAMP</column-name> | </cmp-field> | <unknown-pk> | <unknown-pk-class>java.lang.Long</unknown-pk-class> | <field-name>id</field-name> | <column-name>EKU_ID</column-name> | <jdbc-type>BIGINT</jdbc-type> | <sql-type>NUMBER(19)</sql-type> | <auto-increment/> | </unknown-pk> | <entity-command name="oracle-sequence" class="org.jboss.ejb.plugins.cmp.jdbc.keygen.JDBCOracleCreateCommand"> | <attribute name="sequence">S_EC_KUNDE</attribute> | </entity-command> | <optimistic-locking> | <modified-strategy/> | </optimistic-locking> | </entity> | <entity> | <ejb-name>AuftragDO</ejb-name> | <table-name>T_EC_AUFTRAG</table-name> | <cmp-field> | <field-name>id</field-name> | <column-name>AFT_ID</column-name> | </cmp-field> | . . . . . . | . . . . . . | <cmp-field> | <field-name>user</field-name> | <column-name>AFT_USER_ID</column-name> | </cmp-field> | <cmp-field> | <field-name>timestamp</field-name> | <column-name>AFT_TIMESTAMP</column-name> | </cmp-field> | <unknown-pk> | <unknown-pk-class>java.lang.Long</unknown-pk-class> | <field-name>id</field-name> | <column-name>AFT_ID</column-name> | <jdbc-type>BIGINT</jdbc-type> | <sql-type>NUMBER(19)</sql-type> | <auto-increment/> | </unknown-pk> | <entity-command name="oracle-sequence" class="org.jboss.ejb.plugins.cmp.jdbc.keygen.JDBCOracleCreateCommand"> | <attribute name="sequence">S_EC_AUFTRAG</attribute> | </entity-command> | <optimistic-locking> | <modified-strategy/> | </optimistic-locking> | </entity> | </enterprise-beans> | <relationships> | <ejb-relation> | <ejb-relation-name>kunde-auftraege</ejb-relation-name> | <foreign-key-mapping/> | <ejb-relationship-role> | <ejb-relationship-role-name>AuftragDO.kunde</ejb-relationship-role-name> | </ejb-relationship-role> | <ejb-relationship-role> | <ejb-relationship-role-name>KundeDo.auftraege</ejb-relationship-role-name> | <key-fields> | <key-field> | <field-name>id</field-name> | <column-name>EKU_ID</column-name> | </key-field> | </key-fields> | </ejb-relationship-role> | </ejb-relation> | </relationships> | </jbosscmp-jdbc> I am wondering if I missed out on anything during the migration or I did something incorrect. Any help will be highly appreciated! AntGod View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3929587#3929587 Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3929587 ------------------------------------------------------- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642 _______________________________________________ JBoss-user mailing list JBoss-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jboss-user