<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>https://kamranzafar.org/blog/</loc><lastmod>2026-09-13T20:00:46+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/</loc><lastmod>2026-09-13T20:00:46+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2026/09/13/the-ai-that-isnt-allowed-to-remember/</loc><lastmod>2026-09-13T20:00:46+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2026/04/15/building-an-intelligent-document-indexing-search-system-with-opensearch-vector-db-and-ollama-ai/</loc><lastmod>2026-04-15T21:54:31+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/categories/</loc><lastmod>2025-07-07T20:08:45+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/category/docker/</loc><lastmod>2025-07-07T20:08:45+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/category/integration/</loc><lastmod>2025-07-07T20:08:45+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2025/07/03/real-time-data-replication-using-change-data-capture-cdc-with-debezium-and-kafka/</loc><lastmod>2025-07-07T20:08:45+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/ive-always-loved-you/</loc><lastmod>2022-09-21T14:06:11+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/songs/</loc><lastmod>2022-09-21T14:06:11+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/teray-bina/</loc><lastmod>2022-08-15T15:07:00+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/sehra-kinaray/</loc><lastmod>2022-08-11T13:26:20+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/us-pal/</loc><lastmod>2022-01-17T00:12:20+11:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/song-1/</loc><lastmod>2021-08-13T15:34:36+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/hazelcast/</loc><lastmod>2025-07-03T14:26:52+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/massl/</loc><lastmod>2025-07-03T14:26:52+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/mtls/</loc><lastmod>2025-07-03T14:26:52+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/mutual-authentication/</loc><lastmod>2025-07-03T14:26:52+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2019/06/11/securing-hazelcast-tcp-traffic-with-stunnel/</loc><lastmod>2025-07-03T14:26:52+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/security/</loc><lastmod>2025-07-03T14:26:52+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/category/security/</loc><lastmod>2025-07-03T14:26:52+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/ssl/</loc><lastmod>2025-07-03T14:26:52+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/stunnel/</loc><lastmod>2025-07-03T14:26:52+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tags/</loc><lastmod>2025-07-03T14:26:52+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/tls/</loc><lastmod>2025-07-03T14:26:52+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/vampire/</loc><lastmod>2017-09-13T01:04:18+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/csf/</loc><lastmod>2020-07-04T12:51:45+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2017/04/05/docker-and-iptables-firewall/</loc><lastmod>2020-07-04T12:51:45+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/iptables/</loc><lastmod>2020-07-04T12:51:45+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/category/linux/</loc><lastmod>2021-08-13T15:03:36+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2016/10/25/atomic-updates-on-mongodb-with-spring-data/</loc><lastmod>2020-07-04T12:52:23+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/concurrency/</loc><lastmod>2020-07-04T12:52:23+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/category/mongodb/</loc><lastmod>2020-07-04T12:52:23+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/category/spring/</loc><lastmod>2020-07-04T13:07:59+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/category/cas/</loc><lastmod>2020-07-04T12:55:38+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2016/10/18/cas-and-distributed-infinispan-integration/</loc><lastmod>2020-07-04T12:55:38+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/infinispan/</loc><lastmod>2020-07-04T12:55:38+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/wildfly/</loc><lastmod>2020-07-04T12:55:47+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/cache/</loc><lastmod>2020-07-04T12:44:07+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/clustering/</loc><lastmod>2020-07-04T12:44:07+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2016/09/17/spring-and-infinispan-integration-on-wildfly-cluster/</loc><lastmod>2020-07-04T12:44:07+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/category/java/</loc><lastmod>2020-07-04T13:07:59+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2016/08/08/spring-boot-and-wordpress-integration/</loc><lastmod>2020-07-04T12:55:32+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/category/wordpress/</loc><lastmod>2020-07-04T12:55:32+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/android/</loc><lastmod>2016-07-18T10:37:43+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/activemq/</loc><lastmod>2020-07-04T12:55:47+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/jms/</loc><lastmod>2020-07-04T12:55:47+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2016/04/07/using-standalone-activemq-broker-with-wildfly/</loc><lastmod>2020-07-04T12:55:47+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2016/01/17/protect-your-identity-from-ssh-servers/</loc><lastmod>2020-07-04T12:57:29+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/ssh/</loc><lastmod>2020-07-04T12:57:29+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/avconv/</loc><lastmod>2020-07-04T12:58:45+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/nginx/</loc><lastmod>2020-07-04T12:58:45+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/category/raspberry-pi/</loc><lastmod>2020-07-04T12:58:45+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2015/11/29/real-time-web-cam-surveillance-with-raspberry-pi/</loc><lastmod>2020-07-04T12:58:45+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/conversejs/</loc><lastmod>2020-07-04T13:07:59+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/ejabberd/</loc><lastmod>2020-07-04T13:07:59+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/category/jquery/</loc><lastmod>2020-07-04T13:07:59+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/xmpp/</loc><lastmod>2020-07-04T13:07:59+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2015/08/05/xmpp-web-chat-with-ejabberd-converse-js-and-spring-mvc/</loc><lastmod>2020-07-04T13:07:59+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/linux/</loc><lastmod>2021-08-13T15:03:36+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2013/12/24/organizing-media-files-on-linux/</loc><lastmod>2013-12-24T17:10:09+11:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/shell/</loc><lastmod>2013-12-24T17:10:09+11:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/apache/</loc><lastmod>2013-08-03T23:11:12+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2013/08/03/clustering-tomcat/</loc><lastmod>2013-08-03T23:11:12+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/tomcat/</loc><lastmod>2013-08-03T23:11:12+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/android/</loc><lastmod>2012-09-14T23:24:03+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2012/09/14/demise-of-j2me/</loc><lastmod>2012-09-14T23:24:03+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/j2me/</loc><lastmod>2012-09-14T23:24:03+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/mobile/</loc><lastmod>2012-09-14T23:24:03+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2012/08/16/sharing-vpn-connection-on-linux/</loc><lastmod>2021-08-13T15:03:36+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/vpn/</loc><lastmod>2021-08-13T15:03:36+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/category/android/</loc><lastmod>2011-09-10T20:00:17+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2011/09/10/near-field-communication-nfc/</loc><lastmod>2011-09-10T20:00:17+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/nfc/</loc><lastmod>2011-09-10T20:00:17+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2011/04/21/a-free-software-license/</loc><lastmod>2011-04-21T22:59:28+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/license/</loc><lastmod>2011-04-21T22:59:28+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/open-source/</loc><lastmod>2011-04-21T22:59:28+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/git/</loc><lastmod>2011-04-07T16:42:46+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/scm/</loc><lastmod>2011-04-07T16:42:46+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/category/scm/</loc><lastmod>2011-04-07T16:42:46+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/svn/</loc><lastmod>2011-04-07T16:42:46+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2011/04/07/git-better-than-svn/</loc><lastmod>2011-04-07T16:42:46+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2011/03/29/crawl-index-and-search/</loc><lastmod>2011-03-29T15:58:20+11:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/lucene/</loc><lastmod>2011-03-29T15:58:20+11:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/google-code/</loc><lastmod>2011-03-11T15:45:29+11:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2011/03/11/project-migration-from-sourceforge-to-googlecode/</loc><lastmod>2011-03-11T15:45:29+11:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/sourceforge/</loc><lastmod>2011-03-11T15:45:29+11:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2010/10/13/oracle-ibm-pact-and-android/</loc><lastmod>2010-10-13T15:45:01+11:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2010/03/29/open-source-duke-nukem-forever/</loc><lastmod>2010-03-29T15:44:22+11:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2010/02/23/cyber-sanctions-freedom-the-american-way/</loc><lastmod>2010-02-23T15:43:47+11:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/log4j/</loc><lastmod>2009-10-14T03:41:00+11:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2009/10/14/log4j-emailing-specific-errors-only/</loc><lastmod>2009-10-14T03:41:00+11:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2009/08/19/merging-arrays-in-java/</loc><lastmod>2009-08-19T08:59:00+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/jboss/</loc><lastmod>2009-05-08T03:32:00+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2009/05/08/resolving-log4j-dtd-error-on-jboss/</loc><lastmod>2009-05-08T03:32:00+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/guice/</loc><lastmod>2009-04-24T05:42:00+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2009/04/24/guice-and-jmx-on-jboss/</loc><lastmod>2009-04-24T05:42:00+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/jmx/</loc><lastmod>2009-04-24T05:42:00+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/regex/</loc><lastmod>2009-04-03T08:23:00+11:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2009/04/03/regex-based-spring-aop-auto-proxy-creator/</loc><lastmod>2009-04-03T08:23:00+11:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2009/03/27/handling-dwr-session-timeouts/</loc><lastmod>2009-03-27T08:49:00+11:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/javascript/</loc><lastmod>2009-03-27T08:49:00+11:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/category/javascript/</loc><lastmod>2009-03-27T08:49:00+11:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/serialization/</loc><lastmod>2008-04-01T03:51:00+11:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/xml/</loc><lastmod>2008-04-01T03:51:00+11:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2008/04/01/xml-serialization-of-java-objects/</loc><lastmod>2008-04-01T03:51:00+11:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/cloning/</loc><lastmod>2008-03-28T05:15:00+11:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2008/03/28/deep-cloning-of-serializable-objects/</loc><lastmod>2008-03-28T05:15:00+11:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/cas/</loc><lastmod>2007-09-14T04:44:00+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2007/09/14/cas-acegi-spring-integration-on-jboss/</loc><lastmod>2007-09-14T04:44:00+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/sso/</loc><lastmod>2007-09-14T04:44:00+10:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/classloader/</loc><lastmod>2006-12-25T07:50:00+11:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/tag/jar/</loc><lastmod>2006-12-25T07:50:00+11:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://kamranzafar.org/blog/2006/12/25/loading-classes-directly-from-jar-files/</loc><lastmod>2006-12-25T07:50:00+11:00</lastmod><changefreq>monthly</changefreq></url></urlset>