Genii Weblog

Gripe about XPages and win valuable software

Tue 8 Mar 2011, 09:54 AM

by Ben Langhinrichs
What I've Been Doing with XPages
I have been working more steadily with XPages recently, and while it is clear there are some real deficiencies, there are also some real strengths. I am less tempted to give up in disgust that I was with composite applications, but I do feel a strong urge to make XPages better, faster, more efficient and more powerful.

I have already found a couple of ways that I can use or enhance technology in our Midas Rich Text LSX to make developing XPages easier.  To give one example, I am adding a CopyWithDependencies method to the GeniiRTItem class.  As an example of how that is useful, if I wanted to use some of the discussion logic in another database

Call rtitem.ConnectXPage(db.Server, "discussion8.ntf", "allDocuments")
Call rtitem.CopyWithDependencies(db.Server, db.FilePath, "allDocuments""Overwrite=Yes")

With these two lines, you connect to an XPage (in this case, I just connected to the one in the template, but it could be in any database), and then copy the XPage to a new database using the same name.  But this doesn't just copy over the single design element. It copies all the custom controls, style sheets, JS libraries, image resources, etc. that are used with the XPage, so that you don't have to worry about missing any.  After that, you are free to tweak and change to your heart's content.

What You Can Do (And How to Win the Software)
This is just the beginning, but I thought I'd open up a discussion about what is wrong with XPages, but with a major caveat. For the purpose of this contest, I only want to hear about things that I might possibly be able to fix. Don't limit yourselves too much, as I might be able to enhance/fix things that seem unlikely, but I can't change the UI in any significant way and I can't make designer load an XPage more quickly. I can do lots of things with both XPage development and XPage use, and I can do cool things with the CKEditor.

Here's the deal. You tell me something that could be done better, I do it better, and then I give you a license to Midas to do it better. It's that easy. For example, if you comment that XPages would be more useful if only they allowed such and such, and I can figure out how to make Midas allow such and such, I'll add it to Midas and give you a free Base client license (up to fifty user). That's a $1500 value, just for grumbling.

If you suggest a way that CoexEdit could provide more power, and I add it to CoexEdit, I'll give you a discount of 25% off a CoexEdit server. That's also a $1500 value, just for grumbling.

Of course, you have to be first with a suggestion. The rest is up to you. Grumble away. I'm even happy to have you grumble here, in public, where other ISVs can listen in and try to beat me to the punch. Fine by me. If you like, you can send me a suggestion by email to preserve anonymity, or because you might add it if I don't. I won't tell anyone if you don't want me to, although if the capability makes it into one of our products, I will make the feature public and shout it from the rooftops.

Anybody out there have anything you would like to see work even better?

Copyright 2011 Genii Software Ltd.

What has been said:

981.1. John Head
(03/08/2011 03:31 PM)

the number one feature I hear that is missing from XPages apps vs. Notes client apps in terms of rich text (thinking of Midas here) is to enable copy and paste of rich text from one source (word, notes email, notes client app document, etc) and paste it into a XPages RT field and have it paste properly with formatting.

That is a major missing feature and almost the holy grail of RT features.

981.2. Ben Langhinrichs
(03/08/2011 03:56 PM)

@John - Interesting. Let me think about how best that could be accomplished. Thanks!

981.3. Ulrich Krause
(08.03.2011 19:58)

One feature that is still missing is an easy way to create a pdf file from a notes document. It is not about plain text to pdf but richtext. Even with iText I have not found a solution to get the content of a richtext item and print it to pdf.

981.4. Ulrich krause
(08.03.2011 20:16)

the concept to support multiple languages in an xpages based app is great and simple but lacks an easy way to maintain the ressources. You need designer access level or at least an agent that can transfrr the language information from a normal notes document to the ressource file. If there were an easier way to have the language information in the frontend but still leverage the eclipse features for handeling the ressource files, XPages would be better.

981.5. Ulrich krause
(08.03.2011 20:21)

it is a pain in the arse for a user that he cannot simply paste an image at the cursor position into a richtext item in XPages.

981.6. Nathan T. Freeman
(03/08/2011 08:29 PM)

Turn CoexEdit into an OSGI plugin so I can deploy it to more platforms in a more integrated fashion. Bonus points if you can do the same with Midas. :-)

981.7. Ben Langhinrichs
(03/08/2011 09:44 PM)

OK, now we are getting some suggestions!

@Ulrich - The PDF thing is certainly something I have considered, but it doesn't have much to do with XPages, so I'll leave it aside for now.

I'd be interested in hearing more about the language support. Not exactly sure what is meant by this, but it sounds promising.

Pasting an image into a richtext item is certainly related to what John is talking about. My solution with CoexEdit has been to allow you to import an image directly from the hard drive, but the pasting is harder. I'll see what I can do.

@Nathan - CoexEdit works automagically in the background, so I can't really see what the OSGI plugin would do. I can certainly see what the Midas OSGI plugin would do, and it might not even be that hard. If you could explain what you would do with a CoexEdit OSGI plugin, I'd be happy to consider that. The Midas thing will take some research, but I probably know what I need to figure out.

981.8. Fredrik Norling
(2011-03-09 07:39)

The ability to change a xpage thru code and recompile it on serverside. That is something that is missing.

If we are talking richtext then it's the feature to edit an attachment and resave it back, from notes and Webb client.

981.9. Ben Langhinrichs
(03/09/2011 11:24 AM)

@Fredrik - Changing the XPage through code is certainly in the works. Adding the ability to recompile serverside is still a little less clear to me, but would be great.

As for the ability to edit an attachment and re-save it, the biggest challenge is to make sure I don't duplicate effort the core team is doing.

981.10. Nathan T. Freeman
(03/11/2011 12:17 AM)

Recompiling the XPage requires just about all of DDE be installed on the server. The bulk of the process is written as Eclipse project builders, and defined by the Eclipse project nature within DDE.

I've done it before, but I think it's crazy. There's really no good ways to handle build errors within the Domino server. You'd need a ton of infrastructure before you're at the point of something like Hudson.