2011-01-12 43 views
0

试图把懒真以下欢迎使用属性,当我得到一个错误:冬眠懒真实错误

<many-to-one name="ProductCategory" class="com.BiddingSystem.Models.Category" fetch="join" lazy="true"> 
      <column name="PRODUCTCATEGORY" /> 
     </many-to-one> 

堆栈跟踪:

Caused by: org.xml.sax.SAXParseException: Attribute "lazy" with value "true" must have a value from the list "false proxy no-proxy ". 
     at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195) 
     at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:131) 
     at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:384) 
     at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:318) 
     at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.validateDTDattribute(XMLDTDValidator.java:1414) 
     at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.addDTDDefaultAttrsAndValidate(XMLDTDValidator.java:1333) 
     at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.handleStartElement(XMLDTDValidator.java:1940) 
     at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.startElement(XMLDTDValidator.java:764) 
     at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400) 
     at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2755) 
     at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648) 
     at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) 
     at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:511) 
     at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:808) 
     at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) 
     at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:119) 
     at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) 
     at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) 
     at org.dom4j.io.SAXReader.read(SAXReader.java:465) 
     at org.hibernate.util.xml.MappingReader.readMappingDocument(MappingReader.java:75) 

回答

5


为lazy = “true” 是不允许的在多对一的映射中。您应该使用false/proxy/no-proxy。
谢谢。

+0

但在三个假/代理/无代理哪一个我应该使用,如果我不想要类别对象加载 – Noor 2011-01-12 13:12:32

4

从休眠3.1+ lazy =“true”被从DTD中删除(这是什么导致你的错误)。 您应该使用lazy =“no-proxy”。

1
Attribute "lazy" with value "true" must have a value from the list "false proxy no-proxy ". 
列表内的值的

它应该有一个:

false, proxy, no-proxy 

你的答案已经在你的堆栈跟踪。

0

其实如果你使用lazy =“no-proxy”,你需要测试你的代码。对于默认的延迟加载,您应该使用“代理”。

另请注意,lazy =“true/false/extra”对集合关联有效。