203 Lotus blogs updated hourly. Who will post next? Home | Blogs | Search | About 
Latest 7 Posts
Quick tip: access the application log files on Bluemix
Wed, Nov 15th 2017 43
HR Assistant – Hello Domino….
Mon, Nov 13th 2017 205
Quick tip: Make a backup of your Cloudant database
Fri, Nov 3rd 2017 7
HR Assistant – now available in every language
Wed, Nov 1st 2017 6
HR Assistant – what happened since last year
Fri, Oct 27th 2017 7
Domino Version 10 and Beyond – a few toughts
Thu, Oct 26th 2017 7
IBM Champion nominations 2018 are open
Mon, Oct 23rd 2017 5
Top 10
HR Assistant – Hello Domino….
Mon, Nov 13th 2017 205
Quick tip: access the application log files on Bluemix
Wed, Nov 15th 2017 43
Quick XPages tip: add Fullcalendar plugin to your application
Thu, Aug 27th 2015 13
Quick XPages tip: add pace.js to your app
Tue, Mar 29th 2016 10
Websphere Liberty Profile and external authentication redirect
Wed, Dec 21st 2016 10
Primefaces upload control and ClickJacking filter on IE8
Wed, Mar 11th 2015 8
Bulk import in a Cloudant database
Thu, Apr 27th 2017 8
Jackson JSON mapper plugin for XPages
Fri, Feb 13th 2015 7
Quick XPages tip: Show validation status icon on bootstrap tabs
Thu, Jul 9th 2015 7
XPages quicktip: use the Calendar build in Months
Thu, Nov 26th 2015 7

My steps in the JSF 2.0 world
Twitter Google+ Facebook LinkedIn Addthis Email Gmail Flipboard Reddit Tumblr WhatsApp StumbleUpon Yammer Evernote Delicious
Frank van der Linden    

The last 2 weeks were very interesting, starting at a new customer as a Java developer on a JSF2.0 project.

XPages are based on highly customised version of JSF 1.1 at the base.



The big advantage if JSF 2.0 is build in of Annotations. Very useful, like the @Formulas back, in my case, in the old days of Lotus Notes development.

For Managed Bean you can still use the faces-config.xml to control them. But now there is also the @ManagedBean(name=”fooBean”), you can use directly in the Java Class in combination with Scope Annotation, @ViewScoped, @RequestScope or @ApplicationScope.

Keep in mind that if you register also the Managed Bean in the faces-config.xml, this registration will overrule the @ManagedBean annotation on the Class.

Related to @ManagedBean, there is also @ManagedProperty annotation. Which can be used to directly include a Managed Bean inside the Java class. @ManagedProperty has one required parameter, ‘value’, which refer to the Managed Bean name. Inside the Java class you can automatically use the Managed Property.

Spring Framework uses the @Inject annotation to inject objects inside the Java class


Another very useful Annotation is @PostConstruct above a method inside a Java class, as the name suggest it will run as the Managed Bean will be instantiated. There is no need to trigger such a method from within a XPages or some other way.


Expression Language 

It is still there and as in XPages very powerful, but in JSF2.0 you not can call getters and setters in a bean, like #{bean.property1}, but also methods, like #{bean.method(argument)}



In JSF 2.0, in perception, there is new thing, ProjectStage. In the web.xml you can put a tag to specify the current ProjectStage.


The most used values are Development and Production, but there is also something like UnitTest and SystemTest. When you use Development the Application Server will print more debug and log lines to the console, very useful.



XPages has the excellent Extension Library as framework and toolbox for lots of component, UI and behind the scenes. JSF 2.0 has their frameworks.

Till now I am using PrimeFaces and MyFaces Tomahawk, they are not exclusive for JSF2.0 and higher. But when you look at older versions, there is a lack of functionality.

The 2 frameworks contains lots of components which can be easily integrated inside your application. As specially PrimeFaces has lots code examples.


and more….non JSF

In my project next to JSF, I also use EJB and JPA to set up Persistence to the Oracle Database. With Persistence in place you can easily do CRUD actions on objects in the Relational Database.

twittergoogle_plusredditpinterestlinkedintumblrby feather

The post My steps in the JSF 2.0 world appeared first on elstar IT.

Oct 24, 2014
7 hits

Recent Blog Posts
Quick tip: access the application log files on Bluemix
Wed, Nov 15th 2017 1:03p   Frank van der Linden
Last night when I deployed a new version of HR Assistant to Bluemix I ran in some troubles. When the application was deployed and tried to access it via de Application URL I got a 500 internal error. Find the log First step was to open the log page, but was not very explanatory. Next step was to open Kibana. There I found more information. As you can see, I need to consult the error-log-0.xml file for more information The challenge is where to find this log file. Solution I started, in my case
HR Assistant – Hello Domino….
Mon, Nov 13th 2017 7:03a   Frank van der Linden
While we developed HR Assistant it ran smoothly on a Domino server, but it was not using some strength of Domino, security. Run on Domino I made HR Assistant aware of the runtime it runs on, it ‘knows’ when it runs on Bluemix. If that is the case our own developed login features comes in place, but… When it runs on Domino it will enforce the ACL, which gave great advantages, by assign groups to the 3 roles of the application, HR, JobApplicant and Administrator. In the end you a
Quick tip: Make a backup of your Cloudant database
Fri, Nov 3rd 2017 3:04p   Frank van der Linden
For HR Assistant, we use Cloudant database as storage of the data on the IBM Cloud Today I was thinking about ‘what if we loose our data as something goes wrong’. It is not likeable, but still possible. Make a backup On IBM Cloud, there is documentation about making a backup of your data. So installed the npm package couchbackup  and run the command as described in the documentation.] I changed only to store the output as a JSON file. When I run the command I hit an error about au
HR Assistant – now available in every language
Wed, Nov 1st 2017 6:58p   Frank van der Linden
One of the latest features I had add to HR Assistant is multi language support. It was obvious we needed this new features, as not the whole world is talking English One of my goals was to make it as configurable as possible. Default language The default language of the application is still English. All the labels are stored in the application it self as a property file if there are no languages configured these property file will be loaded. On the overview page of the languages is the possibil
HR Assistant – what happened since last year
Fri, Oct 27th 2017 11:12a   Frank van der Linden
Last year I won together with Frédéric Dehédin the ICS Developer Contest 2016 with our HR Assistant application, a cognitive solution to help the HR department with of IBM Watson services. As required the code was open sourced at a public Github repository. What happened with HR Assistant since that moment? From public to closed First thing was to take the code back In the final stage of the development we were not able to include all the features we wanted upfront. So we skipped some featu
Domino Version 10 and Beyond – a few toughts
Thu, Oct 26th 2017 6:52a   Frank van der Linden
Yesterday Inhi Cho Suh announced the strategic partnership between IBM and HCL to move the Notes and Domino Family forward. In 2018 a brand new version, 10, will be released. For lots of customers who have invested in Domino applications it is very good news. Less need to move away to other products. IBM will be organising jams, to define the future of the product. It is a great opportunity to show interest in the product and what you think is most important in the product. Sign up know to kee
IBM Champion nominations 2018 are open
Mon, Oct 23rd 2017 2:27p   Frank van der Linden
It is the time of the year again. Time to thanks your favourite IBM technology expert by nominate them as IBM Champion 2018. More details on this blog post by the Libby Ingrassia, the overall IBM Champion manager, or watch the video below. The deadline to nominate is November 13th, so start nominating today, https://www.ibm.com/developerworks/champion/?ca=dw-_-IBMChampion-_-dwtv-Featured-_-category by The post IBM Champion nominations 2018 are open appeared first on elstar IT.
Spring boot and Thymeleaf – rapid application development
Fri, Oct 20th 2017 6:02p   Frank van der Linden
At one of my customers I was able to use to build an application with preview functionality of a business critical application. As usual the business wants this application as soon as possible. So the obvious choice was Spring boot in combination with Thymeleaf. Spring Boot Spring boot created spring based applications which can run as a runnable jar, with embedded a Tomcat server. But a Spring boot application can with a few tweaks run on a Websphere Application Server or Websphere Liberty Pro
Quick NPM tip: don’t forget to uninstall node modules
Tue, Jul 4th 2017 4:08p   Frank van der Linden
NPM is great tool to have all your Node modules in your front end project, and don’t have to worry about dependencies. When you find a useful module for your project just do ‘npm install –save-dev’ and you are ready to go, but….. it can pollute your node_modules directory with unused node modules. Just uninstall your unused node module by ‘npm uninstall ’ by The post Quick NPM tip: don’t forget to uninstall node modules appeared first on elstar
Angular 4 bug in combination with latest Typescript
Sat, Jul 1st 2017 10:51a   Frank van der Linden
When we upgraded our Angular app to the latest version. We noticed everything worked with version 4.2.3 and Typescript 2.4. The problem After we reinstalled all the nom packages the Angular version was upgraded to 4.2.4, because we had in our package.json ‘^4.2.3’ for Angular packages. When we package everything and republished the app to the page, we got errors, huh!!!! The solution After some search I found it has to do with the combination of Typescript and Angular

Created and Maintained by Yancy Lent - About - Planet Lotus Blog - Advertising - Mobile Edition