答案 0 :(得分:5)
我遇到了相同的情况,上面提到了相同的错误消息(Error Code: 20000 Call: INSERT INTO EJB__TIMER__TBL ...
)(我无法使用EJB计时器部署ear包)所以我检查了我的运行
glassfish_directory_domains/my_domain/lib/databases/ejbtimer
目录。
在列出它的内容后,我在这个目录中看到了一个重要的事情:不知怎的,db.lck
文件是在root下创建的(也许是我最后一次使用sudo意外启动了域名)所以我为所有人做了chown和chgrp此目录中的文件及其子目录(当然,glassfish域在此工作期间已停止)。
之后,一切都再次完美。我的ear package
已成功部署。
感谢合作思维: - )
答案 1 :(得分:1)
Derby数据库可以是只读的,因为它们已安装在只读介质(如CD-ROM)上。它们也可以是只读的,因为它们存储在jar或zip文件中,并直接从该jar / zip访问。以下是一些更多信息:http://db.apache.org/derby/docs/10.8/devguide/cdevdeploy15325.html
答案 2 :(得分:0)
我在同一堆栈跟踪中遇到了同样的问题。问题是由glassfish管理员密码引起的。我不得不改变它以应用ssl证书。更改密码后,出现错误消息。
我通过重置glassfish密码解决了这个问题。