This document summarizes Frank van der Linden's presentation on using Notes objects in memory and other Java tips for XPages development. It discusses putting Notes documents in memory using DominoDocument wrappers, building JSON with built-in classes, using the MVC pattern with managed beans, Java date checks and utility classes, unit testing, and finally blocks. It also provides an overview of the presenter and includes links to his social media and website.
How to create a OSGi Servlet that runs on a Domino server using code from another plugin. Extra is a web app servlet which runs on every other Java Server
Top 10 PowerShell Features in Server 2012Thomas Lee
This is from a webcast I did in September 2012 for Idera.
It looks at 10 of the cooler PowerShell V3 features of Server 2012. It is a quick look at some of the cooler features and how you can leverage PowerShell v3.
CrossWorlds is IBM WebSphere Liberty and IBM Domino getting together to provide a huge leap forward for Domino developers and customer. Learn what's being built !!!
How to create a OSGi Servlet that runs on a Domino server using code from another plugin. Extra is a web app servlet which runs on every other Java Server
Top 10 PowerShell Features in Server 2012Thomas Lee
This is from a webcast I did in September 2012 for Idera.
It looks at 10 of the cooler PowerShell V3 features of Server 2012. It is a quick look at some of the cooler features and how you can leverage PowerShell v3.
CrossWorlds is IBM WebSphere Liberty and IBM Domino getting together to provide a huge leap forward for Domino developers and customer. Learn what's being built !!!
Lesson learned during new project base on SOA architecture. Technology used in our project:
- Symfony 2.3
- PHPUnit
- SoapUI
- RabbitMQ
- MySQL (Percona)
- Elasticsearch
- Jenkins
- Memcached
- Nagios
- New Relic
Presentation for Stichting DotNed in 2015:
Microsoft neemt ASP.NET op de schop. Het web applicatie framework uit .NET 1.0 wordt grotendeels herschreven om te voldoen aan de eisen die men tegenwoordig stelt aan het realiseren van een moderne web applicatie. Deze sessie kijken we naar de nieuwe opzet van ASP.NET. We zien hoe Microsoft daarmee een cloud geoptimaliseerd, cross-platform framework creeert, dat zij zelf sneller kunnen laten evolueren door kortere release cycles. Dit alles betekent wel dat ASP.NET anders is geworden. In deze sessie leer je daarom ook wat er is veranderd, hoe je aan de slag gaat en waarom ASP.NET vNext een revolutionaire stap is in Microsoft's framework.
Writing better code: How the Netbeans IDE Helps you Write, Test and Debug Javaidrsolutions
Here is the presentation: Writing better code: How the Netbeans IDE Helps you Write, Test and Debug Java which Georgia Ingham and Sophia Matarazzo presented at Javaone2015
A little presentation about how we squeezed Symfony to implement some sort of SOA
better see here
https://docs.google.com/presentation/d/1TnDjbERj8F6UgqbZ7fJQsAL6yfg5G56G1iTqSzeTUE8/pub?start=false&loop=false&delayms=3000
This is my presentation about CFWheels at CFObjective ANZ, November 2010, Melbourne, Australia.
ColdFusion on Wheels (CFWheels), is an elegant framework inspired by Ruby on Rails.
CrossWorlds: Unleash the Power of Domino for Connections Development LetsConnect
Until now, the only way to surface your Customers’ Domino data in IBM Connections has been via XPages. But over the last year IBM Domino Developers, the Domino landscape and the Java web development landscape have undergone a significant change. See how to use the popular Vaadin framework to create a standard web application on IBM Websphere Liberty using IBM Domino as either a NoSQL or Graph database.
La vita nella corsia di sorpasso; A tutta velocità, XPages!Ulrich Krause
Using XPages out of the box lets you build good looking and well performing applications. However, as XPage applications become bigger and more complex, performance can become an issue and, if it comes to scalability and speed optimization, there are a couple of things to take into consideration. Learn how to use partial refresh and partial execution mode and how to monitor its execution using a JSF LifeCycle monitor to avoid multiple re-calculation of controls. We will show tools that can allow you to profile your code, readily available from OpenNTF, along with a demonstration of how to use them to improve the speed of your code. Still writing SSJS and encounter a significant slow down when using Script Libraries? See, how you can improve the speed of your application using JAVA instead of JS, JSON and even @formulas.
Relatore per la sessione:
Ulrich Krause
Java and in particular OSGi are now very important parts of the Notes/Domino app dev model. In this session, you will learn what techniques can be utilized to process background jobs for XPages applications. Whether you want to replace your existing agents with Domino OSGi Tasklet Services (DOTS) or use Eclipse Jobs to run time-consuming routines without interrupting the use of your application - we will show you real life examples of why and how. You should also consider attending this session to hear about some suprises you don't want to miss...
IBM ConnectED 2015 - BP106 From XPages Hero To OSGi Guru: Taking The Scary Ou...Paul Withers
BP106 From XPages Hero To OSGi Guru: Taking The Scary Out Of Building Extension Libraries. From IBM ConnectED 2015, delivered jointly with Christian Guedemann
DBFlow is ORM library for Android which strives to solve all of our problems with database management. I'll showcase few of its advanced features, and conclude with few examples of its usage.
Lesson learned during new project base on SOA architecture. Technology used in our project:
- Symfony 2.3
- PHPUnit
- SoapUI
- RabbitMQ
- MySQL (Percona)
- Elasticsearch
- Jenkins
- Memcached
- Nagios
- New Relic
Presentation for Stichting DotNed in 2015:
Microsoft neemt ASP.NET op de schop. Het web applicatie framework uit .NET 1.0 wordt grotendeels herschreven om te voldoen aan de eisen die men tegenwoordig stelt aan het realiseren van een moderne web applicatie. Deze sessie kijken we naar de nieuwe opzet van ASP.NET. We zien hoe Microsoft daarmee een cloud geoptimaliseerd, cross-platform framework creeert, dat zij zelf sneller kunnen laten evolueren door kortere release cycles. Dit alles betekent wel dat ASP.NET anders is geworden. In deze sessie leer je daarom ook wat er is veranderd, hoe je aan de slag gaat en waarom ASP.NET vNext een revolutionaire stap is in Microsoft's framework.
Writing better code: How the Netbeans IDE Helps you Write, Test and Debug Javaidrsolutions
Here is the presentation: Writing better code: How the Netbeans IDE Helps you Write, Test and Debug Java which Georgia Ingham and Sophia Matarazzo presented at Javaone2015
A little presentation about how we squeezed Symfony to implement some sort of SOA
better see here
https://docs.google.com/presentation/d/1TnDjbERj8F6UgqbZ7fJQsAL6yfg5G56G1iTqSzeTUE8/pub?start=false&loop=false&delayms=3000
This is my presentation about CFWheels at CFObjective ANZ, November 2010, Melbourne, Australia.
ColdFusion on Wheels (CFWheels), is an elegant framework inspired by Ruby on Rails.
CrossWorlds: Unleash the Power of Domino for Connections Development LetsConnect
Until now, the only way to surface your Customers’ Domino data in IBM Connections has been via XPages. But over the last year IBM Domino Developers, the Domino landscape and the Java web development landscape have undergone a significant change. See how to use the popular Vaadin framework to create a standard web application on IBM Websphere Liberty using IBM Domino as either a NoSQL or Graph database.
La vita nella corsia di sorpasso; A tutta velocità, XPages!Ulrich Krause
Using XPages out of the box lets you build good looking and well performing applications. However, as XPage applications become bigger and more complex, performance can become an issue and, if it comes to scalability and speed optimization, there are a couple of things to take into consideration. Learn how to use partial refresh and partial execution mode and how to monitor its execution using a JSF LifeCycle monitor to avoid multiple re-calculation of controls. We will show tools that can allow you to profile your code, readily available from OpenNTF, along with a demonstration of how to use them to improve the speed of your code. Still writing SSJS and encounter a significant slow down when using Script Libraries? See, how you can improve the speed of your application using JAVA instead of JS, JSON and even @formulas.
Relatore per la sessione:
Ulrich Krause
Java and in particular OSGi are now very important parts of the Notes/Domino app dev model. In this session, you will learn what techniques can be utilized to process background jobs for XPages applications. Whether you want to replace your existing agents with Domino OSGi Tasklet Services (DOTS) or use Eclipse Jobs to run time-consuming routines without interrupting the use of your application - we will show you real life examples of why and how. You should also consider attending this session to hear about some suprises you don't want to miss...
IBM ConnectED 2015 - BP106 From XPages Hero To OSGi Guru: Taking The Scary Ou...Paul Withers
BP106 From XPages Hero To OSGi Guru: Taking The Scary Out Of Building Extension Libraries. From IBM ConnectED 2015, delivered jointly with Christian Guedemann
DBFlow is ORM library for Android which strives to solve all of our problems with database management. I'll showcase few of its advanced features, and conclude with few examples of its usage.
The future of web development write once, run everywhere with angular.js and ...Mark Roden
This slide deck was used in support of BTE 102 - The future of web development write once, run everywhere with angular.js and domino at IBMConnectED 2015
Presentation was given with Mark Leusink
Beans and Java! We hear those buzz words all the time, but our XPages applications seem to work fine with Server Side JavaScript. Why should we use Java and managed beans? Come learn about one long-time Notes developer's journey using a Java Managed Bean and why. Discover how a Bean allowed the data to be cached in memory allowing for quick access to user-selected data subsets. Learn how different Java collections like HashMaps, ArrayLists and TreeSets can be used to build in-memory objects of your data. See how using a Managed Bean can simplify and greatly speed up your XPage! A comparison will be made of the performance savings before and after the implementation of the Managed Bean. Come get gently led down the path to the pot of Java waiting at the end of the rainbow!
Click here to download the sample application used in the webinar: http://www.tlcc.com/admin/tlccsite.nsf/pages/feb-java-webinar?opendocument
Java is an important skill to have as an XPages developer. This webinar will provide a foundation of the Java skills you need and explain how to best acquire them. Come see how Java is used with detailed code examples that demonstrate how to use core Java code, Java Beans, Managed Beans, and third party Java libraries in your applications. After this webinar you will know exactly how to add Java as a tool in your development toolbox.
Magnitia Selenium training course will help you to gain an in-depth knowledge on every concept such as WebDriver, Core java,Selenium Grid, XPath, DOM, TestNG, POM, Github, Maven, Jenkins, AutoIt, Sikuli, JDBC, SQL, Data Driven Testing and Katalon Studio. Our Selenium training with real-time examples will prepare you to utilize Selenium WebDriver effectively.
Magnitia Selenium training course will help you to gain an in-depth knowledge on every concept such as WebDriver, Core java,Selenium Grid, XPath, DOM, TestNG, POM, Github, Maven, Jenkins, AutoIt, Sikuli, JDBC, SQL, Data Driven Testing and Katalon Studio. Our Selenium training with real-time examples will prepare you to utilize Selenium WebDriver effectively.
My presentation from the PHP Matsuri 2011 conference. This presentation discusses the changes in CakePHP 2.0 and goes into more detail on some of the cooler features that PHP 5 allows us, and some of the internal restructuring.
Magnitia Software Testing Tools Training program will help you to becoming an expert automation test engineer with a focus on software development and quality assurance. In this course you will learn Manual Testing + Jira + Selenium Automation using WebDriver, Java + Frameworks + Cucumber + SQL.
Aspirants who are interested can attend our Software Testing training in Hyderabad, or you can take our testing tools online training.
Revanth Technologies provides best Java online training with real time experts. We provide Java online training with real time scenarios. We provide online training for individual and as well as group trainings as well.
Please call to 9290971883, 9247461324 or drop a mail to revanthonlinetraining@gmail.com
Revanth Technologies which is a high profiled Java and J2EE online training institute in India offers online training with real time experts and with real time concepts.
In this webinar, Dave Haeffner (Elemental Selenium, USA) discusses how to:
- Build an integrated feedback loop to automate test runs and find issues fast
- Setup your own infrastructure or connect to a cloud provider
-Dramatically improve test times with parallelization
https://huddle.eurostarsoftwaretesting.com/resource/webinar/use-selenium-successfully/
How Class Data Sharing Can Speed up Your Jakarta EE Application StartupRudy De Busscher
Java Byte code is OS independent, which means that your application's startup takes more time than a native image. Using the Class Data Sharing functionality introduced in more recent versions of the JVM, you can prepare your application so that it will load very fast.
In this presentation, I'll go into more detail what Class Data Sharing is and the differences between the OpenJDK and OpenJ9 versions. With some Jakarta EE demo applications, you will see gains that you can achieve and reduce memory footprint a lot in Docker containers by sharing memory.
Sauce Labs hosted a Selenium bootcamp webinar with guest speaker Dave Haeffner. This presentation will give you a basis for the detail given in Dave's like titled E-book and get you started with Selenium.
Similar to Bccon use notes objects in memory and other useful (20)
At Engage 2019 I did a session about a not so objective view on frontend development, where I compared the big 3 frontend technologies: Angular, ReactJs and VueJS.
Now it's 2024: Let me explain my latest view on these frameworks.
Is Angular still my preferred frontend technology?
Are there new kids on the block?
Let's discuss the good, bad and the ugly of each frontend technology.
Engage 2020: Hello are you listening, There is stream for everythingFrank van der Linden
The world is changing in a event driven world
Event driven architecture is not a new technology. IBM MQ is already 25 years old.
The popularity is increasing, because it is a robust, decoupled way to exchange data.
Today there are new popular 'new kids on the block'. Kafka is one of them and gets lots of attention also in the enterprise.
The principle however are still the same, called Pub Sub principle.
HCL will add to the App Dev pack the possibility to consume and produce to a broker/stream.
There are frameworks who helps you to focus on the business logic.
In this session I will explain this principle and show you that is not that difficult to make use of it. Connect your existing code to a service bus or queue, producing and consuming.
Today almost every product has an API, to integrate in other products or to made the data available to the outside world. Most API’s are using traditional patterns and technology. With the rise of Angular, React and other modern frameworks there is a need for non blocking API’s. Meet Reactive streams, like Spring Webflux, to super charge your API.
In this session I will tell about and show you Reactive API’s and more
NCUG 2019: Spring forward: an introduction to Spring boot and Thymeleaf for (...Frank van der Linden
The world of (XPages) developer is moving fast. Customers rethinking platforms and solutions. Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can "just run". In combination with Thymeleaf can it be good alternative for your XPages applications.
In this session I give an introduction of Spring Boot and Thymeleaf and how to get started. I will show the differences and similarities between Spring Boot in combination with Thymeleaf and XPages.
I will explain the challenges I faced when moving an application.
Engage 2019: The good, the bad and the ugly: a not so objective view on front...Frank van der Linden
In the front end development world there are 3 dominant players, Angular, ReactJS and VueJs.
Every framework has a strong fan base. And of course lots of pros and cons The best way to learn more about the strengths and weaknesses of the frameworks, I have build the same application with all these frameworks. In this session I will explain my experience with each framework and try to highlight the good the bad and the ugly. Expect to see code
The demo application can be found on GitHub, https://github.com/flinden68/my-events-demo-application
Icon UK 2018 - Spring forward: an introduction to Spring boot and Thymeleaf f...Frank van der Linden
The world of (XPages) developer is moving fast. Customers rethinking platforms and solutions. Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can "just run". In combination with Thymeleaf can it be good alternative for your XPages applications.
In this session I give an introduction of Spring Boot and Thymeleaf and how to get started. I will show the differences and similarities between Spring Boot in combination with Thymeleaf and XPages.
I will explain the challenges I faced when moving an application.
DEV-1129 How Watson, Bluemix, Cloudant, and XPages Can Work Together In A Rea...Frank van der Linden
The role of a human resources employee can be hard work when it comes to filtering hundreds or thousands of job applications. Often, the cover letters are submitted in unstructured formats, making data organization and identification of interesting job applications difficult. In this session, we will share a look behind the scenes of the award-winning HR Assistant application, which uses a combination of IBM Bluemix, Watson and a Cloudant database to improve the recruitment process. See how we integrate these different technologies and display the content graphically using XPages, along with how the development progressed and the challenges we faced.
Bccon use notes objects in memory and other useful
1. Use Notes objects in memory and
other useful Java tips for XPages
development
Frank van der Linden
2. Me
• Java/XPages/Web/Domino developer
• Self employed at elstar IT
• OpenNTF director
• Speak at several national and international
events
• IBM Champion 2013 and 2014
• Live in the Netherlands
• Work everywhere
@flinden68
http://nl.linkedin.com/in/flinden68
flinden68@elstarit.nl
http://www.elstarit.nl
3. Disclaimer
All the code and the demos in this session will use the Java Notes
Objects which are part of the IBM/Lotus Notes product.
For a modern way of Java coding with Notes Objects please use the
OpenNTF Domino API.
Or even better use OpenNTF essentials
4. Roadmap
• Notes objects in memory
• Use of JSON
• MVC/Managed beans
• Java tip for XPages
• Date checks
• Utility class
• Extending classes
• Unit test
• Finally
• Some bonus code
6. Bad practice
• Notes objects are not serializable
• Will not recycled the Java way, it will keep a pointer to the C object
• Can cause out of memory
23. The requirements
• Needs to be Serializable
• At least one constructor without parameters
• Needs to be registrated in the Faces-config.xml
• Properties are private
• And have Getters and Setters
24. Faces-config.xml syntax
• In package-explorer, under WebContent WEB-INF
• Name of the bean
• Full qualified class name
• Scope of the bean
• Optional, initialize properties
25. Use the managed beans
• Do the calculation in the class
• Use Expression Language to access properties
• Minimize use of SSJS
• Some examples
31. Unit test
• Write code to test small portions of code, like methods
• Test if the code is doing what was intended
• Write better Java code
• Use Mock Framework, like EasyMock or Mockito, to simulate objects
32. Unit test for XPages
• More and more Java code in XPages development
• Write Unit test for better code
• On OpenNTF Junit test for Xpages project (thanks Christian Guedemann)
33. And Finally
• Finally will always called, even after a catch
• Use it to recycle objects and close stream readers
34. Thank you
@flinden68
http://nl.linkedin.com/in/flinden68
http://www.elstarit.nl
flinden68@elstarit.nl
https://bitbucket.org/flinden68/bccon-java-demo/src