在Jboss下,用JSP页面直接调用实体Bean中的一个创建记录的方法,出如下错误:Entity with primary key 22 already exists

lishl 2003-05-26 09:57:32
第一次运行页面,不出错,但数据也没有进入数据库。
第二次运行页面,出如下错误:org.apache.jasper.JasperException:Entity with primary key 22 already exists
重起机器,数据库里仍没有数据,运行页面仍出现如下错误:org.apache.jasper.JasperException:Entity with primary key 22 already exists
...全文
69 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
gks_cn 2003-05-30
  • 打赏
  • 举报
回复
修改,在ejb部署的时候,可以插入删除数据,但是在oracle数据库中,你有可能不会看到你的数据,是因为你的数据被插入到默认的Hypersonic数据库中了,在C:\jboss-3.0.7_jakarta-tomcat-4.1.24\server\default\db\hypersonic\ default.script中可以看到你插的数据脚本。因此,必须修改那两个文件。
gks_cn 2003-05-30
  • 打赏
  • 举报
回复
3 进入C:\jboss-3.0.7_jakarta-tomcat-4.1.24\server\default\conf目录。编辑standardjbosscmp-jdbc.xml,将<datasource>java:/DefaultDS</datasource>
<datasource-mapping> Hypersonic SQL </datasource-mapping> 改成<datasource>java:/MysqlDS</datasource>
<datasource-mapping>Mysql</datasource-mapping>
编辑standardjaws.xml的方法同上。
gjygjy 2003-05-29
  • 打赏
  • 举报
回复
jboss把纪录加到他默认的数据库里去了。
在你的ejb.jar里的meta-inf下的jbosscmp-jdbc.xml文件中应当包含如下信息:

<defaults>
<datasource>java:/MyDataSource</datasource><!--你的数据源名字-->
<datasource-mapping>MS SQLSERVER2000</datasource-mapping><!--你的数据库类型-->
</defaults>

如果用jbuilder8开发的话,这些属性可设置。
lishl 2003-05-26
  • 打赏
  • 举报
回复
数据库里确实没有数据,我的其他同事也有这个问题!
大家遇到过这种问题吗?
ChDw 2003-05-26
  • 打赏
  • 举报
回复
其实应该是已经创建记录的了,所以才有第二此的重复主键问题

我怀疑是你操作的表不正确,你试试改成findByPrimaryKey读取出来看看

67,538

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧