I posted some common string functions that I’ve been using alot during the years in @formula, lotusscript (strleft, strright, strrightback, strleftback) and later in SSJS. So I thought that I need them in Java too. There might be some features like the one with dot in the replacesubstring function, feel free to comment so will I fix that 😉
We have all been living with the Mailbox in the IBM Notes client but because I work with lots of different clients I rarely use my own id. Therefore my main mail client has been iNotes / IPhone mail thru Traveler / Verse iPhone app. But when I upgraded my machine to Windows 10 and the Traveler server to the latest version I found that it works great to use the Traveler mail with the Windows 10 built in mail and calendar client.
Yes it’s a bit limited, mostly that you can only have one email open at a time. You can’t use Outlook because that client is blocked on the Traveler server, probably because some advanced communication that the Outlook client uses. Hopefully they will release that support at IBM Connect this month.
So if you haven’t tried it yet and have a Traveler version that supports the Verse client you can try it you self. Feel free to make a comment on you experience and use of other clients against the Domino server.
The standby widget snippet has need around for a while and doing it’s job in lots of my projects but now more and more of my projects is using bootstrap. So then there was time to also change the standby widget to support bootstrap. This is the first version that will give you a responsive standby “loading” indicator.
I usually write a little post about what I would like to see an announcement about in January
XPages for Bluemix leaves experimental hopefully goes Gold.
So we can use it in production
Lowering the price for data cache used when scaling XPages applications in Bluemix
pricing today is a joke, data cache cost almost equal to a full instance. So if you want to scale into more instances you have to pay double the price of the instance.
NSF database enhancements both functionality and speed
Move indexes out of the database, joins, better and faster fulltext search
Data service for IBM Cloudant directly in XPages
Leverage the full potential of Bluemix directly inside XPages
Database converter from NSF to Cloudant
Cloudant is almost the same as an NSF database but with more speed and without the need to a Domino server
IBM Verse replaces iNotes as webmail client The customers need something new and fresh
Public release of Outlook as a mailclient thru traveler
Java 1.8 support for XPages
Javascript v8 support in SSJS
Domino Designer becomes a Eclipse plugin Yes please, let’s get rid of the old version of eclipse and give us access to everything new and the possibility to upgrade it. and have several versions on the same machine.
You can probably think of more things you would like feel free to make a comment
Today I had a strange issue on an XPage application I was working on I it didn’t matter where I clicked
my button on the form got clicked. Very strange. First thing I started to look for was if I had some onClick event that was bind wrong. Nope that wasn’t the case.
Then I went over to the client side and thought I could find what event listener that was making the call but this doesn’t say anything to me.
Then I started to look at the XSP.Attachevents at the bottom of the xpage
But if you have a large xpage and 20 events attached to it, it’s hard to find what is what. The my suggestion is give you components real names. And it was then I found the problem. Can you spot the difference
The working client side code
This this the XPage with the faulty code
Yes, the partial event listener is bound to an object that doesn’t exist view:_id1:_id5
why you might ask, I found that this happens if a button don’t have a name and is set to do a partial refresh.
Then you will get that you will click the button where every you click on the xpage. Hopefully fixed in a future release with an error or a correctly generated id.
You Bluemix XPage server can interact with other services using the VCAP_SERVICES where all the credentials for contacting other services is stored. This JSON data can be retrieved using
var services = fromJson(bluemixContext.getVCAP_SERVICES());
This will give you a direct access to the connected services credentials and exposed information, the credentials is what I have found updated each time you deploy a new version of you code so you need to use this way to get the credentials.
If you login to your Bluemix dashboard and click on your XPage service icon, you’ll find environment variables in the left hand navigator. This will display the structure of the VCAP_SERVICES JSON data check it out.
Most of the services has different methods of accessing them, I’m still investigating how to use different services and future posts will show how to use Bluemix services using XPages
When you want to deploy your app to the real world a mybluemix.net adress might not be the best you probably want your own domain added. Fortunately this is very simple to do with Bluemix.
Click on the settings icon in the top right corner on your Bluemix Dashboard and select Edit Routes and App Access.
Click on Manage Domains
Click on Add Domain
Write your custom Domain name and press Save
an upload SSL Certificate appears and if you want to accept SSL to you application, you need to upload a certificate to your application.
Add your CRT file i the Certificate file upload control and your Key File and password in the next two fields. And press Upload.
Now you are almost done.
Go back to the first screen
your new domain will now show up as an option instead of mybluemix.net
There are several options too create a SSL cert but for test purposes I use https://www.startssl.com/ it’s a great way to create a free SSL cert or your can get a great price from Digicert that I use for all my professional certs
I have seen more than once both of own and other developer experience that a loop in XPages gone bad and you have to kill the server. How can this kind of behavior be fixed in XPages for Bluemix will the dashboard work to “kill” the server?
When I started to try out XPages for Bluemix I started to create a list of questions for the future because this is in Beta and between now and Gold release some of this questions would be good to have an answer on.
What release cycle could we expect to get for the XPages runtime, in relation of getting new versions of extension library and functionality – Answereda monthly release cycle or synced with openntf extension library upgrades
How do we run scheduled code that we have runned in agents before – Not at this point but the possibility could be there in a future release Answer
How to handle Users/Groups/Roles partial answerGroups is not supported and you are limited to 6 web users in the experimental version of XPages for bluemix
How to register users thru code, integrate with LDAP, SAMLNot at this point partial answer
How to control JVM Security
How to do an automated XPage build process – Could could add git to a Bluemix project and deploy your code the git See post perhaps we will see a ODP git push to Bluemix in the future that would be great.
How to use other Bluemix Services with XPages AnswerAnswer2
How to package an XPage for Bluemix solution as a temple for multi service deployment
can a XPages application be run inside a Docker container
How does XPages in Bluemix scale – Answer and a very good one
Is the database
I will probably get more questions and will then update this post. I will also add any answers I get to this post. If you know any answer please comment.
We use cookies on our website to give you the most relevant experience by remembering your preferences and repeat visits. By clicking “Accept”, you consent to the use of ALL the cookies.
This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.
Cookie
Duration
Description
cookielawinfo-checbox-analytics
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics".
cookielawinfo-checbox-functional
11 months
The cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".
cookielawinfo-checbox-others
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other.
cookielawinfo-checkbox-necessary
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary".
cookielawinfo-checkbox-performance
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance".
viewed_cookie_policy
11 months
The cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data.
Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.
Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.
Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.