Hello everyone, I have done a project which comprises of CMP Entity bean, stateless Session Bean. I have tested the project on inprise App server, it works fine. I use DB2 database. I have successfully installed the project on WAS4.0 Advanced edition. But my problem is that when I try to run the client program I get the Non-application exception ------- CNTR0019E: Non-application exception occurred while processing method create: com.ibm.websphere.cpi.CPIException: COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver][DB2/NT] SQL0204N "BAIJU.CHILDREF" is an undefined name. SQLSTATE=42704; nested exception is: COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver][DB2/NT] SQL0204N "BAIJU.CHILDREF" is an undefined name. SQLSTATE=42704COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver][DB2/NT] SQL0204N "BAIJU.CHILDREF" is an undefined name. SQLSTATE=42704 ----- Begin backtrace for detailCOM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver][DB2/NT] SQL0204N "BAIJU.CHILDREF" is an undefined name. SQLSTATE=42704 ----------------------------------------- In the above error message "BAIJU.CHILDREF" is not actual table name (actual table name on which i have created the entity bean is "BAIJU.CHILD_REF").I have noticed that Websphere by default removes any underscore ("_") from the table name or the Column name of the table (I have checked this in Schema.dbxmi & Map.mapxmi files). I have many tables names & column names which has underscore character in it. Every tables which has underscores ("_") gives almost similar error. The tables which doesn't have underscore ("_") in there name & which contains the column names without underscore ("_") works fine. Does this means that Application deployed on WAs 4.0 should not have underscores ("_") as the table & column name ??? please help me urgently...... regards.. Apurva.
Did you export your code to the actual file directory system. I don't mean the deployed jar file- but rather the actual java class files? I've seen this happen when I don't export my code out to the the file system- to the actual directories where they go- in my case I export it all out to the lib directory- but its whereaver your classpath is pointed at.
From VAJ- you can export all of your code from the EJB workbench by highlighting the deployed code and the EJB(home,remote,helpers,and bean) and export it to the actual directory by right clicking on it and specifying an export method of "directory". However, after I read your message again, it occurred to me that you are getting a different error than me. Could you go into the deployed code autogenerated by VAJ and look at how the tables are named there. You can change the deployed code generated by VAJ to include the underscore. The deployed code should start with EJSJDBCPersister- there is a field name for "tables" that you can change to include the underscore. Redeploy and see what happens.
hi matthew, Sorry that I forgot to tell you in my first mail that I dont use VAJ !!! instead I use JBuilder4. So Any other tips from your side.... By the way can we manually change the map.mapxmi & Schema.dbxmi files ??? to my original table name ??? please help..... regards, Apurva
Well- you don't have many options I guess- I'd backup the original schema and map files, do a database backup, and try it. You can always roll back to your backups. I don't really know what affect it will have, as I've never done it myself.
The only cure for that is hours of television radiation. And this tiny ad: