RSS

A developers dream – for sure

OpenNTF is in the middle of his biggest transformation since the beginning. Core of the this transformation is building communities around visions, problems and projects. This needs communication…. Continious communication, a flow of questions, answers and ideas.

But how to communicate continuously, several topic’s, restricted content, open content, and involving everybody who is interested to become a part of this community? I the middle of this storm of changing culture and using technology, Jesse discovers “by accident” slack. We (Jesse and I) decided to register openntf.slack.com, to get some experience and figure out if slack would help us.

2 weeks later, after some testing, which includes also the integration of our Atlassian suite, it was clear – a developers dream. Mulit channel / topic and content federation… how wonderful.

But how to on board as many people as possible. At this point, Declan Lynch came on the plan and pointed to https://github.com/rauchg/slackin. A node.js project with an auto deploy to Heroku. But Heroku offers a free offering with 6h downtime in 24h. Sorry, not an option and to be honest, that has not looked like the next challenge I want to conquer.

But Declan explained that this is a node.js app, it could also run on IBM Bluemix….. And YES I’ve a IBM Bluemix Account. But node.js? And how to give this “Slackin – Thing” some parameters during the startup?

As a good conditioned Java Developer, my first step was to download the needed eclipse plugin. Go to IBM Bluemix, build a new Organisation and then create a node.js app. Not a boilerplate, only the runtime.

Next step was creating a JavaScript Project in Eclipse, configure the IBM Bluemix Server, Change the ProjectFacet to node.js, assign the project to IBM Bluemix Server. And….. nothing happens, but hey it didn’t crash the whole Bluemix Environment ;)

Let’s go to github and clone the slackin project. I copied the files, including all Licence stuff to my project and all was pushed directly to IBM Bluemix. But the application fails to start…. I did expect this, but how to give this node.js program the variables? (Yes, I’m a bit a newbie about node.js…)

Let’s open the IBM Bluemix console and take a look there. What’s that, there is a point called environment variables. Let’s give it a try. I’ve defined the 2 parameters with the name that was given in the app.json in the IBM Bluemix Console, filled them with the accurate values and restarted the app……

…. And wow, IT WORKS. How cool is that. No Plan of node.js, using an OpenSource project from github, no installation of any server and the application is running in less than an hour. Okay thats definitely also a developers dream.

The integration on the OpenNTF Page was done some Minutes later and look at this:

SLACKIN

And now join openntf.slack.com and following the OpenNTF Community.

 
Leave a comment

Posted by on December 1, 2015 in OpenNTF

 

Another nice journey with Maven – or how to sign a jar file

Yes I love Maven, for sure. Maven gives you the capability to build project everytime the same and in every environment. I often explain Maven as a brilliant facility manager, who is able to put all the build, test, package and delivery instruments togehter and then build all the stuff according to your building instructions.

But what if I have to sign a JAR file with a code signer certificat? And this certificate is owned by another company, and they will not provide this certifacte to me. How can I setup a project with Maven that let me build and sign the project by a selfsigned certifacte, while my customer other my build server can use the code cert?

First step…

I need a selfsigned code certificat in a keystore. Read the following tutorial on how you can do this http://www.jade-cheng.com/uh/ta/signed-applet-tutorial/. Add this keystore now to the project. My keystore is named awfstore

Once we have done this, let the Maven project know that we want to sign the jar file by adding the following snipped to the build section in the pom.xml.

mj1

We are using the “maven-jarsigner-plugin”. The configuration is done by some variables, starting with “sign.”. The values for this variables are definied in the properties:

mj2

You can build now the project and it will sign your project with the certificat awf from the awfstore. Replace this values, with your values. But how can we achieve that a Buildserver like Jenkins or Atlassian Bamboo can use other values?

Add the following definition to your pom.xml:

mj5

This will activate the Profile compSignerKeyStore, which will override the variables with new settings. This settings can be placed in the setting.xml of your Buildserver or of any developer. It can looks like this:

mj4

Have fun

Christian

 
Leave a comment

Posted by on November 26, 2015 in Java, Maven, OpenNTF

 

My slides from SNoUG 2015 – Content is in German

Englisch version is in work and will come soon

 
4 Comments

Posted by on October 28, 2015 in OpenNTF

 

Tags: ,

Currently recovering

Dear All,

It’s a while ago, since my last post. The best excuse is, that I really had a lot of projects to push forward and less of time to talk and blog about. But that’s only the half of the story.

Last month, on June 9. I was in Spain for a customer meeting. It was a really good meeting and it was nice to be there. But during the meeting, I was getting cold. Real cold and my first tought was: what a strong air conditioning. But in fact, my body temperature was rising and the cold was a result of the fever. We went to the airport after the meeting, and I realized that also the airport has an air conditioning. After standing a while outside in the warm spanish sun, we took our flight back home. My wife picked me up I had a night with nice fever driven dreams.

The day after, at the evening, we went to the hospital. My right leg was twice thick then my left one, but I was more caring about the high fever and the diarrhea. Fortunately the medical team and the doctors at the hospital didn’t ignore my leg and took the swollen leg at their top priority. According to some swiss hospital rules, I was moved to the isolation station.

A team of medical doctors started to figure out why my leg was so swollen and why all me blood doesn’t look really good. They started with a antibiotics therapy, which had a strong impact to the fever. Day by day the size of the leg was shrinking, but the heavily forced skin has built some bubbles, which were filled with some liquid. A part of the medial team where really excited about this fact, because the took some of the liquid from the bubble and could analyze what was happened to my leg (It was fun to see what passion these doctors had, because of this bubble and the opportunity to know more).

Flesh eating bacteria! What a radical diagnose. I heard also the “normal” and the worst case scenario of this disease. To be honest, in the worst case, I wouldn’t be able to write this blog entry. I wanna thank first god the almighty father and creator of heaven and earth, for my recovery, for his carrying, for all the moments where I could feel his presence and for pointing me to this wonderful song which gave me hope and patient (https://www.youtube.com/watch?v=A-1MR5JAu2M). Thanks to all friends who prayed for me. Thanks to the medical team and the doctors at KSW Winterthur, you did a great job. And thanks to my company, who is giving me the time to recover and handles all my projects. And last but not least to my family, thanks for every visit, SMS and your prayers: I love you!

My leg ist recovering. Fever is gone, but the skin of my leg has still the nice color scale from a bright orange to a dark yellow. But the skin is also recovering and I’m able to type and think. My action circle is currently my home and I will remain at home, until my leg is recovered. It’s hard to stay at home and not enjoy the swimming or other outdoor activities, but patient is the best friend currently.

I hope that I can now catchup with all the interesting projects I was involved and a lot of news around XPages, Java and some new technologies.

All the best

Christian

PS: Sorry Bruce that I missed your birthday, be blessed!

 
29 Comments

Posted by on July 6, 2015 in OpenNTF

 

#IBMNotes25 Party – can’t wait….

Notes25Invite

 
Leave a comment

Posted by on January 20, 2015 in OpenNTF

 

Tags:

Maven and XPages Plugin – From Scratch / Part IV The feature

While Switzerland was covered with snow, the OpenNTF Base project has made some progress. There are two new plugins, one is org.openntf.base and the other is org.openntf.base.lib.internal.

org.openntf.base contains all the stuff to register the plugin collection as an extension library and also all “Top Level” classes. org.openntf.base is designed to have all the dependencies to the XPages engine. I try to make org.openntf.base.jaxb.dxl with less dependencies to other plugins, as possible. specially not any dependency to the XPages Engine (as I sad, I TRY). My intention is to reuse the org.openntf.base.jaxb.dxl part also for Notes Client plugins.

org.openntf.base.lib.internal contains all the JAR files which will be used in the org.openntf.base package, but not exposed to the Desinger Client. Maybe there will be a org.openntf.base.lib.external plugin, which contains jars of useful java libraries, that could also be used at the Designer Client level. GSON and GUAVA are candidates for this.

Btw. the org.openntf.base.jaxb.dxl.testsuite is also moved to org.openntf.base.testsuite and is now a fragment of org.openntf.base

Ready for the next move? ….. we need a feature to bring all the plugins under one umbrella. (Btw. the testsuite Fragment will not be part of this feature!)

It all begins with a new ………. module!

220

And the packaging type of this plugin is “eclipse-feature”221

Once we have the new project, we need to files:

  • feature.xml
  • build.properties222 223

Lets open feature.xml and fill the following stuff into the editor:224

On the plugins tab, please add all the plugins you need225

And on the information tab, please fill at least the Copyright Notice. Without it, you wouldn’t belive, but the feature is not loaded in the Designer Client.226

And on the build tab, please select feature.xml227

Check if everything is fine with your run configuration “clean install”

 
Leave a comment

Posted by on December 31, 2014 in Java, Maven, OpenNTF, XPages

 

Tags:

Maven and the magic of profiles

Maven and the magic of profiles

POI4XPages has a module called poi.assembly. This module builds the final ZIP file which can be uploaded to the OpenNTF website. One step in the assembly is that the module downloads the source code direct from github. This step takes a lot of time, so each mvn clean build takes a lot of time, because the assembly line is also executed. Fortunately Maven has a concept called profiles. Maven let you define different profiles. In the POI4XPages case, I’ve built two different profiles, which contains different set of modules:

200Each profile has its own id tag. The default_no_assembly profile is activated by default. The <activation> markup let you activate also profile by defining environment variables.

I’ve now to different run configuration in my eclipse client. To run the default profile, I use the following:

201

But if I need the assembly profile, I use the following configuration:

202

Merry christmas!

 
Leave a comment

Posted by on December 24, 2014 in Architektur, Java, Maven, OpenNTF, POI4XPages, XPages

 

Tags:

 
Follow

Get every new post delivered to your Inbox.

Join 874 other followers