| Key | Date | Title | Abstract | UNID | |
|---|---|---|---|---|---|
| Custom Component Creation in an NSF | <p dir="ltr"> Today we're looking at custom component creation within an NSF. We're not talking about custom controls, though creating a custom control before creating a component is definately a good way to prototype a custom component. Plus the DDE Builder does kind-of turn our custom controls into components, so they are kind-of custom components, but not really. What we're really talking about is a component that shows up in the DDE Component Palette and has it's own properties, methods and visual representation within desi... | E54655CC596DF550852579840054E294 | |||
| sitepen's dgrid dojo dijit | <p> While just cruising around the web wasting time I stumbled across a <a href="http://www.sitepen.com/blog/2011/10/26/introducing-the-next-grid-dgrid/" target="_blank">grid component</a> on <a href="http://www.sitepen.com" target="_blank">sitepen's</a> site for an alternative to the dojo grid. To me it looks very similar to a jquery grid. But I thought this was very interesting and may play with it at some point in time.</p> <p> <img alt="" src="http://xprentice.gbs.com/A55BAC/keithstric.nsf/0/B43FDE8707E29313852579800010FD59/$FILE... | 28D66340B24A525C8525798000111CAB | |||
| Component Class Info Custom Control | <p dir="ltr"> Today while working on a solution for <a href="http://www-10.lotus.com/ldd/xpagesforum.nsf/topicThread.xsp?action=openDocument&documentId=6CA2E644FDF9C2C88525797B007293AB" target="_blank">this post</a> on the XPages Forum I couldn't find any API documentation on a DynamicViewColumn which is a child of the Dynamic View Panel included in the extension library. This prompted me to come up with this crude custom control that will give you a drop down box of the component tree's components and then when you make a selectio... | 8DC857413F6991E48525797F006EA145 | |||
| New Family Members | <p> We've added 2 new family members to the Strickland household (they don't have names yet). They should make fine additions to the family. We used to have a 6 1/2 foot iguana named Puff that pretty much had run of the house. He was certainly cool. But we resurrected my 75 gallon tank to the new bearded dragons. Since they're babies hopefully we can keep the tank hot enough, but we will one way or the other. But here they are.</p> <p> <img alt="Orange Bearded Dragon" src="http://xprentice.gbs.com/A55BAC/keithstric.nsf/0/EE2D5DC7F... | 3735468A72431CA78525796E0001498D | |||
| XBlog 0.7.2a Released | <p> Today I released version 0.7.2a of XBlog. This version includes updates to the Sencha Touch site and the license for using Sencha Touch. New features included are:</p> <ul> <li> Bottom Toolbar <ul> <li> Home Link</li> <li> Full Archive Link</li> <li> Downloads Link</li> <li> Top 10 Link</li> </ul> </li> <li> Sencha Back Button improvements</li> <li> Scrolling issue in Sencha Touch site fixed</li> <li> License Update using the Sencha Touch Exception for Applications</li> </ul>... | 5E404CC0EBC3480185257965005BB6FB | |||
| Samsung Galaxy S II | <p> <input alt="Samsung Galaxy S 2" src="http://xprentice.gbs.com/A55BAC/keithstric.nsf/0/196DF60E7DA147AA852579620071FBC0/$FILE/t-mobile-samsung-galaxy-s-ii.jpeg" style="float: left; width: 211px; height: 204px; " type="image" />As an early christmas present my wife got me a new Samsung Galaxy S II from T-Mobile. This is by far the best gadget I've ever owned. My initial impression is WOW! It's very fast, much faster than my old myTouch or the LG that replaced the myTouch when it started over-heating.</p> <p> The T-Mobile version of ... | 3222588D7E352349852579620072AB4C | |||
| Sencha Touch Application in XPages | <p> I've recently incorporated a VERY simple Sencha Touch application into XBlog, if you visit this blog with a mobile device you will see it in action. The reason for this was because when attempting to read one of my favorite blogs on my Android phone I got really frustrated that it was so small and having to scroll up, down, left and right just to read a short post. This prompted me to look at my blog on my Android and it was even worse! So, we now need a mobile front end for XBlog.</p> <p> Now for a <i>normal</i> Sencha Touch applicat... | 67BC911DF362E7878525795D005D4776 | |||
| HTML Templating in XPages | <p> While developing XBlog one of the requirements was that the layout of posts, comments, permalink pages, pages, archives and downloads needed to be customizable by the blog owner. This would allow the blog owner to make XBlog look exactly as (s)he imagined. The problem is, how do you pull this off and yet still have the application perform as one would expect without a massive amount of requests going back and forth between the browser and server? While this task seems a little daunting it is doable and performs pretty well. Also, I need to... | D2EA34186BB7999B852579580062AB13 | |||
| XBlog 0.7a Released | <p> XBlog 0.7a released to OpenNTF. This version includes several new features: <ul> <li> Posts, Comments, Pages and Archive items all componentized which resulted in a slight performance gain</li> <li>Search incorporated in both the front-end and back-end websites</li> <li>Full Archive now available</li> <li>Small Client Side API implemented</li> <li>All Downloads section added</li></ul></p> <p> Items fixed in this release: <ul> <li> Sorting arrows for Links</li> <li>Hot Text replacement only occurs in content of a post, not all html, fixes b... | EDD887DE621FE53E8525794E0077EFBF | |||
| JavaScript Singleton in XPages | <p> So, I've been cleaning up a lot of my "first starting" mess here in XBlog. The Posts, Comments and Pages are now "componentized" as opposed to being just generated HTML. Don't get me wrong there is still a lot of "generated" HTML here, but it's at least getting to be more manageable. But during this clean up I decided to implement a client side API of sorts and the best way to do that is to create a JavaScript Singleton to hold all the CSJS functions and properties as that would provide the most robust solution to provide other people the ... | 210AE5A6608D230C8525794B00515B13 | |||
| Adding a custom Dojo dijit to an NSF | <p> So you say you've developed a custom dojo dijit which works during testing but you can't quite figure out how to include it in your nsf. Well, this is the post for you. Adding your custom dijit to the nsf isn't too difficult of a task. The hardest part by far is development of the dijit itself.</p> <p> We'll start with the location. In the package explorer, navigate to the WebContent folder and create a new sub folder, we'll call ours xblog. We'll then create another folder which will be a sub folder of xblog called dijit and this is where... | C38339FBE7158BFE852579420054EC4C | |||
| Cool Debugging Video - Courtesy of Matt White | <p> Over on Matt White 's website he posted a video of the <a href="http://www.youtube.com/watch?feature=player_embedded&v=5hyI8yKTOmQ" title="Flash Builder Reverse Debugger" target="_blank">Flash Builder Reverse Debugger</a> which is really cool. It shows the ability (among others) for a user when they encounter an error in the application they're using being able to send a debug file to the developer. Once the developer gets this file he/she can load it up in the debugger and see exactly what they were doing when they encountered the error i... | B15CE52C7FFD7ED18525794500597B95 | |||
| Handy Dojo Methods | <p> Here lately I've been having to hunt down and squish issues specific to IE. A few of these issues have been that there isn't support for a given method, Array.indexOf comes to mind right away. Dojo to the rescue. Dojo has went to great lengths to ensure that it is cross browser capable and in some cases implement better methods than what is available natively for a particular browser or just in general.</p> <p>In case you're wondering, here are a few examples: <ul> <li> Array.indexOf('someValue') - dojo.indexOf(Array,&#... | E2045288C7F46FA08525793B00515A8D | |||
| Dojo Portlet | <p> So I've been looking for a better way to structure the sidebar blocks here for XBlog. Well I messed with using divs to layout everything, but this required way too much style knowledge, which as we all know I'm not too hot at. I also tried tables, and while lightening the load for CSS knowledge I still felt that it was a hack or just too old school. Well, I stumbled across the <a href="http://dojotoolkit.org/api/1.6/dojox/widget/Portlet" title="Portlet API" target="_blank">dojox.widget.Portlet</a> widget. This puts a nice widget on the pag... | 66F4589992D54270852579360073C5A7 | |||
| Adding a Javscript Library to your XPages applications | rssAbstract... | BAA984BA446626D085257930006C1924 | |||
| keithstric.com on XBlog | rssAbstract... | B0E581878F09E2E48525792E006EE15B | |||
| Component Injection on the fly | <p> When we speak about component injection just exactly what are we talking about? Well, we're talking about adding a component to the component tree at runtime and ensuring that component is rendered and functional, all without loosing any context of what the user is currently doing. Component injection is a very powerful feature of XPages, it allows you to add components to the page on the fly, or heck even build an entire page programmatically if you so wish <strike>to be tortured</strike>. The biggest draw back to component injection is t... | 3A18242ECD3328AC8525792D004E3F02 | |||
| XBlog - The XPages Blog Platform - Released | <p> This past weekend an OpenSource project I've been working on for a while, called XBlog, was released. While not quite ready for prime time I think the release was probably a good thing to at least get people looking at it and hopefully provide some help in fixing some of the more stubborn issues (read please help). Currently, XBlog looks a little old school, but it's got a pretty good feature set that should only grow in future releases. I've already been contemplating a few future features (say that fast 5 times in a row) which should sho... | 53BB3335DF4E6E678525792D004E3F03 | |||
| Cool Chrome Debugging features | <p> This week while troubleshooting various issues I came across some cool features of the Chrome browser. While not really all that jaw dropping they may come in handy none-the-less.</p> <p> Click the wrench icon in the top right corner and then pick "View Background Pages" this will bring up a dialog which shows you how much memory and cpu the browser, each tab and each extension is using, which is pretty handy. You can also end these processes from this window. Now click on the "stats for nerds" link at the bottom left of this dialog. This ... | 7657CE94B24F68388525792D004E3F04 | |||
| The JSON RPC service | <p> I answered a question on the XPages Forum about setting scoped variables from client side javascript and thought it would make a good blog post. The JSON RPC is included with the <a href="http://extlib.openntf.org" title="Extension Library" target="_blank">Extension Library</a> and provides an entry point for CSJS to interact with the server. Methods inside an RPC are SSJS that can be as simple or as complex as you like. They are an excellent means of kicking off backend Java methods or just doing all the work themselves. Best of all, the ... | 3524156D3B4587E185257920000494C5 | |||
| Sharing data between MySQL and Lotus Domino | <p> I've been working on a demo database to show some of the things you can do with XPages that you can't do with traditional Domino development techniques. So I figured it would be cool to show Domino data right along side data from a MySQL DB. This actually wasn't as difficult as I thought it might be and it was a fun exercise and produced some code that may be useful at a later date. But I'll briefly go over the technique here and also make the xpages app and MySQL db available for download so you can examine it yourself and just follow alo... | 7FF651F56323CD2C85257920000494C6 | |||
| A Dynamic Dojo Data Grid component | <p> The other day I blogged about First Steps in learning Java and used a Managed Bean to get the values from some fields and create some HTML from those values. Well today we'll take another step forward by creating our own custom component (obviously I'm a firm believer of diving in head first). We'll be constructing a component that will build a dynamic dojo data grid from a view in the current database. I created this because after creating about 3 different views using a data grid I came to the conclusion that all that work sucked and dec... | 4FB6F1BAA4EB4EBD85257920000494C7 | |||