<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Ramble On &#187; XPages</title>
	<atom:link href="http://blog.pahudson.net/archives/category/xpages/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.pahudson.net</link>
	<description></description>
	<lastBuildDate>Mon, 23 Jan 2012 20:48:45 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Unable to reliably deploy XPages using XSCD</title>
		<link>http://blog.pahudson.net/archives/736</link>
		<comments>http://blog.pahudson.net/archives/736#comments</comments>
		<pubDate>Tue, 20 Dec 2011 10:20:59 +0000</pubDate>
		<dc:creator>Paul</dc:creator>
				<category><![CDATA[Domino]]></category>
		<category><![CDATA[XPages]]></category>

		<guid isPermaLink="false">http://blog.pahudson.net/?p=736</guid>
		<description><![CDATA[We&#8217;re late to the XPages game and it&#8217;s only in the last few weeks I&#8217;ve felt confident enough to push XPages into our system&#8217;s templates. I only allow new Domino tech to be deployed when I&#8217;m confident that the technology works because we run on a very constrained 32-bit Solaris Domino install. I was ready [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.pahudson.net%2Farchives%2F736"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.pahudson.net%2Farchives%2F736&amp;source=pahudson&amp;style=compact&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>We&#8217;re late to the XPages game and it&#8217;s only in the last few weeks I&#8217;ve felt confident enough to push XPages into our system&#8217;s templates. I only allow new Domino tech to be deployed when I&#8217;m confident that the technology works because we run on a very constrained 32-bit Solaris Domino install. I was ready to use XPages on 8.5.2 but we ran into issues pushing out a <a title="XPages Single Copy Design" href="http://blog.pahudson.net/archives/646">XPage Single Copy Design</a> to websites. I tried using standard Domino single copy design templates but whenever we updated an XPage we received various errors. So I waited until 8.5.3 as this version was meant to fix our issue with XSCD.</p>
<p>Although we can now push our XSCD&#8217;s through our templates, unfortunately moving to XSCD has not solved our issue. We are still unable to reliably deploy changes to XPages to all servers in our cluster without receiving the error:</p>
<p>&nbsp;</p>
<pre><strong>HTTP Web Server: Command Not Handled Exception</strong></pre>
<p>&nbsp;</p>
<p>In the XPages error log:</p>
<pre>Exception Thrown
 java.lang.NullPointerException
 at com.ibm.xsp.webapp.FacesServletEx.service(FacesServletEx.java:87)
 at com.ibm.xsp.webapp.DesignerFacesServlet.service(DesignerFacesServlet.java:103)
 at com.ibm.designer.runtime.domino.adapter.ComponentModule.invokeServlet(ComponentModule.java:576)
 at com.ibm.domino.xsp.module.nsf.NSFComponentModule.invokeServlet(NSFComponentModule.java:1267)
 at com.ibm.designer.runtime.domino.adapter.ComponentModule$AdapterInvoker.invokeServlet(ComponentModule.java:847)
 at com.ibm.designer.runtime.domino.adapter.ComponentModule$ServletInvoker.doService(ComponentModule.java:796)
 at com.ibm.designer.runtime.domino.adapter.ComponentModule.doService(ComponentModule.java:565)
 at com.ibm.domino.xsp.module.nsf.NSFComponentModule.doService(NSFComponentModule.java:1251)
 at com.ibm.domino.xsp.module.nsf.NSFService.doServiceInternal(NSFService.java:598)
 at com.ibm.domino.xsp.module.nsf.NSFService.doService(NSFService.java:421)
 at com.ibm.designer.runtime.domino.adapter.LCDEnvironment.doService(LCDEnvironment.java:341)
 at com.ibm.designer.runtime.domino.adapter.LCDEnvironment.service(LCDEnvironment.java:297)
 at com.ibm.domino.xsp.bridge.http.engine.XspCmdManager.service(XspCmdManager.java:272)</pre>
<p>&nbsp;</p>
<p>This appears irrespective of the complexity of the XPages. It doesn&#8217;t matter if the XPages included complex code or simply says &#8216;Hello World&#8217;. The server the code is replicated to will 95% of the time display the error message, and the other servers in the cluster fail around 50% of the time. At the point that the new XPages fails. Every XPages in the database fails.  The odd thing is that after an hour the page starts to work. Which suggests some sort of cache is being flushed.<br />
&nbsp;</p>
<h4>Things I&#8217;ve tried unsuccessfully:</h4>
<ol>
<li>Make a minor change and re-replicate.</li>
<li>Make a minor change to the XSCD template directly on the server.</li>
<li>Use the &#8216;Build&#8217; function to rebuild the database and replicate.</li>
<li>Rebuild directly on the server.</li>
<li>Re-sign the database and replicate</li>
<li>Re-sign the database on the server.</li>
<li>Delete page and redeployed</li>
<li>HTTP refresh</li>
<li>Accessing an XPages immediately after the JVM purge period has expired.</li>
<li>Changed the page persistence from disk to &#8216;keep pages in memory&#8217;</li>
<li>Changed the page persistence to &#8216;keep current page in memory&#8217;</li>
<li>Changed the minimum supported release to 8.5.3</li>
<li>Uninstalled Notes client and reinstalled, build, re-sign and re-deploy.</li>
</ol>
<p>&nbsp;</p>
<h4>Things I&#8217;ve tried successfully:</h4>
<ol>
<li>Restarting HTTP server (unacceptable with 900 active web users per server, many of whom are students assignments)</li>
</ol>
<p>&nbsp;</p>
<p>Because we run on Solaris and IBM refuse to move Solaris to a 64-bit platform, our JVM is set to 256mb and is set to use OS memory for the HTTP task otherwise our server collapses due to a lack of headroom. So we do not have much leverage to change this figure.</p>
<p>Has anyone experienced this problem?</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.pahudson.net/archives/736/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>XPages Single Copy Design</title>
		<link>http://blog.pahudson.net/archives/646</link>
		<comments>http://blog.pahudson.net/archives/646#comments</comments>
		<pubDate>Fri, 09 Sep 2011 16:45:39 +0000</pubDate>
		<dc:creator>Paul</dc:creator>
				<category><![CDATA[Domino]]></category>
		<category><![CDATA[XPages]]></category>
		<category><![CDATA[Templates]]></category>

		<guid isPermaLink="false">http://blog.pahudson.net/?p=646</guid>
		<description><![CDATA[I&#8217;m posting this on behalf of my colleague David Harding (@dharding) who&#8217;s been investigating XPages Single Copy Design. I think it&#8217;s best I leave it to Dave to explain: We are looking to roll out XPages Single Copy Design to several thousand databases.  So far, we have not been able to find a recommended practice [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.pahudson.net%2Farchives%2F646"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.pahudson.net%2Farchives%2F646&amp;source=pahudson&amp;style=compact&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>I&#8217;m posting this on behalf of my colleague David Harding (@dharding) who&#8217;s been investigating XPages Single Copy Design. I think it&#8217;s best I leave it to Dave to explain:</p>
<p>We are looking to roll out XPages Single Copy Design to several thousand databases.  So far, we have not been able to find a recommended practice for rolling out the XPages Single Copy Design flag and template path to all of these databases.</p>
<p>Documentation on the Lotus Notes and Domino Application Development wiki (<a href="http://www-10.lotus.com/ldd/ddwiki.nsf/dx/Single_Copy_XPage_Design#Does+employing+SCXD+typically+have+a+positive+or+negative+affect+on+speed+of+performance%3F">http://www-10.lotus.com/ldd/ddwiki.nsf/dx/Single_Copy_XPage_Design#Does+employing+SCXD+typically+have+a+positive+or+negative+affect+on+speed+of+performance%3F</a>) suggests that setting the options in the template should propagate to databases that inherit from that template.</p>
<p><strong>Quote from page:</strong></p>
<blockquote><p><span style="font-size: medium;"><strong><cite>“Is it true that selecting or de-selecting SCXD in a template does not propagate to applications already created with that template?</cite></strong></span></p></blockquote>
<p><span class="Apple-style-span" style="font-size: 13px; font-weight: normal;">This is not the case. If a template is set to use a SCXD database and an application is created from this template then the new application will have the XPages from the SCXD database. And changing the template to say another SCXD or no SCXD database set will reflect in the database that inherits its design from the template.”</span></p>
<p>In testing, we have not found this to be the case.  Testing adding in the Xpage template path and checking the flag in the template*, combined with all combinations of HTTP Restarts and Design updates do not seem to visibly update the database.properties file in the inheriting database to include the $XPageSharedDesign and $XpageSharedDesignTemplate items.</p>
<p><em>*When I say Template here, I am referring to the ntf file that the database inherits from, not the Xpages source database that will be the path in the $XpageSharedDesignTemplate item in the database.properties file.</em></p>
<p>In an attempt to find an alternative, reliable method of deploying this setting we have looked at using a NotesNoteCollection to access the database.properties file and adding in the values.  There doesn’t seem to be an obvious way to locate this file, though tests have indicated that it is the only one in the database with a $Daos item, so we have been able to get a hold of it by filtering for that in the NotesNoteCollection.</p>
<p>So the questions are, is there a ‘best practice’ for rolling out the Single Copy XPage flag? Is the NotesNoteCollection method a no-go area?  Why are our experiences with the template not in line with the claims in the aforementioned quote?</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.pahudson.net/archives/646/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Screen reader survey</title>
		<link>http://blog.pahudson.net/archives/178</link>
		<comments>http://blog.pahudson.net/archives/178#comments</comments>
		<pubDate>Sat, 21 Feb 2009 20:03:40 +0000</pubDate>
		<dc:creator>Paul</dc:creator>
				<category><![CDATA[Accessibility]]></category>
		<category><![CDATA[Domino]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[XPages]]></category>

		<guid isPermaLink="false">http://blog.pahudson.net/?p=178</guid>
		<description><![CDATA[A survey by WebAIM on how users of screen readers interact with web pages is worth a read. It gives a small insight into how screen reader users navigate around pages and some of the problems they face. The survey failed to clarify the term Web 2.0 so the survey hasn&#8217;t helped to understand if [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.pahudson.net%2Farchives%2F178"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.pahudson.net%2Farchives%2F178&amp;source=pahudson&amp;style=compact&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>A <a href="www.webaim.org/">survey by WebAIM</a> on how <a href="http://www.webaim.org/projects/screenreadersurvey/">users of screen readers interact with web pages</a> is worth a read. It gives a small insight into how screen reader users navigate around pages and some of the problems they face. The survey failed to clarify the term Web 2.0 so the survey hasn&#8217;t helped to understand if AJAX based sites disenfranchise partially sighted users but it does confirm some of the advice accessibility experts make. It also reinforces some of the point I tried to make to the Domino developers at Lotusphere about where the new XPage technology fails to meet basic accessibility criteria, namely that screen reader users use the page&#8217;s semantics to navigate around the page. A good practice that XPage authoring using the visual interface fails to support.</p>
<p>When html was originally specified it was intended to be a docuument markup language and the tags selected define the page&#8217;s content &#8211; headings, paragraphs, lists, etc. As web developers we all know this, it&#8217;s really basic stuff.</p>
<p>Since headings are more important than paragraphs, a significant percentage of screen reader users use headings to quickly navigate around sections of the page and this confirms the advice accessibility experts have been giving for years. Define a readable document and then style it to look like an application. XPages gets this fundamentally wrong and provides no visual tools to generate standard page markup, a glaring omission that no other editor that I&#8217;m aware off fails to include. </p>
<p>All&#8217;s not lost. If you want to develop a semantic page it&#8217;s just a case of switching to code view and you can add normal markup and it wouldn&#8217;t take much for Lotus to add some simple page editing tools. </p>
<p>Hopefully surveys like this help developers see how some simple changes to their pages can make page browsing easier for a small forgotten number of web users</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.pahudson.net/archives/178/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Domino 8.5 &#8211; reflections</title>
		<link>http://blog.pahudson.net/archives/152</link>
		<comments>http://blog.pahudson.net/archives/152#comments</comments>
		<pubDate>Wed, 21 Jan 2009 15:05:07 +0000</pubDate>
		<dc:creator>Paul</dc:creator>
				<category><![CDATA[Domino]]></category>
		<category><![CDATA[XPages]]></category>
		<category><![CDATA[Domino 8.5]]></category>

		<guid isPermaLink="false">http://blog.pahudson.net/?p=152</guid>
		<description><![CDATA[From my personal perspective the big feature in 8.5 is XPages, but 8.5 is not a one trick pony. There have been a number of other improvements, such as the ID Vault (something not applicable in our institution) and Domino Attachment and Object Service (DAOS). DAOS DAOS is described elsewhere. But basically, DAOS allows you to store [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.pahudson.net%2Farchives%2F152"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.pahudson.net%2Farchives%2F152&amp;source=pahudson&amp;style=compact&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>From my personal perspective the big feature in 8.5 is XPages, but 8.5 is not a one trick pony. There have been a number of other improvements, such as the ID Vault (something not applicable in our institution) and Domino Attachment and Object Service (DAOS).</p>
<h4>DAOS</h4>
<p>DAOS is described <a href="http://www.ibm.com/developerworks/lotus/library/domino-green/index.html?ca=drs-">elsewhere. </a>But basically, DAOS allows you to store the attachments in your Domino databases outside of the database, reducing the size of the nsf. </p>
<p>Big figures are being thrown around; reducing storage size by 40-60%, removal of duplicate attachments and DAOS invisible to Domino apps</p>
<p>DAOS can be enabled per-database or across the entire server and it&#8217;s possible to undo the change at a later stage, which is excellent news. Also since it&#8217;s implemented at the API level, it&#8217;s invisible to the end user or developer.</p>
<p>Reflecting on our system, DAOS  offers:</p>
<ul>
<li>Quicker backups. DAOS are stored as files on the file system so can be incrementally backed up.</li>
<li>NSF are smaller. Since these are loaded into the server&#8217;s cache for web delivery, this means more apps can stay resident in memory and so less disk IO.</li>
<li>We create 4000 modules (databases) per year and carry across teaching resources from previous years. Often resources are uploaded as attachments, and don&#8217;t change year on year, so we should see another significant space saving</li>
</ul>
<h4>Other 8.5 features and benefits</h4>
<ul>
<li>8.5 contains 400 bug fixes to the nsf</li>
<li>50% reduction in CPU for transaction logging</li>
<li>ID Vault (easier password change)</li>
<li>Domino configuration tuner for identifying performance issues with your Domino setup. This will be updated as and when, rather than being tied to a Domino release, another positive step from Lotus. </li>
</ul>
<h4>Developments post 8.5</h4>
<p>There will finally be a new Eclipse based lotuscript editor release with 8.5.1</p>
<p>Further ahead the team are investigating how XPages can consume SOAP, REST, and XML (data sources). New controls for XPages such as menu bar, toolbar, outline and general performance improvements.</p>
<p>They are also working on directory independence such as using user info from ldap or active directory to improve single sign-on</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.pahudson.net/archives/152/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JMP203 &#8211; Getting to know XPages &amp; the new Domino designer</title>
		<link>http://blog.pahudson.net/archives/150</link>
		<comments>http://blog.pahudson.net/archives/150#comments</comments>
		<pubDate>Sun, 18 Jan 2009 19:11:07 +0000</pubDate>
		<dc:creator>Paul</dc:creator>
				<category><![CDATA[Domino]]></category>
		<category><![CDATA[Lotusphere]]></category>
		<category><![CDATA[XPages]]></category>

		<guid isPermaLink="false">http://blog.pahudson.net/?p=150</guid>
		<description><![CDATA[This is the biggie for us web developers. This is the first session on the technology at this year&#8217;s Lotusphere. It&#8217;s definitely popular, and hence very warm. The session was ran by Maureen Layman and a newbie Maire Kehoe and demonstrtedb(live) many of the new XPage features in Designer 8.5. Maire was clearly nevous but [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.pahudson.net%2Farchives%2F150"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.pahudson.net%2Farchives%2F150&amp;source=pahudson&amp;style=compact&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>This is the biggie for us web developers. This is the first session on the technology at this year&#8217;s Lotusphere. It&#8217;s definitely popular, and hence very warm.</p>
<p>The session was ran by Maureen Layman and a newbie Maire Kehoe and demonstrtedb(live) many of the new XPage features in Designer 8.5. Maire was clearly nevous but did pretty well.</p>
<p>Most  of the stuff was basic stuff. I&#8217;ve not looked at themes or localisation yet and I wasn&#8217;t aware of the server side inline errors (though configuring them didn&#8217;t seem to be obvious), so I got something out of the session.</p>
<p>Unfortunately, as expected, nothing was mentioned about accessibility.</p>
<p>Hopefully by the end of the week, i&#8217;ll see some good examples of how developers have used XPages.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.pahudson.net/archives/150/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Things I learnt about XPages today &#8211; Do not use the quick edit tools</title>
		<link>http://blog.pahudson.net/archives/143</link>
		<comments>http://blog.pahudson.net/archives/143#comments</comments>
		<pubDate>Fri, 09 Jan 2009 00:48:42 +0000</pubDate>
		<dc:creator>Paul</dc:creator>
				<category><![CDATA[Domino]]></category>
		<category><![CDATA[XPages]]></category>
		<category><![CDATA[Domino 8.5]]></category>

		<guid isPermaLink="false">http://blog.pahudson.net/?p=143</guid>
		<description><![CDATA[I thought I&#8217;d document over the next few months my baby steps in learning XPages. Although I won&#8217;t be using XPages for any development in the short to medium term, I&#8217;m going to start to investigate the accessibility implications of each option before developing anything in anger. My first step &#8211; and it really is [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.pahudson.net%2Farchives%2F143"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.pahudson.net%2Farchives%2F143&amp;source=pahudson&amp;style=compact&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>I thought I&#8217;d document over the next few months my baby steps in learning XPages. Although I won&#8217;t be using XPages for any development in the short to medium term, I&#8217;m going to start to investigate the accessibility implications of each option before developing anything in anger.</p>
<p>My first step &#8211; and it really is a first step almost embarrassing step, was to simply add html to my page so that I can develop pages with a semantic structure. Stop laughing at the back. We all have to start somewhere.</p>
<p>The Designer client offers some simple tools to style on-screen text</p>
<p><img class="alignnone size-full wp-image-144" title="screen-capture" src="http://blog.pahudson.net/wp-content/uploads/2009/01/screen-capture.png" alt="screen-capture" width="263" height="47" /></p>
<p>Don&#8217;t use them. The html this toolbar produces uses inline styles rather than standard html and explains why the <a href="http://blog.pahudson.net/archives/117">discussion template&#8217;s html</a> seems to be missing any form of structure.</p>
<p>Using the bold face option adds<br />
<code><br />
&lt;span style="font-weight:bold"&gt;Bold text&lt;/span&gt;</code></p>
<p>The italic and underline also generate inline styles. So using these options could bloat your code considerably.</p>
<p>The increase and decrease font size option also generates in-line styles:<br />
<code><br />
&lt;span style="font-size:14pt"&gt;14 pt text&lt;span&gt;<br />
</code></p>
<p>As you can see, it also uses &#8216;points&#8217; as the default unit rather than pixels or ems, a unit I&#8217;ve avoided because it renders differently across browsers. So another reason to avoid this edit bar.</p>
<p>As far as I can see, there doesn&#8217;t appear to be an option to set headings and paragraphs, or to insert rules and lists. So how do you add them?</p>
<p>One option appears to be to use the &#8216;computed field&#8217; option and to set the &#8216;content type&#8217; to html and for the &#8216;value&#8217; to use the javascript return function to return html. For example</p>
<p><code>return ("&lt;h4&gt;This is the header&lt;/h4&gt;")</code></p>
<p>This seems to be a too long winded for my liking so the other alternative seems to be to switch to &#8216;source&#8217; view and to manually add the html directly in the source view. I have to admit, I&#8217;m surprised that there isn&#8217;t an WYSIWYG tools to help you produce a page with any form of semantic structure.</p>
<p>One word of warning. It appears 8.5 continues Domino&#8217;s habit of generating BRs for every carriage return. </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.pahudson.net/archives/143/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

