2011-01-12 71 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」對集合關聯有效。