12 Ekim 2022 Çarşamba

src/main/resources/META-INF/spring.schemas ve spring.handlers Dosyaları

Giriş
Bu iki dosya da Spring konfigürasyonun XML ile yapıldığı zamanlardan kalma. Yani kendi XML yapımız var ve onu bileşenlerine ayırarak (parse etmek) bir bean oluşturmak istiyoruz


spring.schemas Dosyası
Eğer kendi namespace'imiz varsa bunu Spring ile kullanabilmek için yaparız

Örnek
spring.schemas şöyledir. Böylece belirtilen isime denk gelen xsd dosyası belirtilir
https\://www.hazelcast.com/schema/spring/hazelcast-spring-5.3.xsd=hazelcast-spring-5.3.xsd
http\://www.hazelcast.com/schema/spring/hazelcast-spring.xsd=hazelcast-spring-5.3.xsd
https\://www.hazelcast.com/schema/spring/hazelcast-spring.xsd=hazelcast-spring-5.3.xsd
spring.handlers ise şöyledir.
http\://www.hazelcast.com/schema/spring=com.hazelcast.spring.HazelcastNamespaceHandler
https\://www.hazelcast.com/schema/spring=com.hazelcast.spring.HazelcastNamespaceHandler
Böylece artık şöyle yapabiliriz. Kırmızı renkler ile spring.schemas dosyasında belirtilen isim kullanılıyor.
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:hz="http://www.hazelcast.com/schema/spring"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
                http://www.springframework.org/schema/beans/spring-beans-4.3.xsd
                http://www.hazelcast.com/schema/spring
                http://www.hazelcast.com/schema/spring/hazelcast-spring.xsd">
...
  <hz:hazelcast id="instance">
    <hz:config>
        <hz:cluster-name name="dev"/>
        <hz:network port="5701" port-auto-increment="false">
            <hz:join>
                <hz:multicast enabled="false"
                    multicast-group="224.2.2.3"
                    multicast-port="54327"/>
                <hz:tcp-ip enabled="true">
                    <hz:members>10.10.1.2, 10.10.1.3</hz:members>
                </hz:tcp-ip>
            </hz:join>
        </hz:network>
        <hz:map name="map"
            backup-count="2"
            read-backup-data="true"
            merge-policy="com.hazelcast.spi.merge.PassThroughMergePolicy">
            <hz:eviction eviction-policy="NONE" size="0"/>
        </hz:map>
    </hz:config>
  </hz:hazelcast>
... 
</beans>



Hiç yorum yok:

Yorum Gönder