Warning. Despite finally getting to the point where my XPage does the things I want it to do and finally having the code patterns I wanted to start building a real application that users will interact with, I'm writing this blog post entirely in sarcasm font, specifically to blow off steam after an incredibly frustrating day working with this environment. If you came here looking for deep technical insights for xpages -- you're really too early. I don't have any yet. What I can offer are opinions born of frustration piled high, and somewhat assuaged by a bit of success thanks to a whole lot of trial and error and some help from notable xpages leaders in the community.
Some observations:
1. If you thought there were way too many options placed in obscure locations that are hard to find, you're not looking hard enough. There are at least 100 times more than just "way too many".
2. That option doesn't do what you think it does. No matter which options we're talking about, or what you think it does. The truth is, it doesn't do that. That's why I've renamed XPages to "TrialAndErrorPages".
3. ....
Ok, seriously -- there are a few things worth knowing if you're new to coding on xpages. There are lots of good demos and specific "how-to" articles. To all that hard work, I add the following mostly usesless observations...
1. Creating an XPage is far more different from creating any other kind of page than you'd think. It's nothing at all like a form with some pass through HTML and a lot of rendering. An XPage is more like a compiled program that spits out code to the user when it wants to. The reason that's important is that most of what you do gets translated a couple of times before the browser sees it. You're not creating a web page with the xpage development tool. You're creating an application that creates a web page. If it wants to.
2. For the love of all that you hold dear, the first thing you need to do is drop a "[Display Errors]" control on the page.
3, Some people really like the fact that no matter how deep you dig, there's always another option, event, property, or method you can dig up to do some new obscure thing with XPages. No, really, I've seen people write this on public postings. I'm not one of those people. I'm used to programming languages like C -- or even just javascript -- where you have a fairly small number of very general but powerful commands and you put them together in really interesting ways to make things work. XPages is the opposite of that. XPages is like those Lego sets that came out in the late 80s and early 90s where if you followed the instructions exactly you'd get a thing just like on the box picture -- but so many of the pieces were specially made just for that purpose that you never really had as much fun with it as you did with the old general use sets.
I'm done ranting now. Maybe tomorrow I'll have nicer things to say about XPages, because when all is said and done -- we're all going to have to use them as long as we stay with Domino.
Comment Entry |
Please wait while your document is saved.
is a very powerful set of application development tools that has so many
different things in it including bugs that is take a long time to learn and get
good at. So far the only thing I am using it for is XAgents which I use with my
UX Pages framework. I find it lot easier to code and port with this
framework. Keep on going at it. Eventually you will be able to get the hang
of things.