我正在使用Hiberbnate 3.1.3.我有一个映射如下,当我尝试将记录插入TEST_TABLE时,我得到一个异常:'线程中的异常"main"org.hibernate.exception.SQLGrammarException:无法获取增量生成器的初始值'
<class name="com.test.app.to.TestTable" table="TEST_TABLE" schema="TEST">
<id name="testId" type="long">
<column name="TEST_ID" precision="12" scale="0" />
<generator class="increment"></generator>
</id>
</class>
Run Code Online (Sandbox Code Playgroud)
我在cfg.xml中设置了如下默认模式,因为我需要在我的应用程序中使用OTHER_SCHEMA中的表.
<property name="hibernate.default_schema">OTHER_SCHEMA</property>
Run Code Online (Sandbox Code Playgroud)
在上面的例子中,它似乎是一个Hibernate Bug,因为使用TestTable对象的读取工作正常并正确使用'TEST'模式,但'<generator class="increment"></generator>'不使用'TEST'模式但使用默认的'OTHER_SCHEMA'来获取最大值ID.为max ID生成的查询读取如下:
Hibernate: select max(TEST_ID) from OTHER_SCHEMA.TEST_TABLE
Run Code Online (Sandbox Code Playgroud)
我无法为生成器指定架构,并且它没有使用我期望它使用的类的schema ="TEST"属性.
如何解决这个问题?
有没有人知道为什么list.append没有调用Python的函数list.push,因为已经有一个list.pop删除并返回最后一个元素(索引为-1)并且list.append语义与该用法一致?
我使用 Jboss IDE 作为 IDE。我创建了一个 Hibernate 项目。部署我的 .har(休眠项目)时出现此错误:
16:16:30,910 ERROR [BasicLazyInitializer] Javassist Enhancement failed: com.afrikbrain.iard.srv.ref.AssGarantieProduit
java.lang.NullPointerException
at org.jboss.mx.loading.RepositoryClassLoader.findClass(RepositoryClassLoader.java:623)
at java.lang.ClassLoader.loadClass(Unknown Source)
at org.jboss.mx.loading.RepositoryClassLoader.loadClassImpl(RepositoryClassLoader.java:467)
at org.jboss.mx.loading.RepositoryClassLoader.loadClass(RepositoryClassLoader.java:408)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Unknown Source)
at java.lang.Class.getDeclaredMethods(Unknown Source)
at javassist.util.proxy.ProxyFactory.getMethods(ProxyFactory.java:743)
at javassist.util.proxy.ProxyFactory.getMethods(ProxyFactory.java:737)
at javassist.util.proxy.ProxyFactory.getMethods(ProxyFactory.java:730)
at javassist.util.proxy.ProxyFactory.make(ProxyFactory.java:547)
at javassist.util.proxy.ProxyFactory.createClass3(ProxyFactory.java:333)
at javassist.util.proxy.ProxyFactory.createClass2(ProxyFactory.java:312)
at javassist.util.proxy.ProxyFactory.createClass(ProxyFactory.java:271)
at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.getProxyFactory(JavassistLazyInitializer.java:138)
at org.hibernate.proxy.pojo.javassist.JavassistProxyFactory.postInstantiate(JavassistProxyFactory.java:42)
at org.hibernate.tuple.entity.PojoEntityTuplizer.buildProxyFactory(PojoEntityTuplizer.java:162)
at org.hibernate.tuple.entity.AbstractEntityTuplizer.<init>(AbstractEntityTuplizer.java:135)
at org.hibernate.tuple.entity.PojoEntityTuplizer.<init>(PojoEntityTuplizer.java:55)
at org.hibernate.tuple.entity.EntityEntityModeToTuplizerMapping.<init>(EntityEntityModeToTuplizerMapping.java:56)
at org.hibernate.tuple.entity.EntityMetamodel.<init>(EntityMetamodel.java:295)
at org.hibernate.persister.entity.AbstractEntityPersister.<init>(AbstractEntityPersister.java:434)
at org.hibernate.persister.entity.SingleTableEntityPersister.<init>(SingleTableEntityPersister.java:109)
at org.hibernate.persister.PersisterFactory.createClassPersister(PersisterFactory.java:55)
at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:226)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1294)
at org.jboss.hibernate.jmx.Hibernate.buildSessionFactory(Hibernate.java:231) …Run Code Online (Sandbox Code Playgroud) 如果您采用以下简单类:
class AltString:
def __init__(self, str = "", size = 0):
self._contents = str
self._size = size
self._list = [str]
def append(self, str):
self._list.append(str)
def output(self):
return "".join(self._list)
Run Code Online (Sandbox Code Playgroud)
我使用以下方法成功调用了类实例:
as = AltString("String1")
as.append("String2")
as.append("String3")
Run Code Online (Sandbox Code Playgroud)
当我然后output使用as.output而不是返回字符串来调用函数时,我得到以下内容:
unbound method AltString.output
Run Code Online (Sandbox Code Playgroud)
如果我使用它as.output()我得到以下错误:
TypeError: unbound method output() must be called with
AltString instance as first argument (got nothing instead)
Run Code Online (Sandbox Code Playgroud)
我做得对不对?
我将这些输入到scala解释器:
val a : Integer = 1;
val b : Integer = a + 1;
Run Code Online (Sandbox Code Playgroud)
我收到的消息是:
<console>:5: error: type mismatch;
found : Int(1)
required: String
val b : Integer = a +1
^
Run Code Online (Sandbox Code Playgroud)
为什么?我怎么解决这个问题?这次我需要整数,因为Java互操作性的原因.
自从新的Xcode 3.2以来,我发现添加Quartz Core Framework非常困难.它不会出现在列表中.以前我只是输入Quartz并弹出一些QuartzCore.framework.Finder非常糟糕,它在Mac上找不到任何*.framework文件,所以现在最大的问题是:它隐藏在哪里?
我有一个clojure项目,使用光滑的2D游戏引擎,我试图作为可执行jar文件运行.我在Netbeans和Eclipse中创建了这个项目,我没有把它们导出成可执行格式的运气.它一直给错误找不到主类,然后给我的主类.我已经尝试编辑清单文件来更改名称,希望它能找到它但到目前为止没有运气.
它确实在开发环境中运行,但不在其外部运行.
如何在不重置登录用户会话的情况下更改Web.config中的<connectionStrings>?
我想继续使用<connectionStrings>而不是创建自定义部分,因为我使用LINQ而且我不想破解我的DBML.
我知道使用放置在单独文件中的自定义部分可以避免会话重置,并且在部分定义中使用restartOnExternalChanges = false.我知道<connectionStrings>可以放在一个单独的文件中,但我不能设置restartOnExternalChanges = false,因为它的部分是在Machine.config中定义的,不能在Web.config中重写(至少,我还没弄清楚如何至).
我在这里看到一个关于承认你写过的最糟糕的代码的问题,我不太确定,因为我不知道为什么这是错误的代码.
public string GetUsername (string userName)
{
User user = DbLookup.GetUser(userName);
return user.Username;
}
Run Code Online (Sandbox Code Playgroud)
是因为它假定username存在并且不检查null?或者还有更多吗?
在本地删除文件后跟svn update会恢复该文件的本地副本.但是,这似乎不适用于文件夹.有没有办法使它适用于文件夹?
编辑:这是控制台输出的样子:
C:\svn\Google Project Hosting\xulwin\xulrunnersamples>rmdir /S /Q treeview
C:\svn\Google Project Hosting\xulwin\xulrunnersamples>svn up
D treeview
Updated to revision 50.
Run Code Online (Sandbox Code Playgroud)
编辑2:我已经使用svn超过两年了,我之前从未遇到过这个错误.但我没有改变任何设置.我唯一能想到的是,我今天在外部硬盘驱动器上创建了一个带有Tortoise SVN的本地存储库来备份一些不相关的旧东西.但这不应该是问题的原因,因为行为发生在本地存储库的本地副本和Google Project Hosting的代码中.
EDIT3:WTF我突然无法重现这个bug.这一切都可以正常运作.但我没有改变任何事情.
EDIT4:在EDIT1中,文件似乎被标记为已删除,但它不是因为svn commit命令没有做任何事情.Tortoise检查修改是否也没有列出任何内容.
注意:当问题仍然存在时,完全递归更新确实还原了该文件夹.
java ×2
python ×2
.net ×1
asp.net ×1
c# ×1
clojure ×1
executable ×1
hibernate ×1
iphone ×1
jakarta-ee ×1
jboss-tools ×1
oracle ×1
reset ×1
scala ×1
session ×1
svn ×1
web-config ×1
xcode ×1