Congratulations!

[Valid RSS] This is a valid RSS feed.

Recommendations

This feed is valid, but interoperability with the widest range of feed readers could be improved by implementing the following recommendations.

Source: http://feeds.feedburner.com/LotusAndJava

  1. <?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-4110922097903883980</atom:id><lastBuildDate>Tue, 05 Mar 2024 22:44:22 +0000</lastBuildDate><category>simple java examples</category><category>Domino Java Syncer</category><category>Domino bugs</category><category>xPage</category><category>DXL</category><category>CKFinder</category><category>Extended Domino Java API</category><category>Domino Concurrency Threading</category><category>Eclipse</category><category>Extended Domino xPages</category><category>File Upload</category><category>JSON</category><category>Java Libraries</category><category>Velocity</category><category>jQuery</category><category>Domino C API</category><category>Facebook</category><category>Formula</category><category>HTML</category><category>HTML 5</category><category>Java bugs</category><category>Java tricks</category><category>JavaScript</category><category>Joke</category><category>ace</category><category>gson</category><category>java</category><category>jerry</category><category>jodd</category><category>usability</category><title>Lotus and Java</title><description></description><link>http://lotusandjava.blogspot.com/</link><managingEditor>noreply@blogger.com (Andriy Kuba)</managingEditor><generator>Blogger</generator><openSearch:totalResults>77</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4110922097903883980.post-5349969196120344470</guid><pubDate>Thu, 21 Feb 2013 12:11:00 +0000</pubDate><atom:updated>2013-02-21T04:15:55.845-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Domino bugs</category><category domain="http://www.blogger.com/atom/ns#">Formula</category><category domain="http://www.blogger.com/atom/ns#">JSON</category><title>View Outputformat &quot;json&quot; issue</title><description>I got problem with &quot;Outputformat=json&quot; for view. In the case of &quot;!&quot; sign presence in a view column, it wrapped to &quot;\!&quot;. That is incorrect for canonical JSON.&lt;br /&gt;
  2. &lt;br /&gt;
  3. I use JSON for HTML output, so I fix it by replacing &quot;!&quot; to it&#39;s HTML code &quot;&amp;#38;#33;&quot;. &lt;br /&gt;
  4. &lt;br /&gt;
  5. To fix - place simple formula in to the column value:&lt;br /&gt;
  6. &lt;pre&gt;@ReplaceSubstring(HTMLinList;&quot;!&quot;;&quot;&amp;#38;#33;&quot;)
  7. &lt;/pre&gt;&lt;br /&gt;
  8. &lt;br /&gt;
  9. </description><link>http://lotusandjava.blogspot.com/2013/02/view-outputformat-json-issue.html</link><author>noreply@blogger.com (Andriy Kuba)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4110922097903883980.post-3942383786408390437</guid><pubDate>Fri, 08 Feb 2013 10:29:00 +0000</pubDate><atom:updated>2013-02-08T02:30:24.653-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">ace</category><category domain="http://www.blogger.com/atom/ns#">jQuery</category><category domain="http://www.blogger.com/atom/ns#">Velocity</category><category domain="http://www.blogger.com/atom/ns#">xPage</category><title>Dive in to ace</title><description>We use HTML templates in our project. Unfortunately there is no ability to good editing this templates in the IBM Notes client&lt;br /&gt;
  10. &lt;br /&gt;
  11. &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
  12. &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgjmdVbDlDkUE93-c6oBS4j96hF7nn5oe2i9DleiqH1xKC_r0djIb2Z8Cr7IQjglHSF693TKc6PkB3JUs4qWcRda-2snqmcWVjpqhkl64PN62PtcJLZ_7bwrTsjFZlIDy6MEkvbzgCi9MCe/s1600/client.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;356&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgjmdVbDlDkUE93-c6oBS4j96hF7nn5oe2i9DleiqH1xKC_r0djIb2Z8Cr7IQjglHSF693TKc6PkB3JUs4qWcRda-2snqmcWVjpqhkl64PN62PtcJLZ_7bwrTsjFZlIDy6MEkvbzgCi9MCe/s400/client.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
  13. &lt;br /&gt;
  14. I dig around a little and found a cool thing - &lt;a href=&quot;http://ace.ajax.org/&quot;&gt;ace&lt;/a&gt; - that help us a lot.&lt;br /&gt;
  15. So, xPages, ace, jQuery&amp;nbsp; and few hours of work:&lt;br /&gt;
  16. &lt;br /&gt;
  17. &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
  18. &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj7H1PYFMB1pU70JzpYybfl-vZFEX1c5u-3BQ1Ur5mpD9T1GEGubqub8jhIOw_IFJ2zrLime-mrPYlgjA66p_jQ9k8SEbP2ygiEiEdCjprooNS9tbFb4YSJdJn8ZpgEQ0BbhCb7HWpNRcMd/s1600/success.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;234&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj7H1PYFMB1pU70JzpYybfl-vZFEX1c5u-3BQ1Ur5mpD9T1GEGubqub8jhIOw_IFJ2zrLime-mrPYlgjA66p_jQ9k8SEbP2ygiEiEdCjprooNS9tbFb4YSJdJn8ZpgEQ0BbhCb7HWpNRcMd/s400/success.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
  19. &lt;br /&gt;
  20. &lt;br /&gt;</description><link>http://lotusandjava.blogspot.com/2013/02/dive-in-to-ace.html</link><author>noreply@blogger.com (Andriy Kuba)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgjmdVbDlDkUE93-c6oBS4j96hF7nn5oe2i9DleiqH1xKC_r0djIb2Z8Cr7IQjglHSF693TKc6PkB3JUs4qWcRda-2snqmcWVjpqhkl64PN62PtcJLZ_7bwrTsjFZlIDy6MEkvbzgCi9MCe/s72-c/client.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4110922097903883980.post-7117924173119842020</guid><pubDate>Mon, 04 Feb 2013 09:35:00 +0000</pubDate><atom:updated>2013-02-04T01:37:39.972-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">gson</category><category domain="http://www.blogger.com/atom/ns#">java</category><category domain="http://www.blogger.com/atom/ns#">jerry</category><category domain="http://www.blogger.com/atom/ns#">jodd</category><title>Light reader of www.alexa.com rank</title><description>Alexa is a good site to check you rank, unfortunately it&#39;s does not store statistic for the sites that have less than 100,000 rank.&lt;br /&gt;
  21. &lt;br /&gt;
  22. You could buy account, for store such statistic for you own site.&lt;br /&gt;
  23. &lt;br /&gt;
  24. Sometime you need to look for the statistic of your competitors, that are lower than 100,000.&lt;br /&gt;
  25. &lt;br /&gt;
  26. I create a &lt;a href=&quot;https://github.com/andriykuba/alexarankrider/&quot;&gt;little program that allow you to gather statistic for any site&lt;/a&gt; that is on the www.alexa.com.&lt;br /&gt;
  27. &lt;br /&gt;
  28. You need to put URL in to the properties file, run program and look in to the resulting json.&lt;br /&gt;
  29. &lt;br /&gt;
  30. input example&lt;br /&gt;
  31. &lt;br /&gt;
  32. &lt;pre&gt;url.1=http://www.alexa.com/siteinfo/championselect.net
  33. url.2=http://www.alexa.com/siteinfo/elohell.net
  34. url.3=http://www.alexa.com/siteinfo/lolcounter.com
  35. url.4=http://www.alexa.com/siteinfo/lolcounterpicks.com
  36. url.5=http://www.alexa.com/siteinfo/counterlol.org
  37. url.6=http://www.alexa.com/siteinfo/picklol.net
  38. url.7=http://www.alexa.com/siteinfo/counterpicker.com
  39. &lt;/pre&gt;&lt;br /&gt;
  40. result example&lt;br /&gt;
  41. &lt;br /&gt;
  42. &lt;pre&gt;{
  43.  &quot;http://www.alexa.com/siteinfo/championselect.net&quot; : &quot;10,546&quot;,
  44.  &quot;http://www.alexa.com/siteinfo/elohell.net&quot; : &quot;16,323&quot;,
  45.  &quot;http://www.alexa.com/siteinfo/lolcounter.com&quot; : &quot;16,487&quot;,
  46.  &quot;http://www.alexa.com/siteinfo/lolcounterpicks.com&quot; : &quot;462,863&quot;,
  47.  &quot;http://www.alexa.com/siteinfo/counterlol.org&quot; : &quot;4,722,060&quot;,
  48.  &quot;http://www.alexa.com/siteinfo/picklol.net&quot; : &quot;7,679,714&quot;,
  49.  &quot;http://www.alexa.com/siteinfo/counterpicker.com&quot; : &quot;12,461,834&quot;
  50. }
  51. &lt;/pre&gt;</description><link>http://lotusandjava.blogspot.com/2013/02/light-reader-of-wwwalexacom-rank.html</link><author>noreply@blogger.com (Andriy Kuba)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4110922097903883980.post-3219994498141770117</guid><pubDate>Wed, 17 Oct 2012 12:59:00 +0000</pubDate><atom:updated>2012-10-17T05:59:16.109-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">File Upload</category><category domain="http://www.blogger.com/atom/ns#">xPage</category><title>xPage: Optimize Uploaded Image </title><description>I had a task to &lt;a href=&quot;http://lotusandjava.blogspot.com/2012/10/custom-file-upload-in-xpage-java-backend.html&quot;&gt;upload images in xPage&lt;/a&gt;. The next one is to optimize image lossless. User upload the image in to the Domino media library and the image optimizing on the fly.&lt;br /&gt;
  52. &lt;br /&gt;
  53. Unfortunately there is no good Java solution for lossless optimization of images. There are set of solution to use third party command line programs and run it from java. The problem is that you need to install this program on the server, many of them supports only one OS, so if you have Domino server on the windows and then would move to the Linux (or vice verse) you got a problem.&lt;br /&gt;
  54. &lt;br /&gt;
  55. I decide to use online optimizer. It looks like there is no good paid online services with a good API. So I start from the free one. It is well known &lt;a href=&quot;http://www.smushit.com/ysmush.it/&quot;&gt;Yahoo! Smush.it&lt;/a&gt;. &lt;br /&gt;
  56. &lt;br /&gt;
  57. Smush.it has no API, but there is a &lt;a href=&quot;https://github.com/abhirama/smushit&quot;&gt;guy who create stand alone java API for Smush.it service&lt;/a&gt;. He did it in the way of command line tool, but it could be used as API in your application.&lt;br /&gt;
  58. &lt;br /&gt;
  59. I like it! The only one problem is that program out process information (log) directly in to the System.out. I need some information to be printed in to my log.nsf and some information to be returned to the user. So &lt;a href=&quot;https://github.com/andriykuba/smushit&quot;&gt;I add ability to put StringBuilder object in to the Smush.it API&lt;/a&gt;. &amp;nbsp; &lt;br /&gt;
  60. &lt;br /&gt;
  61. Code example:&lt;br /&gt;
  62. &lt;br /&gt;
  63. &lt;pre&gt;&lt;code&gt;//log and statistic contains information
  64. //about process and compression result
  65. //
  66. //file - file to optimize,
  67. //generally opt rewrite file, but not in all cases.
  68. //Look &quot;Important&quot; section
  69. //
  70. //opt - optimized file
  71.  
  72. StringBuilder log = new StringBuilder();
  73. StringBuilder statistic = new StringBuilder();
  74.  
  75. SmushIt smushIt = new SmushIt();
  76. smushIt.setVerbose(log);
  77. smushIt.setVerboseStatistic(statistic);    
  78. smushIt.addFile(file.getCanonicalPath());
  79. List&amp;lt;smushitresultvo&amp;gt; smushItResultVos = smushIt.smush();
  80.  
  81. ImageDownloader imageDownloader =
  82. new ImageDownloader(file.getParent());
  83. imageDownloader.setVerbose(log);
  84.  
  85. File opt = imageDownloader.download(smushItResultVos.get(0));      
  86.  
  87. &lt;/code&gt;&lt;/pre&gt;StringBuilder log variable after running code:&lt;br /&gt;
  88. &lt;br /&gt;
  89. &lt;pre&gt;Smushing files:
  90.  
  91. C:\Windows\Temp\notesE3A053\xspupload\0001.jpg
  92.  
  93. Adding file:C:\Windows\Temp\notesE3A053\xspupload\0001.jpg
  94. {&quot;src&quot;:&quot;0b2c68eb%2F0001.jpg&quot;,&quot;src_size&quot;:40895,
  95. &quot;dest&quot;:&quot;http:\/\/ysmushit.zenfs.com\
  96. /results\/0b2c68eb%2Fsmush%2F0001.jpg&quot;,
  97. &quot;dest_size&quot;:38749,
  98. &quot;percent&quot;:&quot;5.25&quot;,&quot;id&quot;:&quot;&quot;}
  99.  
  100. Downloaded smushed image -
  101. http://ysmushit.zenfs.com/results/0b2c68eb%2Fsmush%2F0001.jpg
  102. Saved image - C:\Windows\TEMP\notesE3A053\xspupload\0001.jpg&lt;/pre&gt;&lt;br /&gt;
  103. StringBuilder statistic variable after running code:&lt;br /&gt;
  104. &lt;br /&gt;
  105. &lt;pre&gt;Source Image:0001.jpg
  106. Source image size:40895
  107. Smushed image size:38749
  108. Percentage saving:5.25
  109. &lt;/pre&gt;&lt;br /&gt;
  110. Projects on github:&lt;br /&gt;
  111. &lt;a href=&quot;https://github.com/andriykuba/smushit&quot;&gt;https://github.com/andriykuba/smushit&lt;/a&gt;&lt;br /&gt;
  112. &lt;a href=&quot;https://github.com/abhirama/smushit&quot;&gt;https://github.com/abhirama/smushit&lt;/a&gt; </description><link>http://lotusandjava.blogspot.com/2012/10/xpage-optimize-uploaded-image.html</link><author>noreply@blogger.com (Andriy Kuba)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4110922097903883980.post-1879031764423612187</guid><pubDate>Thu, 11 Oct 2012 11:00:00 +0000</pubDate><atom:updated>2012-10-17T05:59:38.254-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">CKFinder</category><category domain="http://www.blogger.com/atom/ns#">File Upload</category><category domain="http://www.blogger.com/atom/ns#">xPage</category><title>Custom File Upload in the xPage. Java. Backend.</title><description>There are a lot of articles about custom file upload with xPages. Most of them are about JavaScript. They use Java classes, so convert that code in to the Java is not problematic.&lt;br /&gt;
  113. &lt;br /&gt;
  114. It&#39;s very easy to do in backend java code within xPages. The only one miss is that we could not write to the file attachment directly from the request. We still need to use a file. Thanks to xPage - it handle server temp files himself.&lt;br /&gt;
  115. &lt;br /&gt;
  116. The code:&lt;br /&gt;
  117. &lt;br /&gt;
  118. &lt;pre class=&quot;code-java&quot;&gt;public void process() throws Exception {
  119. HttpServletRequest request = getRequest();
  120. Document document =
  121.  getEs().createDocument().getDocument();
  122. document.replaceItemValue(&quot;Form&quot;, &quot;picture&quot;);
  123.  
  124. Map parameters = request.getParameterMap();
  125. UploadedFile uploadedFile=
  126.  (UploadedFile) parameters.get(&quot;upload&quot;);
  127. document.replaceItemValue(
  128.  &quot;FileName&quot;,
  129.  uploadedFile.getClientFileName());
  130. File tmpFile = uploadedFile.getServerFile();
  131. File fileToUpload = new File(
  132.   tmpFile.getParentFile().getAbsolutePath().
  133.   concat(java.io.File.separator).
  134.   concat(uploadedFile.getClientFileName()));
  135. boolean success = tmpFile.renameTo(fileToUpload);
  136. addAttachment(document, success?fileToUpload:tmpFile);
  137. fileToUpload.renameTo(tmpFile);
  138. document.save(true, true);
  139. }
  140.  
  141. private void addAttachment(Document document, File file)
  142. throws Exception{
  143. RichTextItem item = document.createRichTextItem(&quot;Body&quot;);
  144. item.embedObject(
  145.  EmbeddedObject.EMBED_ATTACHMENT,
  146.  &quot;&quot;,
  147.  file.getCanonicalPath(), null);  
  148. }
  149. &lt;/pre&gt;&lt;br /&gt;
  150. Look &lt;a href=&quot;http://lotusandjava.blogspot.com/2012/09/accessing-xpages-global-objects-in-java.html&quot;&gt;http://lotusandjava.blogspot.com/2012/09/accessing-xpages-global-objects-in-java.html&lt;/a&gt; to find how to get request</description><link>http://lotusandjava.blogspot.com/2012/10/custom-file-upload-in-xpage-java-backend.html</link><author>noreply@blogger.com (Andriy Kuba)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4110922097903883980.post-8327018235045321850</guid><pubDate>Sat, 06 Oct 2012 12:21:00 +0000</pubDate><atom:updated>2012-10-06T05:21:56.275-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Joke</category><title>It looks like Planet Lotus users are more familar with programming languages than with natural.</title><description>True code header have better rate:&lt;br /&gt;
  151. &lt;br /&gt;
  152. &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
  153. &lt;/div&gt;
  154. &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
  155. &lt;/div&gt;
  156. &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
  157. &lt;a href=&quot;http://4.bp.blogspot.com/-2H6-OERWALU/UHAhPHiVtnI/AAAAAAAAEWg/gSyJ10Dof_c/s1600/planetlotus.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;http://4.bp.blogspot.com/-2H6-OERWALU/UHAhPHiVtnI/AAAAAAAAEWg/gSyJ10Dof_c/s640/planetlotus.png&quot; width=&quot;574&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
  158. &lt;br /&gt;
  159. &lt;br /&gt;</description><link>http://lotusandjava.blogspot.com/2012/10/it-looks-like-planet-lotus-users-are.html</link><author>noreply@blogger.com (Andriy Kuba)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-2H6-OERWALU/UHAhPHiVtnI/AAAAAAAAEWg/gSyJ10Dof_c/s72-c/planetlotus.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4110922097903883980.post-6990416553684396483</guid><pubDate>Sat, 06 Oct 2012 12:09:00 +0000</pubDate><atom:updated>2012-10-06T05:09:15.413-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">CKFinder</category><title>CKFinder for Domino. Downloading</title><description>CKFinder have two options to download files (images) - by request to the server &quot;connector&quot; command processor and by direct downloading.&lt;br /&gt;
  160. &lt;br /&gt;
  161. Request to the &quot;connector&quot; (&lt;i&gt;&quot;ckfinder-connector-url\connector.xsp?command=Download...&quot;&lt;/i&gt;)  is not accessible for Domino. &lt;br /&gt;
  162. &lt;br /&gt;
  163. For direct download CKFinder use file(image) link with the &lt;i&gt;&quot;?download&quot;&lt;/i&gt; command. Let&#39;s modify this way for allowing CKFinder to &quot;download&quot; files from the Domino server.&lt;br /&gt;
  164. &lt;br /&gt;
  165. Browser would download file in the case if &lt;i&gt;&lt;a href=&quot;http://www.w3.org/Protocols/rfc2616/rfc2616-sec19.html&quot;&gt;&quot;content-disposition&quot;&lt;/a&gt; &lt;/i&gt;header available (and filled). We need to have ability to open file (no &lt;i&gt;&quot;content-disposition&quot; &lt;/i&gt;header) and to download file (&lt;i&gt;&quot;content-disposition&quot; &lt;/i&gt;header present). Let assume we have some database with web view &lt;i&gt;&quot;web-files&quot;&lt;/i&gt; for open files on the web. Then we will need another one, completely the same, view &lt;i&gt;&quot;web-download&quot;&lt;/i&gt; for downloading files and &lt;i&gt;HTTP response headers&lt;/i&gt; rule for&amp;nbsp; adding &lt;i&gt;&quot;content-disposition&quot; &lt;/i&gt;header.&lt;br /&gt;
  166. &lt;br /&gt;
  167. &lt;i&gt;HTTP response headers&lt;/i&gt; rule:&lt;br /&gt;
  168. Incoming URL pattern: */web-&lt;i&gt;download/*&lt;/i&gt;&lt;br /&gt;
  169. Custom headers:&lt;br /&gt;
  170. &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Name: &lt;i&gt;content-disposition&amp;nbsp;&lt;/i&gt;&lt;br /&gt;
  171. &lt;i&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/i&gt;Value: &lt;i&gt;attachment&lt;/i&gt;&lt;br /&gt;
  172. &lt;br /&gt;
  173. Now, when you will open file &lt;i&gt;&quot;web-files/companylogo.jpg&quot;&lt;/i&gt;, then browser will show it, and when you open file &lt;i&gt;&quot;web-files/companylogo.jpg&quot;, &lt;/i&gt;then browser will ask to save it. &lt;br /&gt;
  174. &lt;br /&gt;
  175. Domino configured. Now we need to modify ckfinder.js to allow it to load files from another url. I am using &lt;i&gt;&quot;url&quot;&lt;/i&gt; attribute of &lt;i&gt;&quot;ResourceType&quot;&lt;/i&gt; tag in the response of &lt;i&gt;&quot;Init&quot;&lt;/i&gt; command to put files url. So I&amp;nbsp; add &lt;i&gt;&quot;download&quot;&lt;/i&gt; attribute to the &lt;i&gt;&quot;ResourceType&quot;&lt;/i&gt; tag to put files download url.&lt;br /&gt;
  176. &lt;br /&gt;
  177. ckfinder.js with modification that supports &lt;i&gt;&quot;download&quot;&lt;/i&gt; attribute:&amp;nbsp; &lt;br /&gt;
  178. &lt;br /&gt;
  179. &lt;pre class=&quot;code-java&quot;&gt;p.resourceTypes.push(new a.aL.ResourceType(p, {
  180. name: t.getNamedItem(&#39;name&#39;).value,
  181. url: t.getNamedItem(&#39;url&#39;).value,
  182. //Modification
  183. download: t.getNamedItem(&#39;download&#39;).value,
  184. hasChildren: t.getNamedItem(&#39;hasChildren&#39;).value,
  185. allowedExtensions:&amp;nbsp;
  186.  t.getNamedItem(&#39;allowedExtensions&#39;).value,
  187. deniedExtensions:&amp;nbsp;
  188.  t.getNamedItem(&#39;deniedExtensions&#39;).value,
  189. acl: t.getNamedItem(&#39;acl&#39;).value,
  190. hash: t.getNamedItem(&#39;hash&#39;).value,
  191. maxSize: t.getNamedItem(&#39;maxSize&#39;).value
  192. }));
  193. &lt;/pre&gt;&lt;br /&gt;
  194. And&lt;br /&gt;
  195. &lt;br /&gt;
  196. &lt;pre class=&quot;code-java&quot;&gt;a.aL.ResourceType = function (q, r) {
  197. var s = this;
  198. s.app = q;
  199. s.name = r.name;
  200. s.url = r.url;
  201. //Modification
  202. s.download = r.download;
  203. s.hasChildren = r.hasChildren === &#39;true&#39;;
  204. s.defaultView = &#39;Thumbnails&#39;;
  205. s.allowedExtensions = r.allowedExtensions;
  206. s.deniedExtensions = r.deniedExtensions;
  207. s.oT = p(r.allowedExtensions);
  208. s.ms = p(r.deniedExtensions);
  209. s.nS = r.acl;
  210. s.hash = r.hash;
  211. s.maxSize = r.maxSize;
  212. };
  213. &lt;/pre&gt;&lt;br /&gt;
  214. Now we need to change generation of download url in he CKFinder:&lt;br /&gt;
  215. &lt;br /&gt;
  216. &lt;pre class=&quot;code-java&quot;&gt;if (R.config.directDownload){
  217. //Modification
  218. var filename = encodeURIComponent(S.name);
  219. var basenanme =
  220. filename.substring(0, filename.lastIndexOf(&#39;.&#39;));
  221. T = S.folder.getResourceType().download +
  222. basenanme+&#39;/$file/&#39;+filename;
  223.  
  224. //original CKFinder String
  225. //T = S.folder.getUrl() + S.name + &#39;?download&#39;;
  226. }
  227. &lt;/pre&gt;&lt;br /&gt;
  228. That&#39;s all.</description><link>http://lotusandjava.blogspot.com/2012/10/ckfinder-for-domino-downloading.html</link><author>noreply@blogger.com (Andriy Kuba)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4110922097903883980.post-3605370691017674463</guid><pubDate>Fri, 05 Oct 2012 14:19:00 +0000</pubDate><atom:updated>2012-10-05T07:19:02.311-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">CKFinder</category><title>CKFinder for Domino. Images (and Files)</title><description>CKFinder open an image in the same way as a thumbnail. So we have exactly the same problem &lt;a href=&quot;http://lotusandjava.blogspot.com/2012/10/ckfinder-for-domino-thumbnails.html&quot;&gt;like for thumbnails&lt;/a&gt; in Domino.&lt;br /&gt;
  229. &lt;br /&gt;
  230. CKFinder construct link to the file like &lt;i&gt;&quot;base-file-url\filename&quot;&lt;/i&gt;. In Domino, we have access to the attachment with the help of &lt;i&gt;&quot;\$file\&quot;&lt;/i&gt; path. So we must to have URL like:&lt;br /&gt;
  231. &lt;i&gt;&quot;base-file-url\filename\$file\filename.&quot; &lt;/i&gt;or &lt;i&gt;&quot;&lt;/i&gt;&lt;i&gt;&lt;i&gt;base-file-url\filename\filename&lt;/i&gt;&quot; &lt;/i&gt;in the case of substitution.&lt;br /&gt;
  232. &lt;br /&gt;
  233. You need to find in the ckfinder.js string like&lt;br /&gt;
  234. &lt;pre class=&quot;code-java&quot;&gt;J.push(&#39;&amp;lt;a href=&quot;&#39;, D.folder.getUrl(),&amp;nbsp;
  235. encodeURIComponent(C[K].name),&amp;nbsp;
  236. &#39;&quot; title=&quot;&#39;, C[K].name, &#39;&quot; rel=&quot;&#39;, E, &#39;&quot;&amp;gt;a&amp;lt;/a&amp;gt;&#39;);&amp;nbsp;&lt;/pre&gt;and change it with &lt;br /&gt;
  237. &lt;pre class=&quot;code-java&quot;&gt;if (!F || F(C[K])) {  
  238. var filename = encodeURIComponent(C[K].name);
  239. var basenanme = filename.substring(0,
  240.  filename.lastIndexOf(&#39;.&#39;));
  241. var url = D.folder.getResourceType().url
  242.  + basenanme+&#39;/$file/&#39;+filename;
  243. J.push(&#39;&amp;lt;a href=&quot;&#39;, url, &#39;&quot; title=&quot;&#39;, C[K].name,
  244.  &#39;&quot; rel=&quot;&#39;, E, &#39;&quot;&amp;gt;a&amp;lt;/a&amp;gt;&#39;);                    
  245. if (C[K].isSameFile(D)) H = I;
  246. I++;
  247. }
  248. &lt;/pre&gt;That will change image url. You also need to change File url. Find&lt;br /&gt;
  249. &lt;pre class=&quot;code-java&quot;&gt;if (!W.open(S.folder.getUrl() +
  250. encodeURIComponent(S.name), &#39;_blank&#39;, V))
  251. R.msgDialog(&#39;&#39;, R.lang.ErrorMsg.oo);
  252. &lt;/pre&gt;&lt;br /&gt;
  253. and change it with &lt;br /&gt;
  254. &lt;br /&gt;
  255. &lt;pre class=&quot;code-java&quot;&gt;var filename = encodeURIComponent(S.name);
  256. var basenanme = filename.substring(0, filename.lastIndexOf(&#39;.&#39;));
  257. var url = S.folder.getResourceType().download + basenanme+
  258. &#39;/$file/&#39;+filename;
  259. if (!W.open(url, &#39;_blank&#39;, V))
  260. R.msgDialog(&#39;&#39;, R.lang.ErrorMsg.oo);
  261. &lt;/pre&gt;</description><link>http://lotusandjava.blogspot.com/2012/10/ckfinder-for-domino-images-and-files.html</link><author>noreply@blogger.com (Andriy Kuba)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4110922097903883980.post-4709096505309344147</guid><pubDate>Fri, 05 Oct 2012 08:08:00 +0000</pubDate><atom:updated>2012-10-05T01:09:48.753-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">CKFinder</category><title>CKFinder for Domino. Thumbnails. </title><description>CKFinder have two options to show thumbnails - by request to the server &quot;connector&quot; command processor and by direct downloading.&lt;br /&gt;
  262. &lt;br /&gt;
  263. Request to the &quot;connector&quot; (&lt;i&gt;&quot;ckfinder-connector-url\connector.xsp?command=Thumbnails...&quot;&lt;/i&gt;) is not accessible for Domino. Reading thumbnail attachment on the server and return data as result of the command is expensive operation for the server. &lt;br /&gt;
  264. &lt;br /&gt;
  265. CKFinder construct direct download like &lt;i&gt;&quot;thumb-base-url\filename?hash=.....&quot;&lt;/i&gt;. In Domino, we have access to the attachment with the help of &lt;i&gt;&quot;\$file\&quot;&lt;/i&gt; path. So we must to have URL like:&lt;br /&gt;
  266. &lt;i&gt;&quot;thumb-bas-url\filename\$file\filename?Open&amp;amp;hash=.....&quot;&amp;nbsp;&lt;/i&gt;&lt;br /&gt;
  267. &lt;br /&gt;
  268. Or better: &lt;br /&gt;
  269. &lt;i&gt;&quot;thumb-bas-url\filename-thumb-without-ext\$file\filename-thumb?Open&amp;amp;hash=.....&quot;&amp;nbsp;&lt;/i&gt;&lt;br /&gt;
  270. &lt;br /&gt;
  271. In the case if will use substitution rules for fine url: &lt;br /&gt;
  272. &lt;i&gt;&quot;thumb-bas-url\filename-thumb-without-ext\filename-thumb?Open&amp;amp;hash=.....&quot;&amp;nbsp;&lt;/i&gt;&lt;br /&gt;
  273. &lt;br /&gt;
  274. You need to find in the ckfinder.js&amp;nbsp; &quot;getThumbnailUrl&quot; function and modify code in the&lt;br /&gt;
  275. &lt;b&gt;&quot;L &amp;amp;&amp;amp; N.config.thumbsDirectAccess&quot;&lt;/b&gt;&lt;br /&gt;
  276. condition:&lt;br /&gt;
  277. &lt;br /&gt;
  278. &lt;pre class=&quot;code-java&quot;&gt;&lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (L &amp;amp;&amp;amp; N.config.thumbsDirectAccess) {
  279. &lt;span class=&quot;code-keyword&quot;&gt;     var&lt;/span&gt; filename = encodeURIComponent(M);
  280.     &lt;span class=&quot;code-keyword&quot;&gt;var&lt;/span&gt; dotIndex = filename.lastIndexOf(&#39;.&#39;);
  281.     &lt;span class=&quot;code-keyword&quot;&gt;var&lt;/span&gt; ext = filename.substring(dotIndex+1);
  282.     &lt;span class=&quot;code-keyword&quot;&gt;var&lt;/span&gt; basenanme = filename.substring(0, dotIndex);
  283.     &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; N.config.thumbsUrl + basenanme
  284.         + &#39;-thumb/$file/&#39;
  285.         + basenanme + &#39;-thumb.&#39; + ext
  286.         + (!K ? &#39;&#39; : &#39;?Open&amp;amp;hash=&#39;
  287.         + N.getResourceType(R.folder.type).hash
  288.         + &#39;&amp;amp;fileHash=&#39; + P);
  289. }&lt;/pre&gt;</description><link>http://lotusandjava.blogspot.com/2012/10/ckfinder-for-domino-thumbnails.html</link><author>noreply@blogger.com (Andriy Kuba)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4110922097903883980.post-3036122071975898407</guid><pubDate>Wed, 03 Oct 2012 11:39:00 +0000</pubDate><atom:updated>2012-10-03T04:39:31.971-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Domino bugs</category><category domain="http://www.blogger.com/atom/ns#">xPage</category><title>xPage java.lang.NoClassDefFoundError</title><description>Suddenly got &quot;java.lang.NoClassDefFoundError&quot; error on my xPage for the class from &quot;Java&quot; design area. The day before it works without problems.&lt;br /&gt;
  290. &lt;br /&gt;
  291. Project clean, rebuild does not help.&amp;nbsp; Server restart does not help. I read that &lt;a href=&quot;http://blog.vinceschuurman.com/home/ndt4.nsf/BlogContent.xsp?openDocument&amp;amp;pLink=201112071332&quot;&gt;Recompile code when opening in designer (xPages)&lt;/a&gt; solution helps for someone, unfortunately not for me.&lt;br /&gt;
  292. &lt;br /&gt;
  293. The only one solution helps is to rename class that was not found. I am lucky to have only one such class and I am afraid to get this error again for all of them.&lt;br /&gt;
  294. &lt;br /&gt;
  295. &lt;br /&gt;
  296. ... maybe I will try to &lt;a href=&quot;http://dontpanic82.blogspot.com/2011/12/classnotfoundexception-with-new-java.html&quot;&gt;move code to the WEB-INF/src&lt;/a&gt; ...&lt;br /&gt;
  297. &lt;br /&gt;
  298. My Client version is &quot;20120703.0900-T00099SHF-FP2 (Release 8.5.3FP2 SHF99) &quot; </description><link>http://lotusandjava.blogspot.com/2012/10/xpage-javalangnoclassdeffounderror.html</link><author>noreply@blogger.com (Andriy Kuba)</author><thr:total>3</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4110922097903883980.post-3454931259493015078</guid><pubDate>Fri, 28 Sep 2012 17:29:00 +0000</pubDate><atom:updated>2012-09-28T10:29:30.013-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">CKFinder</category><title>CKFinder for Domino. First step. </title><description>I am trying to get CKFinder to work with Domino.&lt;br /&gt;
  299. &lt;br /&gt;
  300. I saw the post &quot;&lt;a class=&quot;l vst&quot; href=&quot;http://cksource.com/forums/viewtopic.php?f=10&amp;amp;t=17866&amp;amp;start=0&quot; style=&quot;color: #660099; cursor: pointer;&quot;&gt;&lt;span class=&quot;Apple-converted-space&quot;&gt;&lt;/span&gt;ckeditor 3.2,&lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;em style=&quot;font-style: normal; font-weight: bold;&quot;&gt;ckfinder&lt;/em&gt;&lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;1.4.3 and&lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;em style=&quot;font-style: normal; font-weight: bold;&quot;&gt;Domino&lt;/em&gt;&lt;/a&gt;&quot; but it is unavailable 2nd day, so I am looking himself in to this point.&lt;br /&gt;
  301. &lt;br /&gt;
  302. &lt;h4&gt;
  303. First problem&lt;/h4&gt;
  304. CKFinder add some command to the end of it&#39;s URL, that domino server do not like:&lt;br /&gt;
  305. &amp;nbsp;&quot;?t=XYZ&quot;. &amp;nbsp; &lt;br /&gt;
  306. &lt;br /&gt;
  307. Just remove it:&lt;br /&gt;
  308. open ckfinder.js, look for something like &quot;f={jY:&#39;C7OA1WG&#39;,_:{},&quot; and replace it on &quot;f={_:{},&quot; (delete jY:&#39;C7OA1WG&#39;)&lt;br /&gt;
  309. &lt;br /&gt;
  310. CKFinder also use command &lt;span class=&quot;short_text&quot; id=&quot;result_box&quot; lang=&quot;en&quot;&gt;&lt;span class=&quot;hps&quot;&gt;syntax like &quot;?command=..&quot;&lt;/span&gt;&lt;/span&gt;. It&#39;s also a little trouble for domino.&lt;br /&gt;
  311. &lt;br /&gt;
  312. Replace &lt;span class=&quot;short_text&quot; id=&quot;result_box&quot; lang=&quot;en&quot;&gt;&lt;span class=&quot;hps&quot;&gt;&quot;?command=..&quot;&lt;/span&gt;&lt;/span&gt; to &quot;?Open&amp;amp;command=..&quot; in the ckfinder.js&lt;br /&gt;
  313. &lt;br /&gt;
  314. &lt;h4&gt;
  315. Second problem&lt;/h4&gt;
  316. I am trying to create server side command handlers for CKFinder.&lt;br /&gt;
  317. &lt;a href=&quot;http://docs.cksource.com/CKFinder_2.x/Server_Side_Integration/The_Commands/Init&quot;&gt;&quot;INIT&quot; command example&quot;&lt;/a&gt;&lt;br /&gt;
  318. &lt;br /&gt;
  319. &lt;pre class=&quot;de1&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px none white; color: black; font-family: monospace; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 1.2em; margin: 0px; orphans: 2; padding: 0px; text-align: left; text-indent: 0px; text-transform: none; vertical-align: top; widows: 2; word-spacing: 0px;&quot;&gt;&lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re1&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;lt;?xml&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;version&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;1.0&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;encoding&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;utf-8&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/span&gt;
  320. &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re1&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;lt;Connector&lt;span class=&quot;re2&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
  321. &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re1&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;lt;Error&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;number&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;0&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
  322. &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re1&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;lt;ConnectorInfo&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;enabled&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;true&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;s&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;c&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;thumbsEnabled&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;true&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
  323. &lt;pre class=&quot;de1&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px none white; color: black; font-family: monospace; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 1.2em; margin: 0px; orphans: 2; padding: 0px; text-align: left; text-indent: 0px; text-transform: none; vertical-align: top; widows: 2; word-spacing: 0px;&quot;&gt;&lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;thumbsUrl&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;/userfiles/_thumbs/&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;thumbsDirectAccess&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;false&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
  324. &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re1&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;lt;ResourceTypes&lt;span class=&quot;re2&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
  325. &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re1&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;lt;ResourceType&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;name&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;Files&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;url&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;/userfiles/files/&quot;&lt;/span&gt;&amp;nbsp;&lt;/span&gt;&lt;/pre&gt;
  326. &lt;pre class=&quot;de1&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px none white; color: black; font-family: monospace; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 1.2em; margin: 0px; orphans: 2; padding: 0px; text-align: left; text-indent: 0px; text-transform: none; vertical-align: top; widows: 2; word-spacing: 0px;&quot;&gt;&lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;allowedExtensions&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;7z,aiff,asf,avi,bmp,csv,doc,fla,flv,gif&quot;&lt;/span&gt; &lt;/span&gt;
  327. &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;deniedExtensions&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;defaultView&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;Thumbnails&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;hash&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;654e8f3600949355&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
  328. &lt;pre class=&quot;de1&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px none white; color: black; font-family: monospace; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 1.2em; margin: 0px; orphans: 2; padding: 0px; text-align: left; text-indent: 0px; text-transform: none; vertical-align: top; widows: 2; word-spacing: 0px;&quot;&gt;&lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;hasChildren&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;true&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;acl&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;17&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
  329. &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re1&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;lt;ResourceType&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;name&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;Images&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;url&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;/userfiles/images/&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
  330. &lt;pre class=&quot;de1&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px none white; color: black; font-family: monospace; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 1.2em; margin: 0px; orphans: 2; padding: 0px; text-align: left; text-indent: 0px; text-transform: none; vertical-align: top; widows: 2; word-spacing: 0px;&quot;&gt;&lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;allowedExtensions&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;bmp,gif,jpeg,jpg,png&quot;&lt;/span&gt; &lt;/span&gt;
  331. &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;deniedExtensions&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;defaultView&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;Thumbnails&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;hash&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;4d8ddfd385d0952b&quot;&lt;/span&gt;&amp;nbsp;&lt;/span&gt;&lt;/pre&gt;
  332. &lt;pre class=&quot;de1&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px none white; color: black; font-family: monospace; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 1.2em; margin: 0px; orphans: 2; padding: 0px; text-align: left; text-indent: 0px; text-transform: none; vertical-align: top; widows: 2; word-spacing: 0px;&quot;&gt;&lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;hasChildren&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;true&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;acl&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;17&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
  333. &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re1&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;lt;ResourceType&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;name&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;Flash&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;url&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;/userfiles/flash/&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
  334. &lt;pre class=&quot;de1&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px none white; color: black; font-family: monospace; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 1.2em; margin: 0px; orphans: 2; padding: 0px; text-align: left; text-indent: 0px; text-transform: none; vertical-align: top; widows: 2; word-spacing: 0px;&quot;&gt;&lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;allowedExtensions&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;swf,flv&quot;&lt;/span&gt; &lt;/span&gt;
  335. &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;deniedExtensions&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;defaultView&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;Thumbnails&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;hash&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;a2d473ff04429cc5&quot;&lt;/span&gt;&amp;nbsp;&lt;/span&gt;&lt;/pre&gt;
  336. &lt;pre class=&quot;de1&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px none white; color: black; font-family: monospace; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 1.2em; margin: 0px; orphans: 2; padding: 0px; text-align: left; text-indent: 0px; text-transform: none; vertical-align: top; widows: 2; word-spacing: 0px;&quot;&gt;&lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;hasChildren&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;true&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;acl&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;17&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
  337. &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re1&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;lt;/ResourceTypes&lt;span class=&quot;re2&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
  338. &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re1&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;lt;/Connector&lt;span class=&quot;re2&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
  339. &lt;br /&gt;
  340. This example born errors in real life: &lt;br /&gt;
  341. &lt;br /&gt;
  342. Error:&lt;br /&gt;TypeError: t.selectSingleNode(v + &quot;@imgWidth&quot;) is null&lt;br /&gt;&lt;br /&gt;Fix:&lt;br /&gt;&quot;Connector/ConnectorInfo&quot; node must have &quot;imgWidth&quot; attribute (as well as &quot;imgHeight&quot;) in the command &quot;init&quot; resonse&lt;br /&gt;&lt;br /&gt;Error:&lt;br /&gt;TypeError: t.getNamedItem(&quot;maxSize&quot;) is null&lt;br /&gt;&lt;br /&gt;Reason:&lt;br /&gt;&quot;Connector/ResourceTypes/ResourceType&quot; node must have &quot;maxSize&quot; attribute in the command &quot;init&quot; resonse&lt;br /&gt;
  343. &lt;br /&gt;
  344. So the correct &quot;INIT&quot; response must be like&lt;br /&gt;
  345. &lt;br /&gt;
  346. &lt;pre class=&quot;de1&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px none white; color: black; font-family: monospace; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 1.2em; margin: 0px; orphans: 2; padding: 0px; text-align: left; text-indent: 0px; text-transform: none; vertical-align: top; widows: 2; word-spacing: 0px;&quot;&gt;&lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re1&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;lt;?xml&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;version&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;1.0&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;encoding&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;utf-8&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/span&gt;
  347. &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re1&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;lt;Connector&lt;span class=&quot;re2&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
  348. &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re1&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;lt;Error&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;number&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;0&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
  349. &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re1&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;lt;ConnectorInfo&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;imgHeight=&quot;100&quot; imgWidth=&quot;100&quot;&lt;/i&gt;&lt;/span&gt; enabled&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;true&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;s&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;c&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
  350. &lt;pre class=&quot;de1&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px none white; color: black; font-family: monospace; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 1.2em; margin: 0px; orphans: 2; padding: 0px; text-align: left; text-indent: 0px; text-transform: none; vertical-align: top; widows: 2; word-spacing: 0px;&quot;&gt;&lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;thumbsEnabled&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;true&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;thumbsUrl&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;/userfiles/_thumbs/&quot;&lt;/span&gt;&amp;nbsp;&lt;/span&gt;&lt;/pre&gt;
  351. &lt;pre class=&quot;de1&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px none white; color: black; font-family: monospace; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 1.2em; margin: 0px; orphans: 2; padding: 0px; text-align: left; text-indent: 0px; text-transform: none; vertical-align: top; widows: 2; word-spacing: 0px;&quot;&gt;&lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;thumbsDirectAccess&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;false&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
  352. &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re1&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;lt;ResourceTypes&lt;span class=&quot;re2&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
  353. &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re1&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;lt;ResourceType&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;name&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;Files&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;url&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;/userfiles/files/&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
  354. &lt;pre class=&quot;de1&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px none white; color: black; font-family: monospace; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 1.2em; margin: 0px; orphans: 2; padding: 0px; text-align: left; text-indent: 0px; text-transform: none; vertical-align: top; widows: 2; word-spacing: 0px;&quot;&gt;&lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;allowedExtensions&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;7z,aiff,asf,avi,bmp,csv,doc,fla,flv,gif&quot;&lt;/span&gt; &lt;/span&gt;
  355. &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;deniedExtensions&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;defaultView&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;Thumbnails&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;hash&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;654e8f3600949355&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
  356. &lt;pre class=&quot;de1&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px none white; color: black; font-family: monospace; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 1.2em; margin: 0px; orphans: 2; padding: 0px; text-align: left; text-indent: 0px; text-transform: none; vertical-align: top; widows: 2; word-spacing: 0px;&quot;&gt;&lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;hasChildren&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;true&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;acl&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;17&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot; style=&quot;color: black; font-weight: bold;&quot;&gt; &lt;span style=&quot;color: magenta;&quot;&gt;maxSize=&quot;100&quot;&lt;/span&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
  357. &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re1&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;lt;ResourceType&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;name&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;Images&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;url&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;/userfiles/images/&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
  358. &lt;pre class=&quot;de1&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px none white; color: black; font-family: monospace; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 1.2em; margin: 0px; orphans: 2; padding: 0px; text-align: left; text-indent: 0px; text-transform: none; vertical-align: top; widows: 2; word-spacing: 0px;&quot;&gt;&lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;allowedExtensions&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;bmp,gif,jpeg,jpg,png&quot;&lt;/span&gt; &lt;/span&gt;
  359. &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;deniedExtensions&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;defaultView&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;Thumbnails&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;hash&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;4d8ddfd385d0952b&quot;&lt;/span&gt;&amp;nbsp;&lt;/span&gt;&lt;/pre&gt;
  360. &lt;pre class=&quot;de1&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px none white; color: black; font-family: monospace; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 1.2em; margin: 0px; orphans: 2; padding: 0px; text-align: left; text-indent: 0px; text-transform: none; vertical-align: top; widows: 2; word-spacing: 0px;&quot;&gt;&lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;hasChildren&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;true&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;acl&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;17&quot;&lt;/span&gt; &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re2&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&lt;span style=&quot;color: magenta;&quot;&gt;maxSize=&quot;100&quot;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re2&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
  361. &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re1&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;lt;ResourceType&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;name&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;Flash&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;url&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;/userfiles/flash/&quot;&lt;/span&gt;&amp;nbsp;&lt;/span&gt;&lt;/pre&gt;
  362. &lt;pre class=&quot;de1&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px none white; color: black; font-family: monospace; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 1.2em; margin: 0px; orphans: 2; padding: 0px; text-align: left; text-indent: 0px; text-transform: none; vertical-align: top; widows: 2; word-spacing: 0px;&quot;&gt;&lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;allowedExtensions&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;swf,flv&quot;&lt;/span&gt; &lt;/span&gt;
  363. &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;deniedExtensions&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;defaultView&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;Thumbnails&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;hash&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;a2d473ff04429cc5&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
  364. &lt;pre class=&quot;de1&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px none white; color: black; font-family: monospace; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 1.2em; margin: 0px; orphans: 2; padding: 0px; text-align: left; text-indent: 0px; text-transform: none; vertical-align: top; widows: 2; word-spacing: 0px;&quot;&gt;&lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;hasChildren&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;true&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot; style=&quot;color: #000066;&quot;&gt;acl&lt;/span&gt;=&lt;span class=&quot;st0&quot; style=&quot;color: red;&quot;&gt;&quot;17&quot;&lt;/span&gt; &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re2&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&lt;span style=&quot;color: magenta;&quot;&gt;maxSize=&quot;100&quot;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re2&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
  365. &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re1&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;lt;/ResourceTypes&lt;span class=&quot;re2&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
  366. &lt;span class=&quot;sc3&quot; style=&quot;color: #009900;&quot;&gt;&lt;span class=&quot;re1&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;lt;/Connector&lt;span class=&quot;re2&quot; style=&quot;color: black; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
  367. </description><link>http://lotusandjava.blogspot.com/2012/09/ckfinder-for-domino-first-step.html</link><author>noreply@blogger.com (Andriy Kuba)</author><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4110922097903883980.post-6880938392184248865</guid><pubDate>Thu, 27 Sep 2012 15:48:00 +0000</pubDate><atom:updated>2012-09-27T08:48:28.534-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">CKFinder</category><title>CKFinder in Domino</title><description>I need to add some image library to use it with CKEditor in domino.&lt;br /&gt;
  368. &lt;br /&gt;
  369. The best I found is &lt;a href=&quot;http://ckfinder.com/&quot;&gt;CKFinder&lt;/a&gt; (it is not free). I did not find a good media library for build it up on the Domino.&lt;br /&gt;
  370. &lt;br /&gt;
  371. CKFinder also have some troubles in the case of&amp;nbsp; work with Domino.&lt;br /&gt;
  372. &lt;br /&gt;
  373. Do someone know a good media library?&amp;nbsp; I would prefer some client side library that communicate with server through&amp;nbsp; JSON or XML (like CKFinder).&lt;br /&gt;
  374. &lt;br /&gt;
  375. Maybe some one have a nice experience with CKFinder on Domino ? &lt;br /&gt;
  376. &lt;br /&gt;</description><link>http://lotusandjava.blogspot.com/2012/09/ckfinder-in-domino.html</link><author>noreply@blogger.com (Andriy Kuba)</author><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4110922097903883980.post-404928325445905253</guid><pubDate>Tue, 25 Sep 2012 07:06:00 +0000</pubDate><atom:updated>2012-09-25T00:06:39.779-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Domino bugs</category><category domain="http://www.blogger.com/atom/ns#">DXL</category><category domain="http://www.blogger.com/atom/ns#">xPage</category><title>xPage in DXL</title><description>Domino export xPage&#39;s (java area, libs, xPages actually) in to DXL as base64 with some pre header.&amp;nbsp; This does not allow to change DXL and import it back. More of then, extracting real base64 become hard task because there is no any information about that &quot;pre-header&quot; in DXL.&lt;br /&gt;
  377. &lt;br /&gt;
  378. I found similar question on the stackoverflow: &lt;a href=&quot;http://stackoverflow.com/questions/9929325/encoding-scheme-for-ssjs-library-when-exported-via-dxl&quot;&gt;http://stackoverflow.com/questions/9929325/encoding-scheme-for-ssjs-library-when-exported-via-dxl&lt;/a&gt; </description><link>http://lotusandjava.blogspot.com/2012/09/xpage-in-dxl.html</link><author>noreply@blogger.com (Andriy Kuba)</author><thr:total>3</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4110922097903883980.post-676766166765210124</guid><pubDate>Sun, 23 Sep 2012 16:33:00 +0000</pubDate><atom:updated>2012-09-23T09:33:36.971-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Domino Java Syncer</category><category domain="http://www.blogger.com/atom/ns#">DXL</category><title>Export Design DXL</title><description>Export design DXL feature has been added to the DominoJavaSyncer:&lt;br /&gt;
  379. &lt;br /&gt;
  380. &lt;a href=&quot;https://github.com/andriykuba/DominoJavaSyncer/wiki/Export-design-DXL&quot;&gt;https://github.com/andriykuba/DominoJavaSyncer/wiki/Export-design-DXL&lt;/a&gt;</description><link>http://lotusandjava.blogspot.com/2012/09/export-design-dxl.html</link><author>noreply@blogger.com (Andriy Kuba)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4110922097903883980.post-1650103162884648491</guid><pubDate>Sun, 23 Sep 2012 15:51:00 +0000</pubDate><atom:updated>2012-09-23T09:16:47.687-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Domino bugs</category><title>Orphaned agent data in Notes 8.5</title><description>I have export of DXL from my database and found many orphaned agent data. It&#39;s &quot;agentdata&quot; tag that does not follow &quot;agent&quot; tag.&lt;br /&gt;
  381. &lt;br /&gt;
  382. First of all I check help: &lt;a href=&quot;http://www-12.lotus.com/ldd/doc/domino_notes/6.5m2/help65_designer.nsf/f4b82fbb75e942a6852566ac0037f284/03986ba804e4b1ea85256d42004f5af9?OpenDocument&quot;&gt;Note also that the agentdata element immediately follows the agent element, but is not contained by it&lt;/a&gt;.&lt;br /&gt;
  383. &lt;br /&gt;
  384. Second - look for a possible &lt;a href=&quot;http://www-01.ibm.com/support/docview.wss?rs=0&amp;amp;uid=swg21101603&quot;&gt;problem&lt;/a&gt; and &lt;a href=&quot;http://www-01.ibm.com/support/docview.wss?uid=swg24004199&quot;&gt;solution&lt;/a&gt;. Take attention, &quot;In order for the utility to clean up orphaned Agent Data Notes, you must have at least one LotusScript agent in the database.&quot;. I spend half of our until detect this.&amp;nbsp; &lt;br /&gt;
  385. &lt;br /&gt;
  386. &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://1.bp.blogspot.com/-iQ5HXB5Qv_Q/UF8vRLjTIZI/AAAAAAAAEWE/qNMQEPZmPXM/s1600/orphanagentdata.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;241&quot; src=&quot;http://1.bp.blogspot.com/-iQ5HXB5Qv_Q/UF8vRLjTIZI/AAAAAAAAEWE/qNMQEPZmPXM/s400/orphanagentdata.png&quot; width=&quot;540&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;br /&gt;
  387. </description><link>http://lotusandjava.blogspot.com/2012/09/orphaned-agent-data-in-notes-85.html</link><author>noreply@blogger.com (Andriy Kuba)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-iQ5HXB5Qv_Q/UF8vRLjTIZI/AAAAAAAAEWE/qNMQEPZmPXM/s72-c/orphanagentdata.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4110922097903883980.post-6681324814958406684</guid><pubDate>Fri, 21 Sep 2012 22:20:00 +0000</pubDate><atom:updated>2012-09-21T15:21:05.518-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Extended Domino xPages</category><category domain="http://www.blogger.com/atom/ns#">xPage</category><title>How to print any data in XPage output</title><description>I was looking for a solution for output clean data in xPage without any tags.&lt;br&gt;
  388. &lt;br&gt;
  389. Nice solution is present in the first comment to &lt;a href=&quot;http://quintessens.wordpress.com/2010/12/30/q-how-to-use-an-xpage-as-xml-source-rss/&quot;&gt;this post&lt;/a&gt;. In the case you need few xPage with output special data, better to create special base class and then just extend it.&lt;br&gt;
  390. &lt;br&gt;
  391. More under cut.&lt;br&gt;
  392. &lt;br&gt;
  393. &lt;a href=&quot;http://lotusandjava.blogspot.com/2012/09/how-to-print-any-data-in-xpage-output.html#more&quot;&gt;Read more »&lt;/a&gt;</description><link>http://lotusandjava.blogspot.com/2012/09/how-to-print-any-data-in-xpage-output.html</link><author>noreply@blogger.com (Andriy Kuba)</author><thr:total>2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4110922097903883980.post-3803167876200724704</guid><pubDate>Fri, 21 Sep 2012 22:00:00 +0000</pubDate><atom:updated>2012-09-21T15:01:43.267-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Extended Domino xPages</category><category domain="http://www.blogger.com/atom/ns#">xPage</category><title>Accessing XPages global objects in Java (extended)</title><description>There is nice post &amp;quot;&lt;a href=&quot;http://naveegator.blogspot.com/2011/12/accessing-xpages-global-objects-in-java.html&quot;&gt;Accessing XPages global objects in Java&lt;/a&gt;&amp;quot;. There is a &lt;a href=&quot;http://xpagescheatsheet.com/cheatsheet.nsf/url.xsp&quot;&gt;little more information about returned objects&lt;/a&gt;.&lt;br&gt;
  394. &lt;br&gt;
  395. It&amp;#39;s a good idea to create some base class to extend it for all classes that need access to global xPage objects.&lt;br&gt;
  396. &lt;br&gt;
  397. So I take variables from that articles and add &lt;a href=&quot;http://docs.oracle.com/javaee/6/api/javax/servlet/ServletRequest.html&quot;&gt;Request&lt;/a&gt; and &lt;a href=&quot;http://docs.oracle.com/javaee/6/api/javax/servlet/http/HttpServletResponse.html&quot;&gt;Response&lt;/a&gt; objects also. &lt;br&gt;
  398. &lt;br&gt;
  399. Look more for the source.&lt;br&gt;
  400. &lt;br&gt;
  401. &lt;a href=&quot;http://lotusandjava.blogspot.com/2012/09/accessing-xpages-global-objects-in-java.html#more&quot;&gt;Read more »&lt;/a&gt;</description><link>http://lotusandjava.blogspot.com/2012/09/accessing-xpages-global-objects-in-java.html</link><author>noreply@blogger.com (Andriy Kuba)</author><thr:total>4</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4110922097903883980.post-4657568156242041128</guid><pubDate>Mon, 17 Sep 2012 15:48:00 +0000</pubDate><atom:updated>2012-09-17T08:50:00.918-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Domino Java Syncer</category><title>Synchronize database resources with folders </title><description>The task I have was to update CKEditor that we have in our app.&lt;br /&gt;
  402. &lt;br /&gt;
  403. And yes - there is not possible to use server file system for me, only nsf. &lt;br /&gt;
  404. &lt;br /&gt;
  405. A long time ago (1 year) I was upload CKEditor using WebDAV. There is only way that store folder structure in the file names of resources in .nsf. This days configuration of WebDAV was not allowed for me (yes, I have very strict access to the server) . So I need to install local (development) domino server, configure WebDAV, upload files, do copy of database with uploaded files on the main server .....&lt;br /&gt;
  406. &lt;br /&gt;
  407. To much work, and what if I would need it again in few month ?&lt;br /&gt;
  408. &lt;br /&gt;
  409. So I decide to wide my &lt;a href=&quot;https://github.com/andriykuba/DominoJavaSyncer&quot;&gt;Domino Java Syncer&lt;/a&gt; utility to do image\css\file synchronization.&lt;br /&gt;
  410. &lt;br /&gt;
  411. You could use it if you have similar task.&lt;br /&gt;
  412. &lt;br /&gt;
  413. In a short:&lt;br /&gt;
  414. &lt;br /&gt;
  415. &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
  416. &lt;a href=&quot;http://4.bp.blogspot.com/-f34b3rO4c9I/UFdFP0LISKI/AAAAAAAAEVk/CzQe9eH2e_k/s1600/ResourcesSync.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;79&quot; src=&quot;http://4.bp.blogspot.com/-f34b3rO4c9I/UFdFP0LISKI/AAAAAAAAEVk/CzQe9eH2e_k/s320/ResourcesSync.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
  417. &lt;br /&gt;
  418. &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
  419. &lt;a href=&quot;http://2.bp.blogspot.com/-TruIawUGwEE/UFdFSctRLfI/AAAAAAAAEVs/v0sUQUHAMvI/s1600/FolderStructureSync.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;154&quot; src=&quot;http://2.bp.blogspot.com/-TruIawUGwEE/UFdFSctRLfI/AAAAAAAAEVs/v0sUQUHAMvI/s320/FolderStructureSync.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
  420. &amp;nbsp;&amp;nbsp; </description><link>http://lotusandjava.blogspot.com/2012/09/synchronize-database-resources-with.html</link><author>noreply@blogger.com (Andriy Kuba)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-f34b3rO4c9I/UFdFP0LISKI/AAAAAAAAEVk/CzQe9eH2e_k/s72-c/ResourcesSync.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4110922097903883980.post-2985912068612845096</guid><pubDate>Fri, 07 Sep 2012 14:31:00 +0000</pubDate><atom:updated>2012-09-07T07:36:36.163-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Velocity</category><category domain="http://www.blogger.com/atom/ns#">xPage</category><title>How to use Velocity in xPages</title><description>We are using velocity in our project for build some HTML fro some templates.&lt;br /&gt;
  421. &lt;br /&gt;
  422. There was a problem with using it in the Java libraries. Look at this&amp;nbsp;&lt;a href=&quot;http://dpastov.blogspot.com/2011/12/using-velocity-in-domino.html&quot;&gt;post&lt;/a&gt; to find problem description and solution.&lt;br /&gt;
  423. &lt;br /&gt;
  424. Now we want to use velocity in the xPage context. There is also a little trouble:&lt;br /&gt;
  425. &lt;br /&gt;
  426. &lt;i&gt;at java.lang.SecurityManager.checkPermission(SecurityManager.java:544)&lt;br /&gt;
  427. at java.lang.Thread.getContextClassLoader(Thread.java:456)&lt;br /&gt;
  428. at org.apache.velocity.util.ClassUtils.getClass(ClassUtils.java:68)&lt;/i&gt;&lt;br /&gt;
  429. &lt;br /&gt;
  430. This problem could be resolved&amp;nbsp; by adding next string in to the java.policy:&lt;br /&gt;
  431. &lt;br /&gt;
  432. &lt;i&gt;permission java.lang.RuntimePermission &quot;getClassLoader&quot;;&lt;/i&gt;&lt;br /&gt;
  433. &lt;br /&gt;
  434. We could not edit java.policy unfortunately. So we resolve it in the next way.&lt;br /&gt;
  435. &lt;br /&gt;
  436. 1. Download velocity source&lt;br /&gt;
  437. &lt;br /&gt;
  438. 2. Find place of error (&lt;i&gt;at org.apache.velocity.util.ClassUtils.getClass(ClassUtils.java:68))&lt;/i&gt;:&lt;br /&gt;
  439. &lt;i&gt;ClassLoader loader = Thread.currentThread().getContextClassLoader();&lt;/i&gt;&lt;br /&gt;
  440. &lt;br /&gt;
  441. 3. Replace this string with the xPage classloader initialization:&lt;br /&gt;
  442. &lt;i&gt;ClassLoader cl = com.ibm.domino.xsp.module.nsf.NotesContext.getCurrent().getModule().getModuleClassLoader();&lt;/i&gt;&lt;br /&gt;
  443. &lt;br /&gt;
  444. 4&lt;i&gt;. &lt;/i&gt;Add&lt;i&gt;&lt;b&gt; &lt;/b&gt;&lt;/i&gt;appropriate library for compile velocity source with this new class.&amp;nbsp; You will need&lt;br /&gt;
  445. &lt;i&gt;Domino\osgi\shared\eclipse\plugins\com.ibm.xsp.domino_8.5.3.20110915-2025\lwpd.xsp.domino.jar&lt;/i&gt;&lt;br /&gt;
  446. or similar&lt;br /&gt;
  447. &lt;i&gt;&lt;br /&gt;
  448. &lt;/i&gt; 5. Compile new velocity jar from modified source.&lt;br /&gt;
  449. &lt;i&gt;&lt;br /&gt;
  450. &lt;/i&gt; Well done! You could upload velocity jar in to the WebContent\WEB-INF\lib and use it in the xPage context. &lt;i&gt;&lt;br /&gt;
  451. &lt;/i&gt;</description><link>http://lotusandjava.blogspot.com/2012/09/how-to-use-velocity-in-xpages.html</link><author>noreply@blogger.com (Andriy Kuba)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4110922097903883980.post-4103376116365338444</guid><pubDate>Fri, 07 Sep 2012 09:57:00 +0000</pubDate><atom:updated>2012-09-07T04:23:47.019-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Domino Java Syncer</category><title>Domino Java Syncer Documentation</title><description>I moved documentation from the document format in to the wiki. So you could find actual documentation on the &lt;a href=&quot;https://github.com/andriykuba/DominoJavaSyncer/wiki&quot;&gt;git hub wiki&lt;/a&gt;&lt;br /&gt;
  452. &lt;br /&gt;
  453. &lt;br /&gt;</description><link>http://lotusandjava.blogspot.com/2012/09/domino-java-syncer-documentation.html</link><author>noreply@blogger.com (Andriy Kuba)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4110922097903883980.post-2931680765179081216</guid><pubDate>Thu, 06 Sep 2012 10:31:00 +0000</pubDate><atom:updated>2012-09-06T03:31:39.053-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Domino bugs</category><category domain="http://www.blogger.com/atom/ns#">xPage</category><title>xPage CKEdior: how to remove language direction attribute?  </title><description>in-build CKEditor in xPage (Domino 8.5.3) always add dir attribute to the text container&#39;s tags, like P or H2. &amp;nbsp; &lt;br /&gt;
  454. &lt;br /&gt;
  455. For example: &lt;br /&gt;
  456. &amp;lt;p dir=&quot;ltr&quot;&amp;gt;test&amp;lt;/p&amp;gt;&lt;br /&gt;
  457. &lt;br /&gt;
  458. I could change direction &quot;ltr&quot; or &quot;rtl&quot; from the Rich Text Element settings or CKEditor custom config, but I could not remove this attribute at all.&lt;br /&gt;
  459. &lt;br /&gt;
  460. If I use trivial CKEditor, the this attribute absent until I special set up contentsLangDirection property.&lt;br /&gt;
  461. &lt;br /&gt;
  462. So It looks like xPage force this attribute to be set in any case.&lt;br /&gt;
  463. &lt;br /&gt;
  464. Does some one know how to remove it from the in-build CKEditor in xPage ?&lt;br /&gt;
  465. &lt;br /&gt;</description><link>http://lotusandjava.blogspot.com/2012/09/xpage-ckedior-how-to-remove-language.html</link><author>noreply@blogger.com (Andriy Kuba)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4110922097903883980.post-8940646760494038866</guid><pubDate>Thu, 06 Sep 2012 08:30:00 +0000</pubDate><atom:updated>2012-09-07T04:24:24.381-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Domino Java Syncer</category><title>Domino Java Syncer on the Github</title><description>&lt;br /&gt;
  466. I was commite source of Domino Java Syncer to the Github: &lt;br /&gt;
  467. &lt;a href=&quot;https://github.com/andriykuba/DominoJavaSyncer&quot;&gt;https://github.com/andriykuba/DominoJavaSyncer&lt;/a&gt;&lt;br /&gt;
  468. &lt;br /&gt;
  469. There is also new functionality - import\export JavaScrip libraries as projects in to the Eclipse. &lt;br /&gt;
  470. &lt;br /&gt;
  471. So version is up to 3 now. New documentation would be published later </description><link>http://lotusandjava.blogspot.com/2012/09/domino-java-syncer-on-github.html</link><author>noreply@blogger.com (Andriy Kuba)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4110922097903883980.post-5384410690485841528</guid><pubDate>Fri, 06 Jul 2012 19:57:00 +0000</pubDate><atom:updated>2012-07-06T13:24:07.576-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Domino bugs</category><title>Corrupted DateTime</title><description>Some time, the code like this&lt;br&gt;
  472. &lt;br&gt;
  473. &lt;script class=&quot;brush: java&quot; type=&quot;syntaxhighlighter&quot;&gt;
  474. &lt;![CDATA[
  475. Date date = ((DateTime) o).toJavaDate();
  476. ]]&gt;
  477. &lt;br&gt;
  478. &lt;br&gt;
  479. could cause error like this&lt;br&gt;
  480. &lt;br&gt;
  481. &lt;script class=&quot;brush: java&quot; type=&quot;syntaxhighlighter&quot;&gt;
  482. &lt;![CDATA[
  483. NotesException: Invalid date
  484. at lotus.domino.local.DateTime.JavaDateOp(Unknown Source)
  485. at lotus.domino.local.DateTime.toJavaDate(Unknown Source)
  486. ]]&gt;
  487. &lt;br&gt;
  488. &lt;br&gt;
  489. This issue for example:&lt;br&gt;
  490. &lt;a href=&quot;http://www-01.ibm.com/support/docview.wss?rs=697&amp;amp;amp;context=SSCQGF&amp;amp;amp;dc=DB550&amp;amp;amp;uid=swg1IO13958&amp;amp;amp;loc=en_US&amp;amp;amp;cs=utf-8&amp;amp;amp;lang=en&quot;&gt;http://www-01.ibm.com/support/docview.wss?rs=697&amp;amp;amp;context=SSCQGF&amp;amp;amp;dc=DB550&amp;amp;amp;uid=swg1IO13958&amp;amp;amp;loc=en_US&amp;amp;amp;cs=utf-8&amp;amp;amp;lang=en&lt;/a&gt; &lt;br&gt;
  491. &lt;br&gt;
  492. &lt;/![CDATA[&gt;&lt;/script&gt;&lt;/![CDATA[&gt;&lt;/script&gt;&lt;a href=&quot;http://lotusandjava.blogspot.com/2012/07/corrupted-datetime.html#more&quot;&gt;Read more »&lt;/a&gt;</description><link>http://lotusandjava.blogspot.com/2012/07/corrupted-datetime.html</link><author>noreply@blogger.com (Andriy Kuba)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4110922097903883980.post-6346810754166733174</guid><pubDate>Wed, 21 Mar 2012 21:12:00 +0000</pubDate><atom:updated>2012-03-21T14:12:30.965-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Domino bugs</category><title>Handle Leak with Domino Server</title><description>Run next code as third party program on Domino binaries. &lt;br /&gt;
  493. &lt;br /&gt;
  494. PATH must point to Domino location and Notes.jar must be from Domino. &lt;br /&gt;
  495. &lt;br /&gt;
  496. It will crash Domino server within few minutes. The reason is that Domino has Handle Leak on every create\recycle session. It will free only if Java program will stop.&lt;br /&gt;
  497. &lt;br /&gt;
  498. The same code works correct with Notes Client&lt;br /&gt;
  499. &lt;br /&gt;
  500. &lt;script class=&quot;brush: java&quot; type=&quot;syntaxhighlighter&quot;&gt;
  501. &lt;![CDATA[
  502. import lotus.domino.NotesFactory;
  503. import lotus.domino.NotesThread;
  504. import lotus.domino.Session;
  505.  
  506. public class SimpleHandlesLeak {
  507.  
  508. public static void main(String[] args) throws Exception {
  509.  while(true){  
  510.   NotesThread.sinitThread();
  511.   Session session = NotesFactory.createSession();
  512.   session.recycle();  
  513.   NotesThread.stermThread();
  514.  }
  515. }
  516.  
  517. }
  518. ]]&gt;
  519. &lt;/script&gt;&lt;br /&gt;
  520. &lt;br /&gt;
  521. There is dummy work around. I am not sure it will stable and appropriate for any&lt;br /&gt;
  522. &lt;br /&gt;
  523. If test will stop without closing notes thread (incorrect closing) then Domino will generate message in the console: &lt;br /&gt;
  524. &lt;br /&gt;
  525. &lt;i&gt;&quot;process ... javaw.exe ... has terminated abnormally&quot;&amp;nbsp;&lt;/i&gt;&lt;br /&gt;
  526. &lt;br /&gt;
  527. In the case of this message begin to showing in the domino console, then handle counts will not rising and this code will work without crash.</description><link>http://lotusandjava.blogspot.com/2012/03/handle-leak-with-domino-server.html</link><author>noreply@blogger.com (Andriy Kuba)</author><thr:total>2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4110922097903883980.post-7378063112235446188</guid><pubDate>Mon, 05 Mar 2012 22:14:00 +0000</pubDate><atom:updated>2012-03-05T14:15:38.801-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Domino Java Syncer</category><title>Fast fix to Domino Java Syncer</title><description>After importing java libraries by &lt;a href=&quot;http://lotusandjava.blogspot.com/2012/03/update-of-domino-java-syncer.html&quot;&gt;Domino Java Syncer 2.1&lt;/a&gt; some agents was not compiled by native DXL importer in some databases. So there is fast fix to compile and sign all java agent in database after export java library with Domino Java Syncer.&lt;br /&gt;
  528. &lt;br /&gt;
  529. &lt;a href=&quot;http://lotusandjava.blogspot.com/2012/03/update-of-domino-java-syncer.html&quot;&gt;Domino Java Syncer 2.1&lt;/a&gt; updated without version change.</description><link>http://lotusandjava.blogspot.com/2012/03/fast-fix-to-domino-java-syncer.html</link><author>noreply@blogger.com (Andriy Kuba)</author><thr:total>0</thr:total></item></channel></rss>

If you would like to create a banner that links to this page (i.e. this validation result), do the following:

  1. Download the "valid RSS" banner.

  2. Upload the image to your own server. (This step is important. Please do not link directly to the image on this server.)

  3. Add this HTML to your page (change the image src attribute if necessary):

If you would like to create a text link instead, here is the URL you can use:

http://www.feedvalidator.org/check.cgi?url=http%3A//feeds.feedburner.com/LotusAndJava

Copyright © 2002-9 Sam Ruby, Mark Pilgrim, Joseph Walton, and Phil Ringnalda