हाय मैंने हाइबरनेट द्वितीय स्तर के कैश के साथ कुछ समस्याओं में भाग लिया है। कैश प्रदाता के रूप में मैं ehcache का उपयोग करता हूं।हाइबरनेट द्वितीय स्तर कैश
से
<property name="hibernate.cache.use_second_level_cache" value="true"/>
<property name="hibernate.cache.provider_class" value="net.sf.ehcache.hibernate.EhCacheProvider" />
<property name="hibernate.cache.provider_configuration_file_resource_path" value="/ehcache.xml" />
persistence.xml मैं एनोटेशन तो उपयोग करते हुए मेरे संस्थाओं कॉन्फ़िगर config का हिस्सा: उन एनोटेशन के लिए
@Cache(region = "Kierunek", usage = CacheConcurrencyStrategy.READ_WRITE) public class Kierunek implements Serializable {
आयात कर रहे हैं: import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy;
मेरी ehcache.xml
<diskStore path="java.io.tmpdir" />
<defaultCache maxElementsInMemory="10000" eternal="false"
timeToIdleSeconds="120" timeToLiveSeconds="120" overflowToDisk="true"
diskSpoolBufferSizeMB="30" maxElementsOnDisk="10000000"
diskPersistent="false" diskExpiryThreadIntervalSeconds="120"
memoryStoreEvictionPolicy="LRU" />
<cache name="Kierunek" maxElementsInMemory="1000"
eternal="true" overflowToDisk="false" memoryStoreEvictionPolicy="LRU" />
और किसी को भी विचार क्यों मैं त्रुटि निम्न हो सकते हैं?
WARNING: Could not find a specific ehcache configuration for cache named [persistence.unit:unitName=pz2EAR.ear/pz2EJB.jar#pz2EJB.Kierunek]; using defaults.
19:52:57,313 ERROR [AbstractKernelController] Error installing to Start: name=persistence.unit:unitName=pz2EAR.ear/pz2EJB.jar#pz2EJB state=Create
java.lang.IllegalArgumentException: Cache name cannot contain '/' characters.
समाधान
<property name="hibernate.cache.region_prefix" value=""/>
persistence.xml के लिए एक और संपत्ति को जोड़ने के लिए है और वह है कि दोषपूर्ण उपसर्ग बड़ा THX रुस्लान को हटा!
आपको "lvl" के बजाय शब्द "स्तर" को पूरी तरह से स्पेल करना चाहिए। यह अधिक पठनीय और सीचनीय है। –
आप सही हैं। मैं इसे इसलिए निराश कर रहा था इसलिए मैंने इसके बारे में सोचा नहीं था ^^ धन्यवाद – Dogrizz